Support-Thread Modul 36_Shelly.pm

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

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning


jkriegl

per copy/paste aus dem reading error
Rpi 3/4, buster, Fhem, Cul 868, HM-CC-RT-DN, HM-Sec-Sco, HM-ES-PMSw1-Pl, ebus (Vaillant), ECMD, Telegram, HTTPMOD, Xiaomi, Shelly

Elektron

ZitatProblematisch ist also die Definiton der Aktionen, denn es wird ein sofortiger Schaltvorgang und ein zeitverzögerter Vorgang ausgelöst.
Bei Event 'Switch toggled on' sollte auch 'set output state on' und umgekehrt gewählt werden.

Damit funktioniert das Ganze bei mir ohne Mehrfach-Schaltvorgänge.



Also, ich habe die Aktion in Shelly zweistufig geändert.
Im ersten Schritt nur wie von Dir vorgeschlagen die beiden Schaltrichtungen gleich konfiguriert, damit hatte ich im FHEM über mehrere Tag die Schaltzyklen sauber. Außer das dann die Zeiten nicht passten. (Also statt 300 Sekunden an und 4000 Sekunden aus, war es 4000 Sekunden an und 300Sekunden aus.)

Im zweiten Schritt dann nur die Zeiten getauscht, und der Fehler ist wieder da.
So richtig verstehen kann ich das allerdings noch nicht....

Vielen Dank und Grüße Michael

FlatTV

Zitat von: mcfly71 am 02 Oktober 2025, 08:25:40Hallo Gemeinde.

Ich besitze seit neustem einen Shelly 1PM Gen4, bei dem ich es am Ende geschafft habe, ihn auf die ZigBee Firmware umzustellen.
Ich benutze diesen dann aber auch nur als eine Art Repeater für andere ZigBee Devices, und steuer den Shelly selbst noch mit
der 36_shelly.pm .
In dieser Konstellation kommen bei verbose = 2 alle ca 6 Minuten die folgende Fehlermeldung:

(Shelly_HttpResponse:code) Device PUMPE has Error '404: No handler for BLE.CloudRelay.List', state is set to 'Error: No Handler'
Vielleicht weiß jamend wieso, oder ist das wegen des Wechselns zur anderen ZigBee Firmware (1.71)


Guten Morgen,
gleiches Gerät mit der gleichen Meldung.
Hast du das in den Griff bekommen?

Meine Firmware ist aktuell die v1.7.5-beta1 (Zigbee)
Raspi4 - im wesentlichen mit Phoscon, HomeMatic ( aktuell über debmatic), CUL, BOSE-ST und Alexa (Connector)

Starkstrombastler

Zitat von: FlatTV am 03 März 2026, 06:03:22(Shelly_HttpResponse:code) Device PUMPE has Error '404: No handler for BLE.CloudRelay.List', state is set to 'Error: No Handler'
Dieses Feature wird von der Zigbee-FW nicht unterstützt, daher diese Meldung. Wird mit dem nächsten Update bereinigt.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

Elektron

Hallo zusammen,

Habe das Thema jetzt einige Zeit beobachtet.
Es gibt Tage, an denen es gut funktioniert, aber auch welche an denen es nicht klappt.
So richtig kann ich es nicht verstehen, ich vermute aber noch immer eine Race-Condition im Modul selber (oder im Shelly, das der wirklich den falschen Status liefert).

Bin ich der einzige bei dem das Problem auftritt? Ich habe am gleichen Ort auch noch eine weiten Shelly mit dem ich den Energieverbrauch der Brauchwasserwaermepumpe messe, das geht tadellos.

Viele Grüße Michael

Zitat von: Elektron am 01 März 2026, 07:37:18Also, ich habe die Aktion in Shelly zweistufig geändert.
Im ersten Schritt nur wie von Dir vorgeschlagen die beiden Schaltrichtungen gleich konfiguriert, damit hatte ich im FHEM über mehrere Tag die Schaltzyklen sauber. Außer das dann die Zeiten nicht passten. (Also statt 300 Sekunden an und 4000 Sekunden aus, war es 4000 Sekunden an und 300Sekunden aus.)

Im zweiten Schritt dann nur die Zeiten getauscht, und der Fehler ist wieder da.
So richtig verstehen kann ich das allerdings noch nicht....

Vielen Dank und Grüße Michael

Starkstrombastler

Zitat von: Elektron am 07 März 2026, 11:04:02So richtig kann ich es nicht verstehen, ich vermute aber noch immer eine Race-Condition im Modul selber (oder im Shelly, das der wirklich den falschen Status liefert).
Also ich habe die Konstellation mit einem Shelly Plus Plug S nachgestellt und das Verhalten im Event Monitor (Readings: relay und voltage) beobachtet. Das regelmäßige Polling dabei ausgeschaltet (interval=0).
Es zeigten sich dabei zwei Timing-Effekte:
1. Der vom Shelly gelesene Timer wurde etwas zu kurz ausgeführt, so dass ein Lesung knapp vor Ablauf des Timers erfolgte. Das führte manchmal zu inkonsistentem Verhalten.
2. Mein Shelly benötigt bei Einschalten ca. 2.5 Sekunden für das Messen von Spannung/Strom/Leistung. Erfolgt die Abfrage zu früh, ergeben sich "fehlerhafte" Werte.

Um bzgl. Pkt. 2 auf unterschiedlich leistungsfähige Hardware reagieren zu können, wird im Modul das Attribut updateDelay eingeführt. Der Default-Wert beträgt 0.5 Sekunden. Mit einem Wert von 2.5 Sekunden ergibt sich bei mir ein stabiler Betrieb.

