Es gibt viele WLAN -Stecker auf dem Markt von verschiedenen Herstellern. Ich beschloss, die Luminea ZX-2820 zu verwenden. Nach dem Kauf stellte sich heraus, dass dieser Stecker schwer zu öffnen ist, da es keine Schrauben gibt und das Gehäuse geklebt ist, sodass ich einen anderen besser gekauft hätte. Aber ok, Sie brauchen ein Messer, um die Gelenke zu schneiden und das Gehäuse ohne große Aufschub vorsichtig zu öffnen. Intern gibt es ein ESP8285/ESP8266 -Modul (Tuya Tywe2s), das leicht mit den verfügbaren Pads auf der Leiterplatte reflektiert werden kann. Außerdem ist ein intelligentes Einphase -Energie -Messgerät angeschlossen, das Spannung, Strom, unterschiedliche Leistungsstypen und die verbrauchte Energie messen kann. Es ist ein gutes Gefühl, die ursprüngliche Firmware zu beseitigen, die eine chinesische MQTT -Cloud verwendet. Stattdessen stellt meine Software eine Verbindung zu einem lokal selbst gepflegten MQTT -Broker her (siehe ein anderes Projekt von mir).
Die Hardware ist das kommerzielle Produkt Luminea ZX-2820 . Es wird von Pearl (https://www.pearl.de/a-zx2820-3103.shtml) und Amazon (https://www.amazon.de/-/en/luminea-home-control-esion-socket/dp/b078159rf6?languation=DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DE_DELAUS verkauft. 
Es gibt ein ESP8285 -Modul (Tuya Tywe2s) auf der Leiterplatte. Es ist in der Tat ein ESP8266 mit internem Blitz (1MByte). Die folgende Tabelle zeigt die Zuordnung zwischen den GPIOs und ihren Funktionen:
| Signal | Tywe2s | Typ |
|---|---|---|
| Taste | Gpio3 | Eingang |
| BL0937 vgl | Gpio4 | unterbrechen |
| BL0937 CF1 | Gpio5 | unterbrechen |
| BL0937 SEL | Gpio12 | Ausgabe |
| LED | Gpio13 | Ausgabe |
| Rel | Gpio14 | Ausgabe |

Dieses einphasiges Energiemesser ist dem sehr beliebten HLW8012 sehr ähnlich, zumindest ist es PIN -kompatibel. Durch den Vergleich der Datenblätter gibt es einige signifikante Unterschiede. Ich habe den Treibercode von https://github.com/xoseperez/hlw8012 genommen und ihn auf den BL0937 portiert, den Sie neben dem Hauptprogramm finden. Die wichtigsten Veränderungen beeinflussten die
Der serielle Header (3,3 V, RXD, TXD, GND) sowie GPIO0 und Reset (IO0, RST) werden als Testpads auf der Rückseite des PCB und auf dem Tuya Tywe2s -Modul selbst besiedelt. Für den Zugriff auf den Serienkopf, um einige Kabel zu löten, muss ein kleines Loch in das Gehäuse geschnitten werden (das Loch kann schließlich wieder mit etwas heißem Kleber geschlossen werden). Sie können problemlos etwas Lötmittel hinzufügen, um die Drähte für den Flash -Prozess zu reparieren. Sie müssen eine Verbindung zur seriellen Programmierschnittstelle des ESP8266 -Chips herstellen. Dies erfolgt durch Anschließen eines seriellen Umzugs (z. B. FT232R) TX-, RX-, 3,3 V- und GND-Stifte an die ESP8266 RX-, TX-, 3,3 V- und GND-Stifte (Cross-Verbindung!). Überprüfen Sie Ihren Serial-zu-USB-Konverter, um sicherzustellen, dass es 3,3 V-Spannung und nicht 5 V liefert. 5V wird den ESP -Chip beschädigen! 
Um das Board zum ersten Mal in den Flashing -Modus zu legen, müssen Sie IO0 (gpio0) nach GND einstellen. Dies kann während des Flasens verkürzt bleiben, aber Sie müssen den Kurzfilm entfernen, um danach die Flasser -Software zu starten. Für den Fall, dass Sie zum ersten Mal erfolgreich geblitzt haben und die Flashed Software startet, kann sie leicht von über die Luft und das WLAN reflasken. Die Arduino-IDE unterstützt diese Funktionen und Sie können die IP-Address Ihres Steckers stattdessen den UART-Kanal für den Software-Download auswählen. Das Passwort für OTA ist esp8266 . Ein erfolgreicher Flash -Prozess von OTA wird anschließend durch schnelles Umschalten angegeben. 
Lolin(Wemos) D1 mini Lite BoardAsync MQTT client -Bibliothek: https://github.com/marvinroger/async-mqtt-client/archive/master.zipAsync TCP -Bibliothek: https://github.com/me-no-dev/espasynctcp/archive/master.zipArduinoOTA -Bibliothek.Die Konfiguration erfolgt vollständig im Web -Frontend des Wifimanager. Beim Start stapft die Software im Access Point -Modus. In diesem Modus können Sie Parameter wie konfigurieren
Nachdem diese Einstellungen gespeichert worden waren, steckt mit dem nächsten Start die Software in den normalen Betriebsmodus und stellt eine Verbindung zu Ihrem WLAN- und MQTT -Broker her. Eine erfolgreiche Verbindung zum Broker wird durch Einschalten der LED angezeigt. Wenn Sie erneut in das Konfigurationsmenü Wifimanager eingeben, können Sie die während des Starts der Software gedrückte Drucktaste halten.
Die Software unterteilt zu MQTT-Themen, über die der Relais-Zustand des ZX-2820 geändert und die verbrauchte Energie zurückgesetzt werden kann. Die Software veröffentlicht alle 3 Sekunden die neuen Stichprobenwerte für Spannung, Strom, aktive Leistung, reaktive Leistung, scheinbare Leistung und verbrauchte Energie. Auch die Software unterstützt die Wiederverbindung an WLAN und den MQTT-Broker im Falle eines Stromverlusts, des WLAN-Verlusts oder des MQTT-Brokers. Die MQTT-Themen beginnen mit der Gerätspezifischen Mac-Address-Zeichenfolge (in der folgenden "A020A600F73A" als Beispiel). Dies ist nützlich, wenn Sie mehrere Controller in Ihrer MQTT -Cloud haben, um Kollisionen zu vermeiden.
Themen abonnieren:
Themen veröffentlichen:
Geöffneter Gehäuse: 
Tywe2s und BL0937 -Module auf der PCB: