Support-Thread Modul 36_Shelly.pm

Begonnen von Prof. Dr. Peter Henning, 03 Februar 2021, 08:03:09

Vorheriges Thema - Nächstes Thema

Elgardo

Zitat von: Starkstrombastler am 10 August 2023, 13:46:55Hallo Elgardo,
probier mal folgendes:
- lösche die Attribute model und mode
- betätige die DEF Taste in der Webansicht, oder als Kommando defmod name ip-des-Shelly
Der Shelly wird dadurch neu definiert und die Auto-Erkennung erkennt, dass es sich um ein Gen2-Modell handelt.
Voraussetzung ist, dass der Shelly bereits fertig eingerichtet ist und sich über die App oder Web bedienen lässt.
Und natürlich die aktuelle (Test-) Version des Moduls.

Hallo Starkstrombastler,
herzlichen Dank für die rasche Antwort, das war die Lösung. Die Fehlermeldung ist endlich weg.
Sorry für meine späte Antwort.

Starkstrombastler

#511
Hallo Shelly-Fan-Gemeinde,

die Weiterentwicklung des Shelly-Moduls befindet sich auf der Zielgeraden, heute kommt nochmal eine Testversion, aber als nächstes steht die Übernahme in das SVN an.

Die von bene80 beschriebenen Fehler sollten nich mehr auftreten:
Zitat von: bene80 am 06 August 2023, 21:09:11Hat der Name im Shelly ein Leerzeichen wird alles nach dem Leerzeichen abgeschnitten.
Zitat von: bene80 am 06 August 2023, 21:09:11Ich muss dann den slider kurz bewegen damit der neue Wert übernommen wird.

Außerdem wird die mit Firmware 1.0.0 verfügbare Frequenz bei Plus/Pro-Devices mit Leistungsmessung im Modul angezeigt. Die Daten werden dabei 1:1 vom Shelly übernommen, leider nur mit einer Kommastelle. Von einer Messung so wie hier sind wir da leider weit enfernt.

Freue mich wie immer über Rückmeldungen.

VG
Starkstrombastler
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

JWRu

Ich habe die neueste Version installiert - hat alles super funktioniert.
Die bereits definierten Devices wurden problemlos übernommen, ein neuer Shelly Plus 2PM erkannt und die xtrachannels eingerichtet.
ZBox; RasPi 3B; RasPi Zero W; Homematic; Z-Wave; EnOcean, Shelly; DuoFern; Oregon-Sensoren; TFA-Sensoren; Steuerung Viessmann-Heizung; Arduinos für Strom-, Wasser-, Gaszähler, Rauchmelder und FI-Schutzschalter

JWRu

Zitat von: JWRu am 18 August 2023, 22:45:59Ich habe die neueste Version installiert - hat alles super funktioniert.
Die bereits definierten Devices wurden problemlos übernommen, ein neuer Shelly Plus 2PM erkannt und die xtrachannels eingerichtet.

Update
Mein Shelly Plus 1PM, der lokal mit einem Taster bedient wird, liefert im Takt von "interval" (stand auf 10) im Log:

