NEWS
[Adapter] Shelly Adapter mit MQTT
-
@Stuebi
Also fasse mal zusammen:Bei Shelly 1 gibt es Input und Longpush für den SW Eingang.
Bei Shelly 2 gibt es Input und Longpush für beide SW Eingänge - siehe Bild
Bei Shelly RGBW2 gibt es Input für den SW -siehe Bild
Bei Shelly 2.5, Shelly PM kann ich es dir nicht sagen da ich den 2.5 noch nicht angeschlossen habe und einen PM noch nicht habe.
Denke aber bei denen wird es genau so sein.Darstellung beim MQTT Adapter, des state für Input und Longpush, ist 1 oder 0.
Du hast bei deinem Adapter den state Input mit true oder false abgebildet.
Egal wie es ist, sollte meiner Meinung in deinem Adapter jeweils gleich sein die state darstellung, entweder überall true/false oder 1/0.
Was besser oder schöner ist kann ich so nicht sagen.
Wenn ich den state über blockly benutze ist es finde ich logischer true und false da dort mit wahr oder falsch gearbeitet wird.Hoffe dir hilft das weiter, bei fragen melde dich einfach.
Hoffe ich habe es verständlich geschrieben.Grüße Shepherd
-
@Shepherd , wäre wenn Du einmal testen könntest. Ich habe eben die Version 3.0.2 auf GitHub hochgeladen. Die Input und Longpush states habe ich hinzugefügt.
-
@Stuebi said in [Adapter] Shelly Adapter mit MQTT:
@Eyebrawl , du kannst auch bitte auf dem Shelly 1pm und Shelly 2.5 folgendes aufrufen:
http://<ip-vom-shelly>/settings
Vom Output benötige ich den Output vom Feld Type und Hostname. Ich möchte sichergehen, dass es unterschiedliche Versionen von den Shelly Modellen gibt.
@Stuebi in den Settings des einen Shelly1PM steht folgendes:
{"device":{"type":"SHSW-PM","mac":"DC4F2260951C","hostname":"shelly1pm-60951C","num_outputs":1,"num_meters":1},"wifi_ap":{"enabled":false,"ssid":"shelly1pm-60951C","key":""},"wifi_sta":{"enabled":true,"ssid":"74901","ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"wifi_sta1":{"enabled":false,"ssid":null,"ipv4_method":"dhcp","ip":null,"gw":null,"mask":null,"dns":null},"mqtt": {"enable":false,"server":"192.168.33.3:1883","user":"","reconnect_timeout_max":60.000000,"reconnect_timeout_min":2.000000,"clean_session":true,"keep_alive":60,"will_topic":"shellies/shelly1pm-60951C/online","will_message":"false","max_qos":0,"retain":false,"update_period":30},"sntp": {"server":"time.google.com"},"login":{"enabled":false,"unprotected":false,"username":"admin","password":"admin"},"pin_code":"rpmoE-","coiot_execute_enable":true,"name":"","fw":"20190522-070715/v1.5.0@a5e1e3f8","build_info":{"build_id":"20190522-070715/v1.5.0@a5e1e3f8","build_timestamp":"2019-05-22T07:07:15Z","build_version":"1.0"},"cloud":{"enabled":true,"connected":true},"timezone":"Europe/Berlin","lat":50.110901,"lng":8.682130,"tzautodetect":true,"time":"21:01","hwinfo":{"hw_revision":"prod-190329", "batch_id":1},"max_power":3500,"mode" :"relay","relays":[{"name":null,"ison":false,"has_timer":false,"default_state":"off","btn_type":"momentary","btn_reverse":0,"auto_on":0.00,"auto_off":0.00,"btn_on_url":null,"btn_off_url":null,"out_on_url":null,"out_off_url":null,"schedule":false,"schedule_rules":[],"max_power":3500}],"meters":[{"power":0.00,"is_valid":true,"timestamp":1558645280,"counters":[0.000, 0.000, 0.000],"total":534}]}
Ich revi´diere meine Aussage dahingehend das der 2.5 wie gewollt funktioniert und die Schalterstellung entsprechend angezeigt wird.
Im 1PM habe ich CoAP aktiv. so auch im Adapter. Erkannt werden beide den Verbrauch kann ich ablesen. Nur eben wird mir die aktuelle Schalterstellung nicht angezeigt. Er bleibt auf false.
Wenn du noch was brauchst, gib mir Bescheid, ich kann allerdings immer erst abends antworten.Grüße
-
@Stuebi
es geht und geht nicht bei den Shelly2.- Shelly 2 in der Küche geht beide SW geht Longpush.
- Shelly 2 im Esszimmer geht nur SW1 mit Longpush.
- Shelly 2 im Wohnzimmer gehen beide SW nicht mit Longpush.
Sind aber alle gleich eingestellt als edge Switch.
Kann mir das gerade nicht erklären.Bei Shelly 1 geht Input und Longpush bei allen.
Bei RGBW2 geht input.
-
Das hatte ich gerade im Log nach restart vom Shelly Esszimmer:
shelly.0 2019-05-23 21:03:37.551 error Error TypeError: Cannot read property 'state' of undefined in function state.mqtt.http_publish_funct for 192.168.1.106 (shellyswitch / shellyswitch-134823 / SHSW-21#134823#1) shelly.0 2019-05-23 21:03:35.420 info Shelly device 192.168.1.106 (shellyswitch / shellyswitch-134823 / SHSW-21#134823#1) with MQTT connected! shelly.0 2019-05-23 21:03:35.419 info Destroy 192.168.1.106 (shellyswitch / shellyswitch-134823 / SHSW-21#134823#1)
Zufall das es gerade kommt oder ein Problem?
Hatte die ganze Zeit kein Error von Shelly´sWenn ich Shelly in der Küche neustarte kommt auch der Error
shelly.0 2019-05-23 21:25:27.485 error Error TypeError: Cannot read property 'state' of undefined in function state.mqtt.http_publish_funct for 192.168.1.101 (shellyswitch / shellyswitch-135833 / SHSW-21#135833#1)
Bei einem Shelly 1 das gleiche
shelly.0 2019-05-23 21:28:55.067 error Error TypeError: Cannot read property 'state' of undefined in function state.mqtt.http_publish_funct for 192.168.1.102 (shelly1 / shelly1-3214D9 / SHSW-1#3214D9#1) shelly.0 2019-05-23 21:28:53.041 info Shelly device 192.168.1.102 (shelly1 / shelly1-3214D9 / SHSW-1#3214D9#1) with MQTT connected!
-
@Shepherd sagte in [Adapter] Shelly Adapter mit MQTT:
sta
Die Fehlermeldungen sollten jetzt weg sein. Kannst Du netterweise nochmals testen.
-
@Shepherd , dann sieht der Shelly 1 und der RGBW2 gut aus. Das mit dem Shelly 2 kann ich mir nicht erklären, warum der in der Küche funktioniert und die anderen nicht. Kannst du mal die Shellys im Esszimmer u. Wohnzimmer rebooten.
Hilft das? -
@Stuebi
Shelly´s bringen jetzt nach neustart keinen Fehler mehr. -
@Shepherd , das ist ja schon einmal gut. Funktioniert jetzt auch der Input und Longpush bei allen Geräten?
-
@Stuebi
Weiß noch nicht probiere ich noch aus.
Aber bei einem gehts dann sollte es an deinem Adapter ja nicht liegen dass es bei mir nicht alle machen. -
Also der Longpush geht nicht teste aber die tage ob es beim MQTT Adapter bei denen wo net gehen dort geht.
-
Habe gerade gesehen machst QoS als 1und 2 rein. - super
Laut github steht dort Datum von morgen.
Ist es ab morgen verfügbar?
Also freigabe morgen? -
@Shepherd , ich lasse QoS 1 und 2 gerade von Shelly prüfen. Wenn ich QoS 1 Nachrichten verschicke, erhalte ich keine Nachricht des Erhalts der geschickten Nachricht. Egal ob ich 1 oder 120 Sekunden warte
-
@Shepherd , Ich habe von Shelly eine Antwort erhalten. QoS 1 und 2 werden unterstützt. Schein meiner Meinung aber sehr Buggy zu sein. Mal werden QoS 1 Nachrichten gesendet, dann wieder nicht. Verstanden habe ich es bisher nicht. Bei QoS 2 sieht es noch schlimmer aus.
Stellt man im ioBroker Shelly Adapter nun auf QoS 1 oder 2, kann es sein, dass Shelly keine puback Nachricht (Acknowledge) schickt. Dann schicke ich die Message nach ein paar Sekunden nochmals. Das führt zu interessanten Konstellationen.
Du kannst ja gerne einmal Testen und mir Feedback geben. -
@Stuebi
Werde ich testen, und beobachten, benutze normal per MQTT QoS 2 mit den Shellys.
So habe ich sie auch alle konfiguriert.
Ich berichte wenn ich beobachtet habe. -
@Shepherd sagte in [Adapter] Shelly Adapter mit MQTT:
@Stuebi
Werde ich testen, und beobachten, benutze normal per MQTT QoS 2 mit den Shellys.
So habe ich sie auch alle konfiguriert.
Ich berichte wenn ich beobachtet habe.Ich bin gespannt, da ich im Debugger bei meinem Shellys immer nur das QoS 1 Protokoll sehe.
-
@Stuebi
Sorry meinte 1 nicht 2.
verwechsle dies immer weill ich normal bei 1 anfange zu zählen und 3 auswahlmöglichkeiten sind, aber bei null anfängt. -
Nach dem Update auf die Shelly Adapter Version mit MQTT bekomme ich immer folgende Fehlermeldungen wenn ich meinen Shelly 2.5 schalte. Aber das Schalten funktioniert...
2019-06-01 21:53:07.582 - error: shelly.0 Error in function state.coap.http_cmd_funct for state SHSW-25#745559#1.Relay1.Switch for 192.168.123.45 (shellyswitch25 / shellyswitch25-745559 / SHSW-25#745559#1) (TypeError: Cannot read property 'log' of undefined)
-
@eumats , Fehler ist bekannt. Hat aber keine Auswirkungen auf die Funktionalität. In der Version 3.0.3 ist der behoben
-
Hallo,
ich habe nun auch einen Shelly 1PM.
Das anbinden mittels Shelly Adapter v3.0.8 über MQTT ging auch wunderbar.
Nun habe ich aber das Problem, das ich über IOBroker nicht schalten kann. Wenn ich über die Webseite ein oder ausschalte, dann aktualisiert es das auch im IOBroker, wenn ich aber im Switch "true" oder "false" eintrage, dann passiert nix.
Am Ende möchte ich darüber meinen Trocker schalten.
Hat jemand eine Idee was ich machen kann?
VG
Lindi