[HowTo] Sonoff POW an Fhem anbinden

Begonnen von Reinhart, 07 November 2016, 16:53:53

Vorheriges Thema - Nächstes Thema

Billy

Mal eine Frage, wieso ist Sonoff unter
FHEM Forum » Verschiedenes » Bastelecke » ESP8266 versteckt und nicht unter

FHEM Forum » FHEM - Hausautomations-Systeme » Sonstige Systeme

zu finden?

Ist eigentlich keine Bastellösung mehr?
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

Reinhart

@Billy

war vielleicht von mir etwas unglücklich gewählt, aber ich habe mich an den Switch Beitrag angelehnt.
Gebastelt wird insofern, das immer wer versucht GPIOs frei zu schalten und nach extern zu führen um sie nutzbar zu machen (für Temperatur etc.). Die meiste Bastelei liegt wohl in der Software, da diese kommerziellen Geräte dafür eigentlich nicht vorgesehen sind (oder doch so vom Hersteller beabsichtigt).

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

@JoWiemann

freut mich das die Sicherung funktioniert hat, aber ich muss ehrlich gestehen, dass ich noch nicht versucht habe das Backup der Originalsoft zurück zu spielen.

Hast du das schon getestet?

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Billy

Zitat von: Reinhart am 09 November 2016, 18:37:50
@Billy

war vielleicht von mir etwas unglücklich gewählt, aber ich habe mich an den Switch Beitrag angelehnt.
LG
Meine Idee war eigentlich das Thema zu promoten. Habe heute meine Sonoff Switches nach deiner WIKI problemlos zum Laufen gebracht.
Vielleicht lässt sich das Ganze ja noch verschieben.

BTW wann ist mit einer Wieder-Verfügbarkeit  der Sonoff POW zu rechnen?  Das Preis-Leistungsverhältnis ist überzeugend.
Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

Reinhart

@Billy
freut mich wenn das nach der Wiki geklappt hat. Die nächste Charge #3 ist ja bereits in Fertigung, die POWs verkaufen sich wie warme Semmeln.
Wie stimmen bei dir die angezeigten Leistungswerte?

