Ich wollte die Informationen erhalten Energie (kWh) auf meinem Sonoff POW R3, ursprünglich mit ESP Easy geflasht. Indem wir ihn mit ESPHome, konnte ich seine Integration in den Home Assistant vereinfachen und auf alle Energiedaten zugreifen. So habe ich Schritt für Schritt vorgegangen.
Wo kann ich diese Ausrüstung kaufen?
Hier ist der Link zu seiner Seite, die dem POWR3. Ich habe auf die Verkäufer und die Preise verwiesen.
Verifizierung der Steckverbinder
In einer früheren Rückmeldung hatte ich das Verfahren zum Blitzen dieses Geräts mit ESP Easy detailliert beschrieben:
Bei dieser Gelegenheit war mir aufgefallen, dass die Konstrukteure des Sonoff POW R3 bereits die 4 benötigte Steckverbinder (3.3V, Rx, Tx, GND), was den Blitzprozess erheblich erleichtert.

Diese Anschlüsse ermöglichen den Anschluss eines USB-Serienadapters zum Blitzen der Firmware.
Anschluss des CP2102
Im Gegensatz zu dem, was häufig dokumentiert wird, habe ich einen CP2102 Anstelle eines FTDI232. Dieses Modul wird direkt an USB angeschlossen und ist sehr einfach zu bedienen.

So habe ich die Verbindungen hergestellt:
- Roter Faden → 3.3V
- Schwarzer Draht → GND
- Weißer Draht → TXD
- Brauner Draht → RXD
Anmerkung: Kommt die Kommunikation nicht zustande, kann es erforderlich sein, die weißen und braunen Drähte (Rx und Tx) umzukehren.

Verbindung des Sonoff POW R3
Anschließend habe ich die Kabel des CP2102 an die Anschlüsse des Sonoff POW R3 angeschlossen:


- Roter Faden → 3.3V
- Schwarzer Draht → GND
- Weißer Draht → ERX
- Brauner Draht → ETX
Flashen mit ESPHome Builder
Um den Sonoff POW R3 mit ESPHome zu flashen, habe ich folgende Schritte ausgeführt:
- Werfen ESPHome Builder.
- Klicken Sie auf Neues Gerät um neue Ausrüstung hinzuzufügen.
- Grundlegende Informationen (Name, Kartentyp usw.) angeben.
- Schließen Sie den CP2102 an USB an, während Sie die Taste am Sonoff POW R3 gedrückt halten (siehe Bild unten). Die LEDs müssen ausgeschaltet werden, was darauf hinweist, dass der Programmiermodus aktiviert ist.
- Starten Sie das Blitzen über die ESPHome-Schnittstelle.

Konfigurieren von Sensoren in ESPHome
Die Konfiguration des Sonoff POW R3 in ESPHome basiert auf einer YAML-Datei. Achtung, es gibt mehrere Sonoff POW R3-Modelle (Elite 16A, Elite 20A, Origin 16A usw.) und ihre Konfiguration kann variieren. Als Grundlage habe ich die offizielle Dokumentation für den Sonoff POW R2Bearbeiten und angepasst.
Hier ist der YAML-Code, den ich für meinen Sonoff POW R3 verwendet habe:
Substitutionen: update_interval: 10s name: "Esphome-Heizung" Esphome: name: "${name}" friendly_name: ESPHome Heizung esp8266: Board: esp01_1m logger: baud_rate: 0 api: ota: - platform: esphome password: "b91495d666ba78dd3d0120f6a364e8b1" # Ersetzen Sie mit Ihrem WLAN-OTA-Passwort: ssid: !geheim wifi_ssid password: !geheim wifi_password ap: ssid: "Esphome-Heizung" password: "Kuckuck" # Ersetzen Sie durch ein sicheres Passwort captive_portal: uart: rx_pin: RX baud_rate: 4800 Parity: EVEN binary_sensor: - platform: gpio pin: Nummer: GPIO0 Modus: INPUT_PULLUP inverted: True name: "Knopf" on_press: - switch.toggle: relay_template sensor: - platform: cse7766 current: name: "Strom" filters: - multiply: 0.98 # Passt den Strom an, um die Abweichung um 2 zu verringern% - sliding_window_moving_average: window_size: 80 send_every: 32 Spannung: name: "Spannung" filters: - sliding_window_moving_average: window_size: 80 send_every: 32 Power: name: "Leistung" filters: - sliding_window_moving_average: window_size: 80 send_every: 32 Energie: name: "Energy Wh" id: energy_wh filters: - throttle: ${update_interval} # Virtueller Sensor zum Umrechnen von Wh in kWh - platform: template name: "Energy kWh" unit_of_measurement: "kWh" Lambda: |- return id(energy_wh).state / 1000; update_interval: 60s accuracy_decimals: 3 Switches: - platform: template name: "Jus" optimistic: true id: relay_template turn_on_action: - switch.turn_on: relay - light.turn_on: pow_blue_led turn_off_action: - switch.turn_off: relay - light.turn_off: pow_blue_led - platform: gpio id: Relay Pin: GPIO12 inverted: true light: - platform: status_led name: "Blaue LED" id: pow_blue_led pin: Nummer: GPIO13 inverted: True
Erläuterungen zum Code:
- Substitutionen : Definiert wiederverwendbare Variablen wie das Aktualisierungsintervall und den Gerätenamen.
- Esphome : Konfiguriert den Namen und den benutzerfreundlichen Namen der Ausrüstung.
- esp8266 : Gibt den verwendeten Kartentyp an (ESP01 1M).
- logger : Deaktiviert serielle Protokolle, um Konflikte mit der UART-Kommunikation zu vermeiden.
- Wi-Fi : Richtet die Wi-Fi-Verbindung und einen Hotspot ein.
- uart : Setzt die seriellen Kommunikationsparameter für den Sensor CSE7766 (Strommessung, Spannung, Leistung, Energie).
- binary_sensor : Konfiguriert die physische Sonoff-Taste, um den Status des Relais umzuschalten.
- Sensor : Definiert Strom-, Spannungs-, Leistungs- und Energiesensoren. Ein virtueller Sensor wandelt Wh in kWh um.
- Switch : Verwaltet das Relais und die blaue LED, um den Status anzuzeigen (ein/aus).
- light : Steuert die blaue LED des Sonoff.
Anmerkung: Wi-Fi-Passwörter und -IDs müssen durch Ihre eigenen Werte ersetzt werden.
Ergebnisse für Home Assistant
Sobald das Blitzen abgeschlossen und das Gerät neu gestartet ist, erscheint es automatisch im Home Assistant mit allen konfigurierten Sensoren:

Sie können nun den Stromverbrauch, die Spannung, die Leistung und die Energie (in kWh) in Echtzeit direkt über Ihr Home Assistant-Dashboard überwachen.
Referenzseiten
(Aufmerksamkeit für Dummheiten in einigen Foren)
- https://community.home-assistant.io/t/flashing-sonoff-pow-r3-to-esphome/475802/4
- https://devices.esphome.io/devices/Sonoff-POW-R2

