Support-Thread Modul 36_Shelly.pm

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

Vorheriges Thema - Nächstes Thema

Dracolein

Update eingespielt, bin gespannt.

Ein "Bug" ist erhalten geblieben, mutmaßlich muss ich was an der Config ändern?

Ich habe die Rolläden in Apple Homekit integriert. Via Spracheingabe zB "Hey Siri, Rollo Esszimmer 50%" fährt der Rolladen absolut zuverlässig in diese Position, alles top.
Nutze ich hingegen diesen Apple-Slider in Homekit und schiebe die Wunschposition des Rolladens irgendwo hin, dann startet der Rolladen und stoppt danach kurze Zeit wieder. 1-2 Sekunden später aktualisiert sich der dargestellte Slider mit der aktuellen Ist-Position. Im Ergebnis ist der Rollo aber nicht dort hin gefahren, wohin ich ihn haben wollte.

Bei geschlossenem Rolladen muss ich so manchmal 2-3x den Slider zum öffnen hochschieben, bis der Rollo endlich in seine Position fährt.

generictypedevice = blind, ist gesetzt
homebridgemapping = leer.

Diese Problematik habe ich seit etlichen Monaten, auch schon mit den Shelly 2.5, wie aktuell auch mit den erneuerten Shelly 2PM.
Ob das an Apple oder FHEM oder diesem Modul liegt, kann ich nicht bewerten, vom Gefühl her.... könnte Apple die Schuld tragen?
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

Starkstrombastler

Zitat von: Dracolein am 15 August 2024, 16:13:02Bei geschlossenem Rolladen muss ich so manchmal 2-3x den Slider zum öffnen hochschieben, bis der Rollo endlich in seine Position fährt.
Vom Ansatz her versucht das Modul im Modus 'roller' Zwischenstände zu erfassen (1,5 sec nach Start und bei halbem Weg), d.h. einige Readings werden bei einer Rollofahrt mehrmals aktualisiert.

Um die Wechselwirkung mit Homekit zu verstehen, müssen wir wissen, auf welche Readings Homekit reagiert und welche Werte dort erwartet werden. Evtl. ist das auch irgendwo dokumentiert, ich habe aber nach (kurzer) Suche nichts gefunden.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

Dracolein

#962
Andere Frage, nach gestrigem Update sehe ich im Logfile dies (Ausschnitt)

Zitat2024.08.16 07:31:45 1: DEBUG>on
2024.08.16 07:32:55 1: DEBUG>on
2024.08.16 07:39:46 1: DEBUG>off
2024.08.16 07:40:02 1: DEBUG>off
2024.08.16 08:32:21 1: DEBUG>off
2024.08.16 08:33:06 1: DEBUG>off
2024.08.16 09:26:15 1: DEBUG>off
2024.08.16 09:27:21 1: DEBUG>off
2024.08.16 09:59:11 1: DEBUG>off
2024.08.16 09:59:14 1: DEBUG>off
2024.08.16 10:23:12 1: DEBUG>off
2024.08.16 10:23:38 1: DEBUG>off
2024.08.16 10:31:36 1: DEBUG>off
2024.08.16 10:31:58 1: DEBUG>off
2024.08.16 11:35:56 1: DEBUG>off
2024.08.16 11:36:03 1: DEBUG>off
2024.08.16 11:45:31 1: DEBUG>off
2024.08.16 11:46:14 1: DEBUG>off
2024.08.16 12:37:45 1: DEBUG>off

Ich habe keine Ahnung, von welchem Modul dies herkommt und ob diese Frage hier überhaupt an der richtigen Stelle ist.  Die Suchfunktion brachte mich auch nicht weiter. Ich kann auch keinerlei logische Zusammenhänge mit irgendwelchen getriggerten Events feststellen...

Weiterhin finde ich folgende 2 Logeinträge vor

