Betriebssystem installieren
Der erste Schritt zur Allsky Software ist die Installation des Betriebssystems auf dem Raspberry Pi. Dazu wird am PC eine SD-Karte vorbereitet, die dann in den Raspberry Pi gesteckt wird und los gehts… Die einzelnen Schritte können auf diesem Video (in Englisch) nachvollzogen werden. Zur Installation des Betriebssystems empfiehlt es sich, den Raspberry Pi aus der Kamera zu nehmen und an einem Bildschirm + Tastatur anzuschließen. Damit hat man dann auch Zugriff, falls die WLAN- oder Ethernetverbindung nicht funktionieren. Ich habe mich für die Raspberry Pi OS _Lite Betriebssystemvariante entschieden. Die bietet zwar keinen Desktop, benötigt dafür aber deutlich weniger Platz auf der SD-Karte. Wenn die Kamera einmal installiert ist, wird sie über ein Web-UI mit dem Browser gesteuert. Dazu wird dann kein Desktop mehr benötigt. Ich habe bei der Installation einen Zugang über SSH eingerichtet. Über ein Netzwerkterminal kann ich so direkt auf den Raspberry via Kommandozeile zugreifen. Das nutze ich, um die Allsky Software zu installieren und jetzt auch zur Wartung. Meine erste Installation habe ich Anfang November 2023 gemacht. Bei der Installation der Allsky Software war der Raspberry Pi über WLAN mit dem Internet verbunden. Das führte dazu, dass manche Python Module nicht richtig installiert wurden. Sofern die Module nicht bereits auf dem Raspberry Pi mit dem Betriebssystem installiert waren oder in der falschen Version vorlagen, werden diese bei der Installation der Allsky Software aus dem Internet heruntergeladen. Bei der WLAN-Verbindung kam es dabei immer wieder zu Abbrüchen. In der Folge lief die Software recht instabil und ich habe viel Zeit darauf verschwendet, die Software zu reparieren. Besser ist es, bei der Installation, den Raspberry via Ethernetkabel anzuschließen. Das geht auch viel schneller und lief dann ohne Probleme.
Die erste Installation habe ich mit einer 16 GByte SD-Karte gemacht, die ich noch vorrätig hatte. Für einen zweiten Installationsversuch habe ich mir eine schnelle 32 MByte SD-Karte besorgt (siehe Teileliste). Das ist die größte SD-Karte, die man mit dem Raspberry Pi 3B verwenden kann. Im Betrieb werden täglich megabyteweise Bilder erzeugt, sodass sich eine große SD-Karte lohnt.
Plötzlich wird alles Magenta...
Während nach der ersten Installation die Bilder wie erwartet einen neutralen, grauen Farbton hatten, bekamen die Bilder nach der zweiten Installation einen Farbstich in Richtung Magenta. Beim Tag Nacht Übergang färbten sie sich zuerst grün, dann Magenta, wie das folgende Video zeigt:
Das kam sehr überraschend. Ich habe sehr lange nach der Ursache gesucht. Erstmal alle Kabel und Steckverbindungen überprüft. Sogar eine neue Kamera gekauft (die ich dann wieder zurückgesandt habe). Letztlich blieb nur der automatische Weißabgleich im Raspberry Pi übrig. Dabei habe ich viel über die Bild- und Videoverarbeitungspipline des Raspberry Pi gelernt. Für Interessierte, empfehle ich die Lektüre des raspberry-pi-camera-guide.pdf. Die Allsky Software benutzt ein Programm namens libcamera, um Bilder mit dem Raspberry Pi aufzunehmen. Das Programm ist bereits im Betriebssystem-Image enthalten. Im raspberry-pi-camera-guide.pdf (in Englisch) sind seine genaue Funktionsweise und die verwendeten Algorithmen beschrieben. Für den automatischen Weißabgleich (engl. AWB Automatic White Balance) sind zwei Algorithmen implementiert:
- Bayesian – komplex, versucht bestimmte Farbtemperaturen zu erzielen.
- Gray World – einfach, versucht das beste Grauwertbild zu erzielen.
Für Nachtaufnahmen reicht der einfache Algorithmus (Graue Welt) aus. Wie sehr ich mich auch bemüht habe, ich konnte diesen Algorithmus nicht aktivieren, es wurde immer der Bayesian Algorithmus verwendet.
Dann habe ich die beiden Versionen von libcamera (erste Installation und zweite Installation) verglichen. Und tatsächlich…, es gab Unterschiede. Vermutlich wurde die Implementation ausgetauscht. Daraufhin habe ich versucht, auf das alte Betriebssystem der ersten Installation zu downgraden. Auf dieser Webseite kann man das alte Image 2023-05-03-raspios-bullseye-armhf-lite.img.xz herunterladen und mit dem Raspberry Pi Imager auf eine SD-Karte brennen. Nach dem Downgrade funktionierte die Kamera wieder wie gewohnt.