Fnordlichtmini-Ansteuerung

Was kann man an einem verschneiten Ostersonntag sinnvolles machen? Richtig; Programmieren! Nachdem sich mittlerweile 6 Fnordlichtmini an meiner Wand befinden (ich berichtete) und ich die Anzahl für ausreichend befunden habe musste nun noch die Ansteuerung umgesetzt werden. Dafür werden die einzelne Lichter mit einem Flachbandkabel verbunden, über das ein serielles Protokoll gesprochen wird.

Angeschlossen ist das Ganze dann mittels Pegelwandler und FTDI-Adapter an meinen FreeBSD-Server, auf dem ein Python-Skript läuft, das die Ansteuerung übernimmt. Um die Farben einzelner oder aller Lichter zu ändern muss das Skript Kommandos über die serielle Schnittstelle absetzen. Damit es auch weiß, welche Farbe ich gerne hätte, stellt es über einen BaseHTTPServer ein Webinterface zur Verfügung. Dafür habe ich eine kleine Web-App zusammengeknuppert, die auf dem iPad jetzt fast wie eine richtige App aussieht und logischerweise nur erreichbar ist, wenn man im lokalen WLAN eingebucht ist. Kommuniziert wird über einfache HTTP-GET-Kommandos. Die Buttons haben verschiedene URLs hinterlegt, die beim Aufruf eine Aktion triggern. Der folgende URL z.B. führt dazu, dass ein schickes Blau eingestellt wird:

http://192.168.0.1:8001/FixedColor/0022ff

Die Programme sind im Moment noch rudimentär und die Ansteuerung funktioniert nicht 100% zuverlässig aber es ist auf jeden Fall schon gut benutzbar. Irgendwas mit der seriellen Schnittstelle verhält sich noch eigenartig.

Den Code habe ich auf GitHub hochgeladen. In Aktion sieht das Ganze dann ungefähr so aus: