problem:
als frisch gebackener grundschulimker erzählte ich vergangenes schuljahr bei jeder gelegenheit von der bienenwaage. konnte bisher aber nur auf den hiveeyes-link verweisen. leute ohne tragbares, internetverbundenes gerät konnten damit wenig anfangen.
hier fehlte eindeutig eine benutzerschnittstelle!
lösung:
vorort-anzeigeterminal für die bienenwaage zum aufstellen direkt am bienenstand - hergestellt aus altem monitor mit raspberry pi zero.
(für mehr bilder auch aus dem innenleben des anzeigeschränkchens: bild verlinkt zur gallery).
bastelbericht:
installation auf der mikro-sd via rpi-imager
monitor anschließen, pi und monitor mit strom versorgen, zur konfiguration maus und tastatur anschließen (dafür ist eine usb-hub hilfreich: micro-usb auf mehrfach usb. der zero hat nur einen freien micro-usb-anschluss).
als erstes die monitoreinstellungen, hochkant ein und energiespar aus via raspberry pi os screen config:
screen orientiation: left (1024x1280)
screen blanking aus
hauptproblem: auf dem raspi zero gehen firefox und chrome gar nicht!
einziger hiveeyes-tauglicher browser, der auch auf dem zero hochkommt: midori
sudo apt install midori x11-apps xdotool unclutter
midori mit vollbild grafana-desktop einrichten:
einen maßgeschneiderten hiveeyes-desktop im grafana-kiosk-mode (d.h. ohne den grafana-toolbar links) zusammenstellen. damit der dann automatisch ohne weitere eingaben nach dem power-on dargestellt wird:
in den midori-einstellungen:
hiveeyes-kiosk als startseite
browser mit startseite starten
midori in den autostart:
edit /etc/xdg/autostart/midori.desktop
[Desktop Entry]
Type=Application
Name=Midori
Comment=Midori Webbrowser per Shellskript starten
NoDisplay=false
Exec=/bin/bash /home/kux/startMidori.sh &
dieser autostart-eintrag führt beim systemstart startMidori.sh
aus:
#!/bin/bash
midori &
sleep 20
window_id=$(xdotool search --onlyvisible midori)
xdotool windowactivate --sync $window_id key F11 # midori in fullscreen schalten
unclutter & # mauspfeil verstecken
[danke wiki LeRalf]
push-button(s) zum sauber runterfahren
zwei mal zwei steckkontakte auf die entsprechenden pinouts aufgelötet:
pin21+gnd,
pin3+gnd
zur verbindung mit je einem push-button
in der /boot/config.txt
eintragen:
# added manually, 200230709, mois:
dtoverlay=gpio-shutdown,gpio_pin=3,active_low=1,gpio_pull=off # shutdown, bootup
dtoverlay=gpio-shutdown,gpio_pin=21 # kann nur shutdown
(...) — Raspberry pi powerdown and powerup button
Raspberry Pi über GPIO-Eingang herunterfahren
pi 3 - Raspberry Pi 3 model B "dtoverlay=gpio-shutdown" - Raspberry Pi Stack Exchange
change/add wifi-network via ssh:
sudo raspi-config
oder
via wpa_supplicant
Changing Wifi networks from the command line interface - Raspberry Pi Forums
Raspberry Pi OS: WLAN konfigurieren
How To Configure WiFi on Raspberry Pi: Step By Step Tutorial - Latest Open Tech From Seeed
wpa_supplicant.conf
, abspeichern in /boot:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=DE
network={
ssid="ssid"
psk="password"
scan_ssid=1
}
bonus: fensterbasierte programme entfernt starten und temperaturkontrolle
da der b-screen keine maus und keine tastatur hat und direkt in die graphische oberfläche bootet, kann es hilfreich sein, per ssh dort graphische programme laufen UND anzeigen lassen:
ssh -X [username]@[hostname]
abgekürzt in .ssh/config
Host b-screen-x
User [username]
HostName [hostname]
ForwardX11 yes
IdentityFile [path-to-private-key]
(public-key in die authorized_keys
auf dem b-screen nicht vergessen)
wichtig: damit es wie vorgesehen funktioniert, noch in der .bashrc
auf dem b-screen eintragen:
export DISPLAY=:0 # ohne läuft xeyes zwar remote, wird aber lokal angezeigt
alias temp="vcgencmd measure_temp" # raspi-temperatur anzeigen
(mehr erklärung zu export DISPLAY=:0)
und weiter??
auf die idee gekommen bin ich durch das “Grafana Chart Magic Mirror Module”. tatsächlich wäre ein magic mirror jetzt noch die coole ausbauform: lass dein lieblings-hiveeyes-panel in deinem badezimmerspiegel anzeigen. das entsprechende einweg-spiegelglas gibts hier und hier und hier.