2023.08.22 00:00:15 3: [Shelly_proc2G:status] Shellyplus1PM01 has input 0 with state unknown
2023.08.22 00:00:15 3: [Shelly_proc2G:config] Shellyplus1PM01 has input 0: button straight momentary
2023.08.22 00:00:25 3: [Shelly_proc2G:config] Shellyplus1PM01 has input 0: button straight momentary
2023.08.22 00:00:25 3: [Shelly_proc2G:status] Shellyplus1PM01 has input 0 with state unknown
2023.08.22 00:00:35 3: [Shelly_proc2G:status] Shellyplus1PM01 has input 0 with state unknown
2023.08.22 00:00:35 3: [Shelly_proc2G:config] Shellyplus1PM01 has input 0: button straight momentary
2023.08.22 00:00:45 3: [Shelly_proc2G:status] Shellyplus1PM01 has input 0 with state unknown
2023.08.22 00:00:45 3: [Shelly_proc2G:config] Shellyplus1PM01 has input 0: button straight momentary
2023.08.22 00:00:55 3: [Shelly_proc2G:status] Shellyplus1PM01 has input 0 with state unknown
2023.08.22 00:00:55 3: [Shelly_proc2G:config] Shellyplus1PM01 has input 0: button straight momentary
2023.08.22 00:01:05 3: [Shelly_proc2G:status] Shellyplus1PM01 has input 0 with state unknown
2023.08.22 00:01:05 3: [Shelly_proc2G:config] Shellyplus1PM01 has input 0: button straight momentary
ZBox; RasPi 3B; RasPi Zero W; Homematic; Z-Wave; EnOcean, Shelly; DuoFern; Oregon-Sensoren; TFA-Sensoren; Steuerung Viessmann-Heizung; Arduinos für Strom-, Wasser-, Gaszähler, Rauchmelder und FI-Schutzschalter

Starkstrombastler

Hallo JWRu,
vermutlich ist in diesem Device der verbose level auf 3 gestellt. Bei einem kleineren Wert tauchen diese Meldungen nicht auf.

Zitat von: JWRu am 22 August 2023, 06:37:552023.08.22 00:00:15 3: [Shelly_proc2G:status] Shellyplus1PM01 has input 0 with state unknown
2023.08.22 00:00:15 3: [Shelly_proc2G:config] Shellyplus1PM01 has input 0: button straight momentary
Ansonsten spiegeln die Logeinträge das normale Verhalten mit einem momentary-Input wieder. Dieser ist bei Betätigung für eine kurze Zeit auf ON und geht danach in einen undefinierten Zustand.

Wenn du eine Zustandsänderung auf Grund des Inputs "schnell" in Fhem sehen willst, ist es effizienter entsprechende Actions auf dem Shelly zu hinterlegen.
Dies kannst du mit dem Attribut 'webhook' automatisiert durchführen.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

RalfRog

Zitat von: Starkstrombastler am 22 August 2023, 11:52:49Dies kannst du mit dem Attribut 'webhook' automatisiert durchführen.
Frage am Rande da ich im letzten Monat wenig am Shelly aktiv war.
Hattest du zum Thema CSRF-Token und Webhook eventuell noch Ergänzungen für 1st Gen eingebaut?
Ich hatte mir im Juli etwas mit DOIF im Perlmodus und {$FW_CSRF} gestrickt um den Input vom 1PM per Webhook zeitnah zu erhalten.



Zitat von: Starkstrombastler am 16 Juli 2023, 11:48:19...
Punkt für Punkt abarbeiten. Ich selbst habe auch ein unerwünschtes Verhalten ("kaputt schreiben") im Zusammenhang mit dem Löschen von Devices entdeckt.
  --> Fehler beheben --> neues Update
Das ist (im Kontext Webhook) vermutlich korrigiert. Bin bisher nicht dazu gekommen es am PlusPLug zu testen

FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

Starkstrombastler

Zitat von: RalfRog am 22 August 2023, 15:25:01Hattest du zum Thema CSRF-Token und Webhook eventuell noch Ergänzungen für 1st Gen eingebaut?
Der Bug "kaputt schreiben" im Webhook-Automatismus wurde behoben. Das automatisierte Erstellen von Webhooks ist derzeit nur für Gen2-Devices implementiert. Was aber bei allen vom Modul abgedeckten Gen1-Geräten funktionieren sollte, sind die Set-Endpoints, um Befehle wie set <name> out_on, set <name> button_on, set <name> short_push, etc. zu verarbeiten.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

JWRu