Bezüglich der Zirkulationspumpensteuerung nativ auf dem Shelly noch zwei Anmerkungen:
- Das Ausschalten sollte nicht auf eine Tageszeit begrenzt werden, damit auch bei manuellem Schalten immer entsprechend verzögert ausgeschaltet wird.
- Für das Einschalten sollte eine weitere Aktion mit einer langen Zeitspanne definiert werden, damit der morgendliche Wiederanlauf autonom erfolgt.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

SHOFHEM

#1312
Hallo zusammen,
nach dem Update auf die Version 30929 erhalte ich folgende Einträge in meinem Logfile. Es wäre schön, wenn der Entwickler ein Auge darauf werfen könnte. DANKE

2026.03.11 08:47:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/36_Shelly.pm line 1378.
2026.03.11 08:47:25 1: stacktrace:
2026.03.11 08:47:25 1:     main::__ANON__                      called by ./FHEM/36_Shelly.pm (1378)
2026.03.11 08:47:25 1:     main::Shelly_getProperties          called by ./FHEM/36_Shelly.pm (1297)
2026.03.11 08:47:25 1:     main::Shelly_getModel               called by ./FHEM/36_Shelly.pm (7857)
2026.03.11 08:47:25 1:     main::Shelly_HttpResponse           called by FHEM/HttpUtils.pm (756)
2026.03.11 08:47:25 1:     main::__ANON__                      called by fhem.pl (786)
2026.03.11 08:47:25 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/36_Shelly.pm line 1379.
2026.03.11 08:47:25 1: stacktrace:
2026.03.11 08:47:25 1:     main::__ANON__                      called by ./FHEM/36_Shelly.pm (1379)
2026.03.11 08:47:25 1:     main::Shelly_getProperties          called by ./FHEM/36_Shelly.pm (1297)
2026.03.11 08:47:25 1:     main::Shelly_getModel               called by ./FHEM/36_Shelly.pm (7857)
2026.03.11 08:47:25 1:     main::Shelly_HttpResponse           called by FHEM/HttpUtils.pm (756)
2026.03.11 08:47:25 1:     main::__ANON__                      called by fhem.pl (786)
2026.03.11 08:47:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/36_Shelly.pm line 1379.
2026.03.11 08:47:25 1: stacktrace:
2026.03.11 08:47:25 1:     main::__ANON__                      called by ./FHEM/36_Shelly.pm (1379)
2026.03.11 08:47:25 1:     main::Shelly_getProperties          called by ./FHEM/36_Shelly.pm (1297)
2026.03.11 08:47:25 1:     main::Shelly_getModel               called by ./FHEM/36_Shelly.pm (7857)
2026.03.11 08:47:25 1:     main::Shelly_HttpResponse           called by FHEM/HttpUtils.pm (756)
2026.03.11 08:47:25 1:     main::__ANON__                      called by fhem.pl (786)
2026.03.11 08:47:25 1: [Shelly_getModel] no mode/profile found for device Plug_S
2026.03.11 08:47:25 1: [Shelly_getModel] no mode/profile found for device Powermeter_2_Kuehlschrank
2026.03.11 08:47:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/36_Shelly.pm line 1378.
2026.03.11 08:47:25 1: stacktrace:
2026.03.11 08:47:25 1:     main::__ANON__                      called by ./FHEM/36_Shelly.pm (1378)
2026.03.11 08:47:25 1:     main::Shelly_getProperties          called by ./FHEM/36_Shelly.pm (1297)
2026.03.11 08:47:25 1:     main::Shelly_getModel               called by ./FHEM/36_Shelly.pm (7857)
2026.03.11 08:47:25 1:     main::Shelly_HttpResponse           called by FHEM/HttpUtils.pm (756)
2026.03.11 08:47:25 1:     main::__ANON__                      called by fhem.pl (786)
2026.03.11 08:47:25 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/36_Shelly.pm line 1379.
2026.03.11 08:47:25 1: stacktrace:
2026.03.11 08:47:25 1:     main::__ANON__                      called by ./FHEM/36_Shelly.pm (1379)
2026.03.11 08:47:25 1:     main::Shelly_getProperties          called by ./FHEM/36_Shelly.pm (1297)
2026.03.11 08:47:25 1:     main::Shelly_getModel               called by ./FHEM/36_Shelly.pm (7857)
2026.03.11 08:47:25 1:     main::Shelly_HttpResponse           called by FHEM/HttpUtils.pm (756)
2026.03.11 08:47:25 1:     main::__ANON__                      called by fhem.pl (786)
2026.03.11 08:47:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/36_Shelly.pm line 1379.
2026.03.11 08:47:25 1: stacktrace:
2026.03.11 08:47:25 1:     main::__ANON__                      called by ./FHEM/36_Shelly.pm (1379)
2026.03.11 08:47:25 1:     main::Shelly_getProperties          called by ./FHEM/36_Shelly.pm (1297)
2026.03.11 08:47:25 1:     main::Shelly_getModel               called by ./FHEM/36_Shelly.pm (7857)
2026.03.11 08:47:25 1:     main::Shelly_HttpResponse           called by FHEM/HttpUtils.pm (756)
2026.03.11 08:47:25 1:     main::__ANON__                      called by fhem.pl (786)

Starkstrombastler

Zitat von: SHOFHEM am 11 März 2026, 09:11:38nach dem Update auf die Version 30929 erhalte ich folgende Einträge in meinem Logfile. Es wäre schön, wenn der Entwickler ein Auge darauf werfen könnte. DANKE
Kannst du das weiter eingrenzen, bei welchem Shelly (model_ID) tritt der Fehler auf? Bei Geräten Typ Energy-Meter? Der Fehler sollte reproduziert auftreten, wenn du get <name> properties aufrufst.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200