Projekt Morgenmuffel Teil 2 - Lichtspiele oder der falsche Sonnenaufgang

Wie schon im ersten Teil geschrieben gibt es mit der Lichtkomponente so einige technische Einschränkungen. Die aktuellen Mi-Light Empfänger können, so zumindest mein aktueller Stand, die weissen und die RGB LED nicht parallel leuchten lassen. Das erscheint im ersten Moment nicht weiter problematisch, sieht aber in der Praxis sehr unschön aus da ein flüssiges Faden von Rot über Orange, Gelb zu Weiß nicht ohne Sprung möglich ist. Da die LED in einem LED Band auch nicht direkt nebeneinander liegen kann von einem harmonischen Übergang keine Rede sein. Wer also ein weiches Überblenden möchte der sollte sich von vornherein auf die Verwendung von 2 LED Bändern einstellen. Dabei reicht es natürlich 1 RGB und 1 weißes Band zu verwenden. Ich experimentiere derzeit noch mit einem werde aber wohl noch ein 2. Band verlegen.

Ein weiteres Manko ist die Memory Funktion der Controller. Diese behalten jeweils die letzte Einstellung bei. Dies führt dann unweigerlich dazu, dass beim nächsten Weckvorgang vorerst mit der letzten Leuchteinstellung gestartet wird. Die Helligkeit oder Farbe lässt sich leider erst NACH dem Einschalten festlegen also muss man sicherstellen, dass die Leuchten vor dem nächsten Weckprozess einmal auf die Startposition des Sonnenaufgangs zurückgesetzt werden. Meine momentane Variante sieht vor das Licht nach dem Weckprozess nach 10 Minuten automatisch auf die Startposition zu stellen und dann das Licht abzuschalten.

Zur Steuerung gibt es verschiedene Ansätze die eigentlich alle gleich gut funktionieren.
Momentan benutze ich von IQJAR die binaries:

http://iqjar.com/jar/home-automation-using-the-raspberry-pi-to-control-the-lights-in-your-home-over-wi-fi/

Es ist aber auch recht einfach mit Python möglich, wie auf  http://www.limitlessled.com/dev/
beschrieben. Dort siehe Example of Python code #1 und Example of Python code #2.

Beide Varianten haben allerdings ein Problem, sie erlauben lediglich eine Helligkeitseinstellung
von 0x02 to 0x1B, das sind leider sehr sichtbare Sprünge.
Auch nach dem Blog von Henryk Plötz  https://hackaday.io/project/5888-reverse-engineering-the-milight-on-air-protocol
finden die Helligkeitssprünge in 0x08 Schritten statt. Damit sind leider nur 19 Stufen möglich.

Am Beispiel der IQJAR Kommandozeilen Funktion sieht das so aus:

Erst einmal muss man die Binaries auf den Raspberry bekommen, ich pfeife wie immer auf die Linux Konventionen und installiere das schlichtweg unter /home/pi:

 wget http://iqjar.com/download/jar/milight/milight_binaries.zip 

anschliessend entpacken:

 sudo unzip milight_binaries.zip 

Die IP des Mi-light Controllers in in /milight_binaries/milight.conf (erste Zeile) anpassen:

sudo pico milight.conf

Wenn fertig wieder raus mit Strg-o / Strg-x und dann kann man anschliessend in /milight_binaries das Programm milight ausführen:

für Zone 0 Weiß auf Helligkeit 1 sieht das dann so aus:

sudo /home/pi/milight_binaries/milight 0 ON
sudo /home/pi/milight_binaries/milight 0 W
sudo /home/pi/milight_binaries/milight 0 B 1


B 19 wäre dann die hellste Stufe.

Anschließend kann man das natürlich alles in ein Shellscript verpacken und mittels Cronjob ausführen lassen. Dazu lass ich mich dann im 3. Teil aus.
 







Comments

Popular posts from this blog

OSDYLS - Open Source DIY Lasertag System #7 IR communication

OSDYLS - Open Source DIY Lasertag System #6 testing all components with the S2 mini