Leider habe ich den nächsten Fehler gefunden, das Reading TODAY_POWER wird alle volle Stunden auf 0 gesetzt, anstatt nur um Mitternacht!
Habe es dem Entwickler bereist gemeldet. So ist das halt mit Neuentwicklungen. Im angehängten Bild ist die rote Kurve die TODAY_POWER, geht jede Stunde wieder auf Null.

    if (rtc_loctime() == rtc_midnight()) {
      sysCfg.hlw_esave = hlw_kWhtoday;
      hlw_kWhtoday = 0;

laut xsns_hlw8012.ino sollte das nur um Mitternacht so sein.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

@Billy

kannst du einmal in der Console des POW nachsehen ob die NTP Synchronisation ok ist?

00:13:35 MQTT: tele/sonoffpow2/TIME = 1970-01-01T00:13:35
bei mir nicht, darum bootet mein POW alle Stunde und setzt den TODAY_POWER auf 0. Soweit habe ich das bis jetzt mit Arends abklären können. Ich teste gerade die 2.0.10.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Billy

#21
Zitat von: Reinhart am 09 November 2016, 21:36:47
@Billy

kannst du einmal in der Console des POW nachsehen ob die NTP Synchronisation ok ist?
Das Problem hatte ich auch bei einem meiner 2 Switches nach update auf 2.0.10. auch. d.h. 1970 er Datum

Da war das Board aber noch an den 3,3V des Flashers.

War aber nach dem Anklemmen der Netzspannung ok.


Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

Uhrheber

Zitat von: AxelSchweiss am 09 November 2016, 16:52:56
Na dann werde ich es einfach mal ausprobieren  ... wenn ich den POW endlich habe.
Aktuell scheint ITEAD Lieferprobleme zu haben ...  seit einer Woche ist der Bestellstatus "in Progress"  :(

In ihrem Forum hat ein Itead Mitarbeiter kürzlich geschrieben, dass sie momentan pro Woche so 50k von den Sonoffs raushauen.
Wir kaufen die gerade leer :-)

Reinhart

Zitat von: Billy am 10 November 2016, 15:37:58
Das Problem hatte ich auch bei einem meiner 2 Switches nach update auf 2.0.10. auch. d.h. 1970 er Datum
Da war das Board aber noch an den 3,3V des Flashers.
War aber nach dem Anklemmen der Netzspannung ok.

ich habe das heute ausgiebig getestet, die NTP Synchronisation erfolgt erst beim Stundenwechsel und ist dann in der Regel ok, egal ob Switch oder POW. Bei den POWs funktioniert das aber nicht, sondern die rebooten. Sperre ich die "#define MODULE  SONOFF_POW" dann arbeitet der POW wie ein normaler sonoff Switch und auch die NTP Synchronisation funktioniert ohne Absturz beim Stundenwechsel, aber dann kommen eben keine Powerdaten weil er ja Switch ist.

Wenn bei dir das nun funktioniert, macht mich das stutzig, denn ich habe das auf beiden POW. Ich hoffe Theo schaut sich das an und kann den Fehler nachstellen, geschrieben habe ich es ihm und auch ein SysLog hinzugefügt.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

ich konnte nun das NTP Problem selber lösen, da ich mir die Init Rotinen genauer angesehen habe.

Nach dem Reboot des POW erfolgt die Initialisierung des WIFI mit Anmeldung, DHCP Request und jede Menge andere Inits für den POW. Dafür war die Zeit von 9 Sekunden bei mir zu knapp um die anschließende IF Bedingung der NTP Erst Initialisierung zu schaffen.

00:00:46 Wifi: Checking connection...
00:00:46 Wifi: Connected
00:00:58 RTC: (UTC) Thu Nov 10 19:01:54 2016
00:00:58 RTC: (DST) Sun Mar 27 02:00:00 2016
00:00:58 RTC: (STD) Sun Oct 30 03:00:00 2016
20:01:56 Config: Saved configuration (692 bytes) to flash at FA and count 221
20:02:02 Wifi: Checking connection...

hier das Log der jetzt funktionierenden NTP sync. nach dem Reboot! Ich hoffe das damit die stündlichen Reboots auch behoben sind. Ich muss noch abklären, ob Theo noch eine andere Lösung hat.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

#25
im Prinzip verhalten sich meine POWs nun sehr stabil. Die gestern getätigten Änderungen im Sketch sind ein guter Workaround zu den eigenartigen Fehlern, das hat mir auch Theo Arends so bestätigt. Die Fehler zeigten sich auch nicht bei jedem gleich, das es von Geschwindigkeit der Erstinitialisierung des Modules abhängt. Da ich 3 aktive Accespoints mit DHCP Forwardern eingerichtet habe, dauert die Anmeldung schon etwas länger als mit mit einem.

Die gestrige Änderung beschränkt sich auf die Angabe der Sekunden wann die NTP Synchronisation durchgeführt werden soll. Da es grundsätzlich egal ist ob das nach 9 Sekunden (Originalwert) oder nach 58 Sekunden erfolgen soll, habe ich den Wert auf 58 Sekunden gesetzt und das reicht nun auch bei den langsamsten Routern aus um eine NTP Synchronisation zu schaffen.
Aus einem mir nicht nachvollziehbaren Grund stürzt eine spätere Neusynchronistaion (zur nächsten vollen Stunde)  des NTP ab.

Zusätzlich zu diesem Workaround sollten alle Logs abgedreht werden (0 None), diesen Tipp hat mir noch Theo gegeben.

// NTP Sync every hour at x:0:10
  if (rtcTime.Minute == 0) {
    if ((rtcTime.Second > 57) && !ntpsync) {
      ntpsync = 1;

wer es testen will, hier statt "9" einfach "57" einsetzen und NTP wird 58 Sekunden nach Neustart synchronisieren.

Habe nun noch mit den readingsGroup und average etwas experimentiert und die POW sind nun schon sehr anschaulich. Das Wiki wurde auch entsprechend erweitert.

LG



FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Reinhart

vor ein par Stunden hat Theo die Version 2.0.11 mit folgenden Änderungen hochgeladen.

Fix NTP sync and Power thresholds

2.0.11 20161111
* Rewrite button and web toggle code
* Fix NTP sync
* Add HLW calibration commands HLWPCAL, HLWUCAL and HLWICAL (need define
USE_POWERCALIBRATION)
* Fix power threshold tests


d.h. NTP sync ist gefixt und ganz neu ist die Kalibration des HLW, somit kann via MQTT Kommandos nun kalibriert werden. Ich habe mich gleich an meine Pows gemacht und das getestet.

Kalibrierung des HLW Bausteins.
mosquitto_pub -q 2 -t cmnd/sonoffpow/1/HLWUCAL/set -m "2100"     default 1950
mosquitto_pub -q 2 -t cmnd/sonoffpow/1/HLWICAL/set -m "2450"     default 3500
mosquitto_pub -q 2 -t cmnd/sonoffpow/1/HLWPCAL/set -m "13500"    default 12345

mit diesen Pulsfreqeunzen passt es bei Pow1 genau, jedoch der Pow2 weicht leicht davon ab. Gemessen habe ich mit externem Leistungsmesser, die Spannung mit Voltmeter und den Strom berechnet. Dann die Pulsfreqeunzen so lange angepasst bis es gepasst hat. Zwischendurch immer wieder den Status abgefragt.

mosquitto_pub -q 2 -t cmnd/sonoffpow/1/status/set -m "8"

Statusabfrage

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Billy

#27
Hat schon mal jemand das "upgrade by file upload" verwendet? (Anlage)
Wenn ja was ist da vorzubereiten?

Wenn ich nur die compilierte bin auswähle und hochladen will kommt da:
Upload failed --> Upload error code 5

Vermutlich muß ich da noch was einstellen?

Hier  https://github.com/arendst/Sonoff-MQTT-OTA-Arduino/wiki/Compile-and-Upload
steht auf jeden Fall:
Upload image
Since version 1.0.26 you may also use sonoffs web server and upload the file directly.

Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

Billy

Zitat von: Reinhart am 11 November 2016, 21:55:28
Kalibrierung des HLW Bausteins.
Die Spannung mit Voltmeter [b]und den Strom berechnet[/b]. Dann die Pulsfreqeunzen so lange angepasst bis es gepasst hat.


und den Strom berechnet Da war doch was mit    reactive power [elec.] cos phi  ;)
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

Reinhart

#29
Zitat von: Billy am 12 November 2016, 14:18:38
Hat schon mal jemand das "upgrade by file upload" verwendet? (Anlage)
Wenn ja was ist da vorzubereiten?

Wenn ich nur die compilierte bin auswähle und hochladen will kommt da:
Upload failed --> Upload error code 5

Vermutlich muß ich da noch was einstellen?

Hier  https://github.com/arendst/Sonoff-MQTT-OTA-Arduino/wiki/Compile-and-Upload
steht auf jeden Fall:
Upload image
Since version 1.0.26 you may also use sonoffs web server and upload the file directly.

Billy

ich mach das ständig so, es kommt aber manchmal vor das sich die Datei nicht hochladen läßt (bei mir error 7), dann hilft entweder ein Neustart oder wenn es gar nicht funktionieren will ein Neustart des Device (Netzstecker ziehen).

// Ota
#if (ARDUINO >= 168)
  #define OTA_URL              "http://10.0.0.5:80/api/arduino/" PROJECT ".ino.bin"
#else
  #define OTA_URL              "http://10.0.0.5:80/api/arduino/" PROJECT ".cpp.bin"
#endif

Ich habe auch den Raspberry eingerichtet, du musst das File dann so benennen wie es unter PROJECT (ein paar Zeilen weiter oben = sonoff) definiert wurde. Aber einfacher ist es direkt vom PC zu laden weil das File dann heißen kann wie es will.

LG
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa