Hallo ich habe meiner Intex RGB-Poollampe einen Nodemcu spendiert...
Vorher dem Umbau taugt die Lampe nicht wirklich viel.
Steuerung über Zeitschaltuhr nicht möglich, da man immer manuell über Taster einschalten muss,
kein App / Wlan Anbindung...
Also habe ich der Lampe einen Nodemcu verbaut und überwache damit die Tasten an der Lampe, sowie kann auch über den Nodemcu Tastendrücke "simulieren".
Desweitern wurde in der Software natürlich ein Webinterface sowie Mqtt integriert.
Somit ist das Einbinden ins Smarthome kein Problem mehr. Unter Homeassistant wird die Lampe auch als neues Gerät unter MQTT erkannt.
In der Lampe sitzt ein sn8f570210sg (8051-based Microcontroller)
dieser läuft mit 3.3V und die beiden Taster haben jeweils einen 4,7kOhm Pullup-Widerstand.
Eigentlich hätte für den Umbau auch ein Wemos oder ESP-01 gereicht, weil nur 2 GPIO's nötig sind, aber ich wollte den 3.3V Spannungsregler der Lampe nicht noch zusätzlich belasten. Also habe ich mich für einen Nodemcu entschieden, da er wunderbar mit der 12V Spannung des Netzteils der Lampe klar kommt.
Das Video ist nicht so toll, aber zur Veranschaulichung reicht es denke ich... g Das Video zeigt noch die erste Version der Software. Das Webinterface hat sich etwas verändert mit neuen Funktionen,...
Die Lampe flackert beim umschalten, weil man über den Taster immer nur zum nächsten Programm/Farbe springen kann.
Flashen
Wenn Ihr den Sourcecode direkt über Arduino flashen wollt, bitte Flashsize 4MB (2MB Ota, OTA ~1019KB) unter Flashsize auswählen.
Wenn Du über das Flash Download Tool von Espressif Systems flashst müssen folgende Adressen angegeben werden :
PoollampeHA.bin @ 0x000000
littlefs.bin @ 0x200000
Erster Start
Nach dem Flashen, erstellt der ESP einen AccessPoint mit dem Namen "Poollampe" das Kennwort lautet "12345678"
Das Webinterface ist dann unter der Adresse http://192.168.4.1 erreichbar.
Nun sollte erstmal die Grundkonfiguration durchgeführt werden. Lasst MQTT am besten erstmal aus....
Die Grundkonfiguration machen wir folgt :
Einstellungen => Farben konfigurieren
Die Lampe sollte nach dem einschalten "Aus" sein. Unter Einstellungen => Farben konfigurieren, kann die Reihenfolge der Farben festgelegt werden.
Wenn man nun 1x die Taste an der Lampe für die Innenfarbe drückt, wechselt die Lampe auf die Farbe "Farbwechsel".
drückt man nun nochmal die Taste, geht die Lampe wieder aus.
Nach einem erneuten Tastendruck hat man die Farbe Weiß.
Diese Reihenfolge muss unter Innen 1 - Innen 4 in den Einstellungen angegeben werden. In diesem Beispiel also :
Innen 1 : Aus
Innen 2: Farbwechsel
Innen 3: Aus
Innen 4: Weiß
Das gleiche wiederholt man nun für die Aussenfarbe.
Nun kann man kontrollieren, ob über das Webinterface die richtige Farbe angesteuert wird. Als nächstes kontrolliert nochmal auch beim drücken der Tasten an der Lampe, die richtige Farbe im Webinterface angezeigt wird.
Einstellungen => GPIO
Solltet Ihr die Tasten vertauscht haben, kann die Belegung der GPIOs / Tasten unter "Einstellungen" => "GPIO" angepasst werden. Dort kann auch eingestellt werden in welchem Abstand die Informationen per MQTT übertragen werden. (Temperatursensoren & WiFi Informationen)
Einstellungen => DS18B20 Sensoren
Dort kann der Name der Sensoren angepasst werden. Es können bis zu 20 Sensoren angeschlossen werden. Der GPIO kann über Einstellungen / GPIO angepasst werden. Bei jedem Start des ESP wird nach DS18B20 Sensoren gesucht, diese werden im Filesystem in die Datei "sensor_data.json" gespeichert. Alte Sensoren die bei einem Neustart nicht angeschlossen sind, werden aus der Datei entfernt. Sollte ein neuer Sensor hinzukommen, wird dieser in die Datei eingetragen. Sollte es mal zu Problemen mit den Sensoren kommen, kann es hilfreich sein, die Datei über den Filebrowser zu löschen und durch einen Reboot neu erstellen zu lassen.
Einstellungen => Wifi-Setup
Dieser Menüpunkt ist denke ich mal selbsterklärend. Der ESP versucht sich immer wieder mit dem gespeichertem Wlan zu verbinden, wenn "mit Wlan verbinden" eingestellt wird. Wenn sich Eure Wlan Zugangsdaten ändern, müssen die Wlan Einstellungen des ESP zurückgesetzt werden. (Siehe Reset)
Die Grundkonfiguration sollte nun abgeschlossen sein. Am besten den ESP nochmal neu starten und danach MQTT einschalten.
Einstellungen => MQTT
Auch dieser Menüpunkt ist denke ich selbsterklärend. Solltest Du Home Assistant nutzen, bitte "HA Auto Discover" aktivieren.
** Einstellungen => Farbe bei Start**
Auch dieser Menüpunkt sollte selbsterklärend sein.
Einstellungen => Farben syncronisieren
Hier kann seit dieser Version die aktuelle Farbe angepasst werden. In der alten Version ist es mir immer schonmal passiert, das die Lampe nach dem Einschalten nicht aus war, sondern noch eine Farbe leuchtete. Der ESP stand aber aber auf "Aus".
Hier kann man bei diesem Problem mal eben schnell die aktuelle Farbe zwischen ESP und Lampe syncronisieren.
Einstellungen => Filesystem
Ein einfacher Filebrowser um mal eben schnell eine Webseite, sensor_data.json o.Ä. auszutauschen bei einem update.
Einstellungen =>Update
Hier kann ein Update über den Webbrowser aufgespielt werden.
Zu beachten ist, das alle Einstellungen der Lampe ins Filesystem geschrieben werden. Solltet Ihr also ein komplettes Update des Filesystems über den Updater einspielen, verfällt die Lampe in den Werkszustand. Auch die Wlan Einstellungen sind wieder zurückgesetzt. Bei einem Update des Flash bleiben immer alle Einstellungen erhalten.
Informationen
Im Menü unter Informationen werden allerlei Informationen angezeigt. Als erstes die erkannten Temperatursensoren mit den Temperaturwerten., Softwareversion, IP's, MQTT Informationen, EPS Flash/Ram
Fehler
Solltet Ihr einen Fehler / Problem mit meiner Software haben, bitte unter Github ein Issue eröffnen.
Dort sind dann alle Fehler / Probleme gesammelt und müssen nicht in zig verschiedenen Foren diskutiert / erklärt werden.
Außerdem ist es auch für mich einfach, weil ich nur eine Anlaufstelle für Probleme habe.
Wlan Zurücksetzen
Um die Wlan Zugangsdaten zurückzusetzen und den ESP wieder einen Accesspoint mit den Standart Zugangsdaten erstellen zu lassen geht Ihr wie folgt vor :
- Lampe ausstecken und etwas warten, damit evtl. Restspannung abgebaut werden kann
- Taster S1 + S2 festhalten
- Lampe einstecken
- Nach ca. 5 Sekunden können die Tasten losgelassen werden.
Nun sollte die Lampe wieder einen Accesspoint mit dem Namen "Poollampe" aufmachen.
Debug Meldungen
In dieser Version sind die Debugausgaben über die Serielle Schnittstelle standardmäßig deaktiviert.
Um diese ein bzw. auszuschalten einfach die Adresse : http://IP-Adresse/debug/on
oder http://IP-Adresse/debug/off aufrufen.
Die Neue Version ist ab sofort auf Github zu finden.