ZitatPERL WARNING: Use of uninitialized value $sh_hookname in pattern match (m//) at ./FHEM/36_Shelly.pm line 5930.
PERL WARNING: Use of uninitialized value $sh_hookname in concatenation (.) or string at ./FHEM/36_Shelly.pm line 5931.
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

Dracolein

Guten Morgen, ich habe weiter geforscht, woher diese Logeinträge kommen. Es hat augenscheinlich etwas mit dem Shelly-Modul zui tun - aber was genau ist die Ursache?

2024.08.17 05:51:01 1: DEBUG>on
2024.08.17 05:51:01 1: stacktrace:
2024.08.17 05:51:01 1:     main::Debug                         called by ./FHEM/36_Shelly.pm (5363)
2024.08.17 05:51:01 1:     main::Shelly_response               called by ./FHEM/36_Shelly.pm (6444)
2024.08.17 05:51:01 1:     main::Shelly_HttpResponse           called by FHEM/HttpUtils.pm (755)
2024.08.17 05:51:01 1:     main::__ANON__                      called by fhem.pl (783)
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

Starkstrombastler

Zitat von: Dracolein am 17 August 2024, 05:58:02Guten Morgen, ich habe weiter geforscht, woher diese Logeinträge kommen. Es hat augenscheinlich etwas mit dem Shelly-Modul zui tun - aber was genau ist die Ursache?
Diese Debug-Einträge kommen tatsächlich vom Shelly-Modul, als Hilfsmittel für die Entwicklung und sind an sich harmlos. Auffällig ist aber, dass innerhalb einer Minute immer zwei Off-Einträge kommen, ohne dass zwischendurch eingeschaltet wurde. Dass muss aber kein Fehler sein, trotzdem würde ein Blick in deine Config nicht schaden.
Der Debug-Eintrag ist im nächsten Modul-Update entfernt.

Zitat von: Dracolein am 16 August 2024, 16:48:29PERL WARNING: Use of uninitialized value $sh_hookname in pattern match (m//) at ./FHEM/36_Shelly.pm line 5930.
Diesen Fehler kann ich nicht nachvollziehen. Es scheint so zu sein, als ob auf einem Gen2-Device eine namenenlose Action angelegt ist.
Mit dem morgigen Update des Moduls wird dieser Fehler abgefangen und ein Logeintrag Level 1 erzeugt, so dass zumindest das erzeugende Device ersichtlich ist.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

Dracolein

Zitat von: Starkstrombastler am 17 August 2024, 11:43:06trotzdem würde ein Blick in deine Config nicht schaden.
Welche "Config" ist gemeint? ich habe insg. 4 neu angelegte Shelly-Devices durch den Wechsel von Shelly 2.5 zu Shelly 2PM, die restlichen ca. 8-10 Shelly Devices (Steckdosen, Dimmer, etc) sind unverändert geblieben. Wollte jetzt eigentlich nicht die Raws aller Shelly-Devices posten, drum meine Frage was gemeint sei. Neugierig bin ich nämlich schon nach der Ursache.

Zitat von: Dracolein am 16 August 2024, 16:48:29PERL WARNING: Use of uninitialized value $sh_hookname in pattern match (m//) at ./FHEM/36_Shelly.pm line 5930.
Diesen Fehler kann ich nicht nachvollziehen. Es scheint so zu sein, als ob auf einem Gen2-Device eine namenenlose Action angelegt ist. [/quote]

Ich hab durch oben genannten Wechsel zu Shelly 2PM erstmals die Webhook-Funktion genutzt und auf allen 4 Geräten automatisch die "Actions" angelegen lassen - was nach Kontrolle auf alle 4 Devices via Browserlogin auch funktioniert hat.
Siehe Beispiel auf Screenshot.


Als Beispiel eine Raw Def eines Rolladens:

defmod shelly1 Shelly 192.168.178.91
attr shelly1 alias Rolladen Esstischfenster
attr shelly1 genericDeviceType blind
attr shelly1 interval 120
attr shelly1 mode roller
attr shelly1 model shellyplus2pm
attr shelly1 room Homekit,Rolladen
attr shelly1 verbose 2
attr shelly1 webhook WEB

setstate shelly1 pct-100
setstate shelly1 2024-08-15 16:03:54 ap ShellyPlus2PM-B0A73247221C disabled open
setstate shelly1 2024-08-15 16:03:54 ap_clients disabled
setstate shelly1 2024-08-15 16:03:54 ble enabled
setstate shelly1 2024-08-08 19:56:42 cloud enabled(connected)
setstate shelly1 2024-08-02 06:17:49 config successful
setstate shelly1 2024-08-18 06:15:24 current 0
setstate shelly1 2024-08-18 06:15:01 current_last 0.736 up
setstate shelly1 2024-08-18 06:15:24 energy 68.997
setstate shelly1 2024-08-15 16:03:54 firmware v1.4.0(update possible to v1.4.2-beta1)
setstate shelly1 2024-08-18 05:42:08 frequency 50
setstate shelly1 2024-07-25 18:02:09 input_0 off
setstate shelly1 2024-08-15 16:03:54 input_0_function upwards
setstate shelly1 2024-08-16 16:53:20 input_0_mode switch straight enabled
setstate shelly1 2024-07-25 18:02:09 input_1 off
setstate shelly1 2024-08-15 16:03:54 input_1_function downwards
setstate shelly1 2024-08-16 16:53:20 input_1_mode switch straight enabled
setstate shelly1 2024-08-18 07:13:27 inttemp 34.6
setstate shelly1 2024-08-17 21:15:30 last_dir up
setstate shelly1 2024-08-15 16:03:54 model_ID SNSW-102P16EU
setstate shelly1 2024-08-15 15:57:24 network <html>connected to <a href="http://192.168.178.91">192.168.178.91</a> (Wifi)</html>
setstate shelly1 2024-08-15 15:49:28 network_disconnects 167
setstate shelly1 2024-08-15 16:03:54 network_ip-address 192.168.178.91
setstate shelly1 2024-08-18 07:09:27 network_rssi -51
setstate shelly1 2024-07-25 18:02:09 network_ssid ***************
setstate shelly1 2024-07-25 18:02:10 network_threshold -80
setstate shelly1 2024-08-15 16:03:54 network_wifi_roaming -80
setstate shelly1 2024-08-15 16:03:54 output_mode O1=down, O2=up (swapped)
setstate shelly1 2024-08-18 06:15:24 pct 100
setstate shelly1 2024-08-18 06:15:24 pfactor 0
setstate shelly1 2024-08-18 06:15:24 position open
setstate shelly1 2024-08-18 06:15:24 power 0
setstate shelly1 2024-08-18 06:15:01 power_last 167.8 up
setstate shelly1 2024-07-25 18:02:00 protection none
setstate shelly1 2024-08-15 16:05:50 start_reason HTTP_in
setstate shelly1 2024-08-18 06:15:24 state pct-100
setstate shelly1 2024-08-18 06:15:24 stop_reason limit_switch
setstate shelly1 2024-08-18 07:15:28 uptime 691202
setstate shelly1 2024-08-18 07:15:28 voltage 237
setstate shelly1 2024-08-15 16:03:54 webhook_cnt 5
setstate shelly1 2024-08-16 16:53:20 webhook_ver 39


Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

optimizer

Hi,

meine ersten Gehversuche mit dem Shelly-Modul waren leider nicht erfolgreich. Das Attribut model=shellyplusdimmer habe ich manuell hinzugefügt. Für meinen Shelly-Plus-Dimmer 0-10V vermisse ich das Reading pct oder dim zum dimmen.

Vor der aktuellen 36_Shelly.pm bekam ich JSON-Error. Heute nach Update:
2024.08.18 14:12:54 2: (Shelly_HttpResponse:no-hash) Device shelly_dimmer has Error 'shelly_dimmer: error in command: id or component not found'
Internals:
   .AttrList  model:generic,shellyplusdimmer maxAge ShellyName interval timeout shellyuser showunits:none,original webhook:WEB,WEBphone,WEBtablet verbose:0,1,2,3,4,5 event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading
   DEF        192.168.4.129
   FUUID      xxxx-xxxx-xxxx-xxxx-xxxx
   INTERVAL   60
   NAME       shelly_dimmer
   NR         147
   NTFY_ORDER 50-shelly_dimmer
   STATE      Error
   TYPE       Shelly
   eventCount 14
   units      0
   .attraggr:
   .attrminint:
   READINGS:
     2024-08-16 22:59:22   cloud           disabled
     2024-08-18 14:17:54   error           error in command: id or component not found
     2024-08-16 23:03:23   firmware        v1.4.0(update possible to v1.4.2-beta1 beta)
     2024-08-16 22:59:22   input_0         unknown
     2024-08-16 22:59:22   input_0_mode    button straight
     2024-08-16 22:59:22   input_1         unknown
     2024-08-16 22:59:22   input_1_mode    button straight
     2024-08-18 13:52:50   network         <html>connected to <a href="http://192.168.4.129">192.168.4.129</a> (Wifi)</html>
     2024-08-18 13:38:50   network_disconnects 2
     2024-08-18 14:08:50   network_rssi    -65
     2024-08-16 22:59:22   network_ssid    WiFi2
     2024-08-16 22:59:22   network_threshold -80
     2024-08-18 14:11:54   state           Error
     2024-08-16 22:59:08   webhook_cnt     0
     2024-08-16 22:59:08   webhook_ver     0
   helper:
     Sets       config interval password reboot:noArg update:noArg name reset:noArg clear:disconnects,error,responsetimes actions
     settings_time 0
Attributes:
   interval   60
   model      shellyplusdimmer
Habe ich noch etwas in der Konfiguration übersehen?
Gruß
optimizer

Starkstrombastler

Zitat von: Starkstrombastler am 17 August 2024, 11:43:06Auffällig ist aber, dass innerhalb einer Minute immer zwei Off-Einträge kommen, ohne dass zwischendurch eingeschaltet wurde. Dass muss aber kein Fehler sein, trotzdem würde ein Blick in deine Config nicht schaden.
Um das näher zu analysieren wird es mit dem nächsten Update eine Hilfe geben. Bitte etwas Geduld.
An der von dir geposteten Config kannn ich erstmal nichts auffälliges finden.

Zitat von: Dracolein am 18 August 2024, 07:17:43PERL WARNING: Use of uninitialized value $sh_hookname in pattern match (m//) at ./FHEM/36_Shelly.pm line 5930.
Das sollte mit Version 6.00.1 nicht mehr auftreten. Stattdessen würde ein Logeintrag in der Art "expected hookname for hook-ID=...not given" erfolgen. Bitte beobachten.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

Starkstrombastler

Zitat von: optimizer am 18 August 2024, 14:38:04Das Attribut model=shellyplusdimmer habe ich manuell hinzugefügt.
Warum manuell?

Das Modul ermittelt das model automatisch. Wenn es dabei Probleme gibt (z.B. weil das Gerät eine neue Modell-ID hat) erscheinen Fehlermeldungen/Logeinträge. Diese müssen wir uns hier anschauen.

Das Attribut shellyplusdimmer ist jedenfalls falsch.

Ich schlage vor, das Device zu löschen und neu zu definieren, und zwar nur mit    define shelly_dimmer Shelly 192.168.4.129

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

optimizer

Zitat von: Starkstrombastler am 18 August 2024, 17:04:59Das Attribut shellyplusdimmer ist jedenfalls falsch.

Ich schlage vor, das Device zu löschen und neu zu definieren, und zwar nur mit    define shelly_dimmer Shelly 192.168.4.129
Es sieht so aus, als ob das Device lange vorher eingeschlatet werden muss, damit der define das Modell richtig erkennt. Erst nach dem zweiten Lösch- und Neu-Define-Vorgang wurde alles erkannt.
Danke

cwagner

Zuallererst: Fetten Dank für die Weiterentwicklung des Moduls mit der Version 6.0! Das war für mich der Anlass zum Wechsel von MQTT zu diesem Modul.

Kann es aber sein, dass in dem Modul das Reading BLE noch falsche Werte liefert? Laut Shelly-App ist bei meinen Geräte Bluetooth ausgeschaltet, MQTT meldete das auch, ich erhalte aber durchgängig "enabled".

Beispiel beim Shelly 1pm mini Gen3:

{
    "id": "shelly1pmminig3-XXXXXXXXXXXXXX",
    "mac": "XXXXXXXXXXXXXXXX",
    "slot": 0,
    "model": "S3SW-001P8EU",
    "gen": 3,
    "fw_id": "20240819-074313/1.4.2-gc2639da",
    "ver": "1.4.2",
    "app": "Mini1PMG3",
    "auth_en": false,
    "auth_domain": null
}

{
    "ble": {},
    "bthome": {
        "errors": [
            "bluetooth_disabled"
        ]
    },

Auch beim einem Shelly Plus 1/Gen2 ist das so.

Mache ich etwas falsch oder interpretiere ich hier etwas unrichtig? Kann ich gegebenenfalls weitere Infos beisteuern?

Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

Starkstrombastler

Zitat von: cwagner am 23 August 2024, 18:33:14Kann es aber sein, dass in dem Modul das Reading BLE noch falsche Werte liefert?
Danke für den Hinweis, deine Vermutung ist zutreffend. Der Bug ist im morgigen Update behoben.

Und das ist besonders schön zu hören:
Zitat von: cwagner am 23 August 2024, 18:33:14Das war für mich der Anlass zum Wechsel von MQTT zu diesem Modul.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

carlos

Ich habe schon immer das shelly module benutzt und dass die range extender funktion jetzt unterstützt wird, finde ich besonders cool.
Danke dafur.
FHEM svn auf Intel NUC mit proxmox, 3 Raspberry Pi, signalduino, nanoCUL,  toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

cwagner

Guten Morgen, Bluetooth wird mit der heute verteilten Version jetzt korrekt angezeigt. Vielen Dank für die schnelle Korrektur.


Christian
PI 2B+/5 Raspbian 12, Perl 5.36.0, FHEM 6.3: 295 Module in ConfigDB: Steuerung Heizkessel, FBH, Solarthermie, kontr. Lüftung mit WRG. Smarthome u.a. HMCUL, 1-Wire (FT232RL ; DS2480B), EnOcean (TCM EPS3), MQTT2. DOIF, PID20, Threshold, OWX; Micropelt IRTV, Volkszähler, SolarForecast; MariaDB

curt

Das ist jetzt blöd: Ich will wegfahren und die Rollladensteuerung funktioniert nach Update von FHEM nicht mehr.

shellyplus2pm, v1.3.3(update needed to v1.4.2)

Ein "set [device] closed" bewegt den Rolladen nur ein Stück.

Was ist zu tun? Was kann ich liefern?
RPI 4 - Jeelink HomeMatic Z-Wave