RGBWW WLAN LED Dimmer mit H801 (ESP8266) Im Internet gibt bekommt man unter der Bezeichnung H801 WLAN LED Dimmer kostengünstiges Modul, dass über WLAN angesteuert werden kann. Eigenschaften H801: 5 Kanäle WLAN ist über den ESP8266 integriert 5-24V Betriebsspannung ca. 8-12 bei Ali Express; ca. 15 bei ebay Links mit Informationen: http://www.schatenseite.de/2016/05/17/lichtsteuerung-mit-esp8266-und-mqtt/ https://de.aliexpress.com/wholesale?catid=0&initiative_id=sb_20170224090935&searchtext=h801+wlan+dimmer Ich selber habe mich erst ein wenig mit der mitgelieferten Firmware auf dem ESP8266 beschäftigt. Da diese aber über Hex-Werte angesteuert wird, bin ich recht schnell zu dem Schluss gekommen, dass ich diese ersetzen muss. Da ich bereits einige Erfahrung mit dem ESP8266 bei anderen Projekten gemacht hatte viel mir das nicht allzu schwer. Was benötigt ihr? 1. 2. 3. 4. 5. Pin-Header um diesen auf der Platine aufzulöten (siehe auch das oben verlinkte Video) Einen USB auf Serial Konverter ( ich selber habe diesen hier: https://www.exp-tech.de/catalogsearch/result/?q=exp- R11-055) Arduino IDE ( https://www.arduino.cc/en/main/software) - Ich verwende die Version 1.66 ESP8266 Core Bibliotheken ( https://github.com/esp8266/arduino) ESP8266 FS (File System) Erweiterung ( https://github.com/esp8266/arduino-esp8266fs-plugin/ ) Eine kurze Anleitung: Hier die Einstellungen, die ich in der Arduino IDE eingestellt habe. Besonders zu achten ist auf "Flash Size". Das Modul hat "nur" einen Speicher von 1MB. Wenn ihr mehr einstellt, wird es nicht funktionieren.
Beim ersten Flashen müsst ihr über die serielle Schnittstelle (im Bild unten blau) gehen. Später könnt ihr auch "over the air" flashen. Um den ESP in den Flashmodus zu bekommen müsst ihr die Kontakte (im Bild unten rot) verbinden und dann die Stromversorgung anschließen. Kurz nachdem die ihr die Spannung angelegt habt, könnt ihr die Brücke wieder entfernen. Ihr könnt den H801 entweder über die grünen Anschlüsse mit 5-24 V versorgen oder ihr gebt im über die serielle Schnittstelle 3,3V (Achtung der USB hat 5V).
Wenn der ESP8266 im Flashmodus ist, könnt ihr die neue Software drauf spielen. Achtet dabei darauf, dass in der Arduino IDE unter Werkzeuge /Port der richtige Port ausgewählt ist an dem auch euer USB auf Seriell Konverter angeschlossen ist. Die Software besteht aus 2 Konponenten 1. Ein paar Dateien im Sketchverzeichnis (Data) - Die Erklärung der Dateien erfolgt weiter unten 2. Der Software = alle anderen Dateien (Die Software ist sicher nicht perfekt und man kann einiges sicher professioneller gestalten. Aber sie tut was sie soll. Wer möchte darf gerne weiter entwickeln) Ihr müsst natürlich erst den Sketch in der Arduino IDE laden. Es macht Sinn zunächst die Dateien auf den ESP8266 zu laden. Da hier die Zugangsdaten für den Access-Point drin sind und er sonst einen eigenen Access-Point auf macht, wenn er sich nicht einwählen kann. Das macht ihr über den Menüpunkt "Werkzeuge/ESP8266 Sketch Data Upload". ACHTUNG hierbei darf der serielle Monitor NICHT eingeschaltet sein. Nachdem die Dateien drauf sind, am besten den H801 noch mal stromlos machen und neu booten (denkt daran die rot markierten Kontakte zu schließen, sonst startet der H801 nicht im Flashmodus). Danach kann dann die eigentliche Software geflasht werden. Das funktioniert über "Sketch/ Hochladen". Danach startet der ESP neu. Die "rot" Bücke sollte jetzt nicht mehr drauf sein. Wenn doch, macht das auch nichts. Ihr müsst sie nur entfernen und dann noch mal die Spannung neu anlegen. Am besten beobachtet man jetzt über den seriellen Monitor, ob alles richtig funktioniert. Hier gebe ich einige Ausgaben aus. Z.B. ob er sich im den angegebenen Access-Point eingewählt hat. Ab jetzt könnt ihr des ESP8266 auch über WLAN flashen. Dazu muss zum einen die "rote" Brücke nicht geschlossen werden, zum anderen muss unter "Werkzeuge/Port" der virtuelle Port eingestellt werden. Wenn dieser nicht direkt angezeigt wird, einfach mal die IDE neu starten. Was ist sonst noch wichtig zu wissen:
Wenn sich der ESP8266 nicht in den angegebenen Access-Point einwählen kann, öffnet er seinen eigenen Access-Point. Hier kann man sich dann über die im Sketch angegebenen Daten einwählen. Im Hintergrund sucht er allerdings weiter nach dem richtigen Access- Point. Wenn er diesen findet, macht er einen Soft-Reset. Das verfahren hat sich bei mir bewährt. Ich vergebe bei mir im Access-Point eine statische IP-Adresse für den H801. Ihr könnt den Sketch sicher auch so umbauen, dass er sich selbst eine IP-Adresse vergibt. Habe das bei mir nie gemacht. Auch mit einer dynamischen IP-Adresse habe ich keine Erfahrungen gemacht. Hier müsstet ihr dann über den DNS Namen gehen. Wie kann der H801 angesteuert werden? Schalten der Farbkanäle mit: http://[ip-adresse]/ledcontrol?rgb=[bbbgggrrr]&w1=[www]&w2=[www] bbb - Wert von 0-100 für blau rrr - Wert von 0-100 für blau ggg - Wert von 0-100 für blau www - Wert von 0-100 für weis Kanal 1 und Kanal 2 Die Parameter 'rgb', 'w1' und 'w2' sind optional und können einzeln oder in Kombination verwendet werden Beispiele http://192.168.2.54/ledcontrol?rgb=092100033 http://192.168.2.54/ledcontrol?w1=42&w2=82 Ändern und speichern der Dämpfung für die Wechselgeschwindigkeit: http://[ip-adresse]/setdaempfung?daempfung=[0-n] http://192.168.2.48/setdaempfung?daempfung=10 Sinnvolle Werte sind etwa zwischen 1 und 20 Ändern von Werten: http://[ip-adresse]/set?hostname=[hostname] z.b.: http://[ip-adresse]/set?hostname=rgbww-controller Abrufen des aktuellen Status: http://[ip-adresse]/status Restart per Software: http://[ip-adresse]/restart Diese Hilfeseite aufrufen http://[ip-adresse]/help Beschreibung der Dateien im Ordner "Data": cl_conf.txt Hier stehen die Zugangsdaten für den Access-Point drin in den sich der H801 einwählen soll. In der ersten Zeile steht die SSID (nichts davon und nichts dahinter) In der zweiten Zeile steht das Passwort (nichts davon und nichts dahinter) Die Werte können aktuell nicht per HTTP Befehl geändert werden. cl_name.txt Hier steht NUR der Name drin unter dem der H801 im Netzwerk registriert wird. Auch in der Arduino IDE wird er unter Port unter diesem Namen geführt. daempfung.txt Hier steht der Wert drin, der die Wechselgeschwindigkeit bei Änderung der 5 Kanäle verwendet wird. Wie in der Loxone Software HTTP-Befehle abgesetzt werden beschreibe ich hier nicht. Dazu gibt es bereits genügend Anleitungen. Wer möchte darf hier gerne weiter entwickeln und die neuen Versionen hier ablegen. Wer möchte darf die Anleitung auch gerne vervollständigen und optimieren.
Alternativer Code: Ein "einfacherer" Code findet sich hier [ 1]: sourceforge.net H801 Nachteil: Vorteile: nur DHCP WLAN Passwort im Code 1000Hz PWM Frequenz 5000 Abstufungen (ca. 12bit) UDP Ansteuerung schlanker Code WiFiManager wird verwendet OTA Update ist möglich Verwandte Artikel Seite: LED Panels Seite: LED Spots Seite: Umweltdatensensor mit dem NodeMCU ESP8266 Seite: KNX RGBW über eine Gruppenadresse Seite: Dimmer Übersicht