#517
Zitatvermutlich ist in diesem Device der verbose level auf 3 gestellt. Bei einem kleineren Wert tauchen diese Meldungen nicht auf
Der verbose level ist bei mir schon immer in "global" auf 3 gestellt - bei den Shellies habe ich auf Device-Ebene nichts eingestellt.
Das "alte" Shelly-Modul hat ja den Plus 1PM schon unterstützt und mit verbose 3 keine solchen Meldungen produziert.
Es ist klar, dass der Eingang mit einem Taster meistens undefiniert ist. Somit ist das kein Fehler, den man mit verbose 3 protokollieren müsste.

ZitatWenn du eine Zustandsänderung auf Grund des Inputs "schnell" in Fhem sehen willst, ist es effizienter entsprechende Actions auf dem Shelly zu hinterlegen.
Dies kannst du mit dem Attribut 'webhook' automatisiert durchführen.
Welche Wirkung hat dann das attribut "interval"?
ZBox; RasPi 3B; RasPi Zero W; Homematic; Z-Wave; EnOcean, Shelly; DuoFern; Oregon-Sensoren; TFA-Sensoren; Steuerung Viessmann-Heizung; Arduinos für Strom-, Wasser-, Gaszähler, Rauchmelder und FI-Schutzschalter

bene80

Hallo Starkstrombastler,

vielen Dank für deine Arbeit, jetzt funktioniert alles.

Mir ist gerade noch etwas beim shellyrgbw aufgefallen. Die Helligkeit für den Weißkanal wird auch direkt im Shelly Webinterface übernommen. Die Helligkeit der Farbkanäle ändert sich aber nicht. Das heißt auch, man muss die Helligkeit der Farbkanäle im Webinterface auf 100% stellen, sonst kann man aus FHEM heraus nicht mehr korrekt ansteuern, bzw gar nicht mehr die Frabkanäle einschalten wenn sie auf 0% gestellt ist. Nachdem ich den shellyrgbw nur aus FHEM steuere ist das für mich aber kein Problem.

Eine Frage hätte ich noch: Weiß vielleicht jemand wie man den shellyrgbw über einen längeren Zeitraum (ca 30-60 Minuten) hoch und runter dimmen kann? Es gäbe ja die Transition time, die kann man aber mit dem shelly modul nicht ansprechen und sie geht leider auch nur bis 5s.

SG Bernhard

Starkstrombastler

Zitat von: JWRu am 22 August 2023, 19:44:48Das "alte" Shelly-Modul hat ja den Plus 1PM schon unterstützt und mit verbose 3 keine solchen Meldungen produziert.
Schön zu hören, dass das Modul funktioniert. Damit kann ich viele Meldungen hochsetzen oder ganz entfernen.

Zitat von: JWRu am 22 August 2023, 19:44:48Welche Wirkung hat dann das attribut "interval"?
Mit interval wird die Zeitspanne festgelegt, nach der das Modul spätestens Daten vom Shelly abruft. Wenn sich der Shelly via Actions/Webhook in Fhem meldet, wird das zugehörige Reading aktualisiert und das Modul ruft sofort danach die Daten vom Shelly ab. Das Intervall wird zurückgesetzt.

Man kann also lange Intervalle festlegen und hat trotzdem Veränderungen am Shelly nahezu verzögerungsfrei in Fhem.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

JWRu

ZitatMit interval wird die Zeitspanne festgelegt, nach der das Modul spätestens Daten vom Shelly abruft. Wenn sich der Shelly via Actions/Webhook in Fhem meldet, wird das zugehörige Reading aktualisiert und das Modul ruft sofort danach die Daten vom Shelly ab. Das Intervall wird zurückgesetzt.
Man kann also lange Intervalle festlegen und hat trotzdem Veränderungen am Shelly nahezu verzögerungsfrei in Fhem.
Super - danke für die Antwort!
ZBox; RasPi 3B; RasPi Zero W; Homematic; Z-Wave; EnOcean, Shelly; DuoFern; Oregon-Sensoren; TFA-Sensoren; Steuerung Viessmann-Heizung; Arduinos für Strom-, Wasser-, Gaszähler, Rauchmelder und FI-Schutzschalter

JWRu

ZitatWenn du eine Zustandsänderung auf Grund des Inputs "schnell" in Fhem sehen willst, ist es effizienter entsprechende Actions auf dem Shelly zu hinterlegen.
Dies kannst du mit dem Attribut 'webhook' automatisiert durchführen.

Das habe ich jetzt mal ausprobiert. Das Attribut 'webhook' habe ich auf meine aktuelle FHEMWEB-Instanz gesetzt.
Im Shelly passiert aber nichts. Die 'Actions' bleiben leer.
ZBox; RasPi 3B; RasPi Zero W; Homematic; Z-Wave; EnOcean, Shelly; DuoFern; Oregon-Sensoren; TFA-Sensoren; Steuerung Viessmann-Heizung; Arduinos für Strom-, Wasser-, Gaszähler, Rauchmelder und FI-Schutzschalter

RalfRog

Zitat von: JWRu am 23 August 2023, 16:07:09Das habe ich jetzt mal ausprobiert. Das Attribut 'webhook' habe ich auf meine aktuelle FHEMWEB-Instanz gesetzt.
Im Shelly passiert aber nichts. Die 'Actions' bleiben leer.

Habe gerade die Terstinstallation nicht aktiv.
Ich glaube mich zu erinnern, dass du zunächst auch eine Action im Shelly definieren musst. Sie müssen glaube ich mit "_" beginnen.
Das Modul liest das aus und ergänzt den CSRF-Token.
FHEM auf Raspi 2B mit nanoCUL, HM-MOD-RPI-PCB und über LAN MAX!Cube mit a-culFW (Stack 868 + 433)
HM- Fensterkontakte, UP-Schalter, Bewegungsmelder und ein Rauchmelder

JWRu

#523
ZitatIch glaube mich zu erinnern, dass du zunächst auch eine Action im Shelly definieren musst. Sie müssen glaube ich mit "_" beginnen.
Das Modul liest das aus und ergänzt den CSRF-Token
Das probiere ich später mal aus - vielen Dank!

Update: Hat nicht geklappt - um eine Action zu erstellen muss ich anscheined zwingend eine URL angeben.

Beim Shelly Plus 2PM hat übrigens das automatische Erstellen der Actions mit dem Attribut 'webhooks' problemlos geklappt.
ZBox; RasPi 3B; RasPi Zero W; Homematic; Z-Wave; EnOcean, Shelly; DuoFern; Oregon-Sensoren; TFA-Sensoren; Steuerung Viessmann-Heizung; Arduinos für Strom-, Wasser-, Gaszähler, Rauchmelder und FI-Schutzschalter

Starkstrombastler

Zitat von: JWRu am 23 August 2023, 16:35:01Ich glaube mich zu erinnern, dass du zunächst auch eine Action im Shelly definieren musst. Sie müssen glaube ich mit "_" beginnen.
Das Modul liest das aus und ergänzt den CSRF-Token
Nein, das ist so nicht erforderlich. Mit dem Setzen des Attributes 'webhook' auf eine FHEMWEB-Instanz sollte alles vollautomatisch ablaufen. Auf dem ShellyPlus1 sollten sich dann 4 bzw. 6 Actions befinden, je nachdem wie der Eingang des Shelly konfiguriert ist. Die Namen der automatisch angelegten Actions beginnen mit '_'.

Sollte das Problem weiterhin bestehen, müssen wir uns ein List des Devices und die Log-Daten für verbose=4 (oder 5) anschauen.

Die Actions können natürlich auch manuell angelegt werden. Beispielsweise sollte die URL für das Shelly-Event 'Switch toggled on' in etwa so aussehen:
http://192.168.178.100:8084/fhem?XHR=1&fwcsrf=csrf_368000985512399&cmd=set%20meinShelly%20out_on%200
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200