Entwicklungs-Thread Modul 36_Shelly.pm

Begonnen von Starkstrombastler, 24 Februar 2024, 12:15:05

Vorheriges Thema - Nächstes Thema

Starkstrombastler

Zitat von: VB90 am 19 Oktober 2024, 14:01:39Wobei diese Serial anders ist als im Shelly. Bsp: Shelly: 40:120:161:241:95:32:1:156 <-> Reading in FHEM: 28:78:A1:F1:5F:20:01:9C
Die beiden Serials sind identisch, sie unterscheiden sich lediglich in der Zahlenbasis. Im Shelly dezimal, in Fhem hexadezimal. Letzteres ist in der One-Wire-Welt der Standard.

Zitat von: VB90 am 19 Oktober 2024, 14:01:39Wenn man die "Klarnamen" des Sensors als Reading mit übergeben könnte, wäre mir egal, auf welchem internen Platz der erkannt wurde.
Schaue ich mir an, erwarte da eigentlich kein Problem.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

caldir65

Moin,
Zitat von: Starkstrombastler am 13 Oktober 2024, 21:59:32Sofern sich dein FHEM-Server und der Shelly im gleichen (abgesichertem) Netzwerk befinden, ist die einfachste Lösung die Verwendung einer eigenen FHEMweb Instanz und Absicherung mit einem allowed-Device. Im Detail:
  • Definition der FHEMweb-Instanz z.B.:  defmod HOOK FHEMWEB 8084 global
  • Definition eines Allowed-Devices und Setzen der Attribute validFor allowedDevices allowedCommands, siehe Commandref
  • Sicherstellen, dass der Name der Action auf dem Shelly mit einem _ (Unterstrich) beginnt. Dies ist Voraussetzung für die automatische Änderung im nächsten Schritt
  • Ändern des Attributes webhook im Shelly-Device auf den neuen Namen. FHEM wird die vom Modul angelegten Actions auf dem Shelly auf den neuen Webhook anpassen und auch den CSFR-Token in der URL ergänzen
  • Option: Kontrolle der geänderten Actions mit get <name> actions

Ich hoffe, ich habe da nichts vergessen...

Ich habe das jetzt mal soweit versucht, umzusetzen. Im Shelly-Device kann ich mit get action die angelegten Actions des Shelly sehen - aber eine (zeitnahe) Reaktion in den Readings bleibt aus ...

Hier einmal das aktuelle Device:Internals:
   DEF        192.168.1.147
   FUUID      66f940a8-f33f-378b-5581-04cab5dac9256017
   FVERSION   36_Shelly.pm:v6.1.0-s29066/2024-08-14
   INTERVAL   60
   NAME       ShellyPlus1_Schlafzimmer
   NR         1715
   NTFY_ORDER 50-ShellyPlus1_Schlafzimmer
   SHELLYID   shellyplus1-441793cf9254
   STATE      off
   StatusCall 0
   TYPE       Shelly
   eventCount 33
   units      0
   READINGS:
     2024-09-29 13:57:30   addon           sensor
     2024-10-12 19:39:48   ap              disabled open
     2024-09-29 13:57:30   ap_clients      disabled
     2024-10-12 19:39:48   ap_name         ShellyPlus1-441793CF9254
     2024-10-12 19:39:48   auto_off        disabled
     2024-10-12 19:39:48   auto_on         disabled
     2024-09-29 14:34:36   ble             disabled
     2024-10-12 19:39:48   ble_obs         -
     2024-10-12 19:39:48   ble_rpc         -
     2024-09-29 13:57:30   cloud           disabled
     2024-10-20 16:19:55   error           192.168.1.147: No route to host (113)
     2024-09-29 13:58:29   firmware        v1.4.2(check internet for firmware v1.3.3)
     2024-10-20 16:34:22   firmware_current v1.4.4
     2024-10-20 16:31:24   firmware_updIcon OK
     2024-10-20 16:31:24   firmware_updText -/-
     2024-09-29 13:57:29   input           off
     2024-09-29 13:57:30   input_0_function follow
     2024-10-20 16:29:55   input_1         on
     2024-10-12 19:39:47   input_1_id      100
     2024-10-20 16:20:55   input_1_mode    switch straight enabled
     2024-10-12 19:39:48   input_function  follow
     2024-10-20 16:20:55   input_mode      switch straight enabled
     2024-10-20 16:36:22   inttemp         53.8
     2024-09-29 13:57:28   mac             44:17:93:CF:92:54
     2024-09-29 13:57:28   model_ID        SNSW-001X16EU
     2024-09-29 13:57:28   model_family    Plus/Gen2
     2024-09-29 13:57:28   model_function  switch
     2024-09-29 13:57:28   model_name      Shelly Plus 1
     2024-09-29 13:57:30   name            ShellyPlus1_Schlafzimmer
     2024-10-20 16:20:55   network         <html>connected to <a href="http://192.168.1.147">192.168.1.147</a> (Wifi)</html>
     2024-10-20 16:20:55   network_connection online
     2024-10-18 16:17:16   network_disconnects 4
     2024-09-29 13:57:29   network_ip-address 192.168.1.147
     2024-10-20 16:35:22   network_rssi    -64
     2024-09-29 13:57:29   network_ssid    Caldir_MacAran_IoT
     2024-09-29 13:57:30   network_wifi_roaming -80
     2024-09-29 13:57:29   relay           off
     2024-09-29 13:57:29   source          init
     2024-10-20 16:20:55   state           off
     2024-10-20 16:36:22   uptime          301
     2024-10-11 20:20:34   webhook_cnt     2
     2024-10-20 16:28:55   webhook_ver     28
   helper:
     Sets       config:ap_disable,ap_enable interval password reboot:noArg update:noArg name reset:noArg clear:disconnects,error,responsetimes actions on off toggle on-for-timer off-for-timer input:momentary,toggle,edge,detached,activation
     range_extender disabled
     settings_time 1729434862.08687
     timer      0
   hmccu:
Attributes:
   DbLogExclude .*
   event-on-change-reading .*
   group      Shelly
   model      shellyplus1
   room       Arbeitszimmer,Schlafzimmer
   verbose    3
   webhook    HOOK
und das neu angelegte Device HOOK:define allowedHOOK allowed HOOK
attr allowedHOOK DbLogExclude .*
attr allowedHOOK allowedCommands set,get
attr allowedHOOK allowedDevices HOOK
attr allowedHOOK room System->System
attr allowedHOOK validFor HOOK
#   CFGFN     
#   DEF        HOOK
#   FUUID      671510d2-f33f-378b-2ab7-b6d57c83bb32d6f1
#   NAME       allowedHOOK
#   NR         1724
#   STATE      validFor:HOOK
#   TYPE       allowed
#   eventCount 1
#   READINGS:
#     2024-10-20 16:18:04   state           validFor:HOOK
#   devices:
#     HOOK       1
#   hmccu:
#
setstate allowedHOOK validFor:HOOK
setstate allowedHOOK 2024-10-20 16:18:04 state validFor:HOOK


Augenblicklich läuft hier 36_Shelly.pm        29066 2024-08-14 22:10:47Z Starkstrombastler
Gruß
Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 128GB SSD, Lubuntu 24.04.01LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.

NewRasPi

Hallo Starkstrombastler, hallo alle anderen hier,
im Post 49 war schon mal das für mich gleiche Problem mit dem shellypro3em beschrieben.
Ich habe schon sehr viel verschiedene Einstellungen versucht, komme aber mit meinem sehr begrenzten FHEM Wissen leider nicht ans Ziel: Die Stromverbrauchswerte (Watt aus dem Reading "Active_Power_S") aktuell zu halten.
Hier ist mein Export für FHEM Forum:

define WaermepumpeZaehler Shelly 10.xx.yyy.xx
attr WaermepumpeZaehler DbLogInclude STATE,
attr WaermepumpeZaehler event-on-change-reading .*
attr WaermepumpeZaehler fp_Lageplan 482,34,1,WaermepumpeStrom,
attr WaermepumpeZaehler model shellypro3em
attr WaermepumpeZaehler room 2.1_Heizraum
attr WaermepumpeZaehler stateFormat Active_Power_S W
#   DEF        10.xx.yyy.yy
#   FUUID      6714d7d6-f33f-71b0-ca96-06c81531cf23c7e7
#   INTERVAL   60
#   MAC        <XYZ>C
#   NAME       WaermepumpeZaehler
#   NR         346
#   NTFY_ORDER 50-WaermepumpeZaehler
#   SHELLYID   shellypro3em-3cxyzzzzzzzzz
#   STATE       23.7 W
#   TYPE       Shelly
#   eventCount 4027
#   units      0
#   Helper:
#     DBLOG:
#       state:
#         logdb:
#           TIME       1729497538.98702
#           VALUE      Error: Network
#   OLDREADINGS:
#   READINGS:
#     2024-10-20 13:15:44   Active_Power_A    0.0
#     2024-10-21 09:58:06   Active_Power_B   22.0
#     2024-10-21 09:58:06   Active_Power_C    1.7
#     2024-10-21 09:58:06   Active_Power_S   23.7
#     2024-10-21 09:58:00   Active_Power_calculated 24.0 ( 1440 Ws =  0.40 Wh in 59 s )
#     2024-10-21 09:58:01   Active_Power_integrated 23.8  (1 values)
#     2024-10-20 13:16:01   Active_Power_integratedNeg  0.0  (0 Ws =  0.00 Wh)
#     2024-10-21 09:58:01   Active_Power_integratedPos 23.8  (1428 Ws =  0.40 Wh)
#     2024-10-21 09:58:06   Apparent_Power_A  6.6
#     2024-10-21 09:58:06   Apparent_Power_B 189.6
#     2024-10-21 09:58:06   Apparent_Power_C  7.5
#     2024-10-21 09:58:06   Apparent_Power_S 203.7
#     2024-10-21 09:58:06   Current_A       0.028
#     2024-10-21 09:58:06   Current_B       0.806
#     2024-10-21 09:57:06   Current_C       0.032
#     2024-10-21 09:58:06   Current_S       0.867
#     2024-10-21 09:56:06   Frequency_A     50
#     2024-10-21 09:56:06   Frequency_B     50
#     2024-10-21 09:56:06   Frequency_C     50
#     2024-10-21 09:58:06   PowerReactive_A  6.6
#     2024-10-21 09:58:06   PowerReactive_B 188.3
#     2024-10-21 09:58:06   PowerReactive_C  7.3
#     2024-10-21 09:58:06   PowerReactive_S 202.2
#     2024-10-20 12:13:58   Power_Factor_A  0.00 (inductive)
#     2024-10-21 09:54:06   Power_Factor_B  0.12 (inductive)
#     2024-10-21 09:58:06   Power_Factor_C  0.22 (inductive)
#     2024-10-21 09:57:00   Purchased_Energy_A 496.87
#     2024-10-21 09:58:00   Purchased_Energy_B 40155.63
#     2024-10-21 09:58:00   Purchased_Energy_C 9463.42
#     2024-10-21 09:58:00   Purchased_Energy_S 50115.92
#     2024-10-21 09:58:01   Purchased_Energy_T 45874158432.6544
#     2024-10-21 09:32:00   Returned_Energy_A 10.13
#     2024-10-20 12:14:00   Returned_Energy_B 0
#     2024-10-20 12:14:00   Returned_Energy_C 0
#     2024-10-21 09:32:00   Returned_Energy_S 10.13
#     2024-10-20 13:16:01   Returned_Energy_T 9580000
#     2024-10-21 09:58:00   Total_Energy_S  50105.79
#     2024-10-21 09:58:01   Total_Energy_T  45864578432.6544
#     2024-10-21 09:58:06   Voltage_A       233.7
#     2024-10-21 09:58:06   Voltage_B       234.7
#     2024-10-21 09:58:06   Voltage_C       234.2
#     2024-10-20 12:13:44   ap              ShellyPro3EM xyzzzzzzz enabled password
#     2024-10-21 10:13:57   ap_clients      0
#     2024-10-20 12:13:44   ble             enabled
#     2024-10-20 12:13:42   cloud           enabled(connected)
#     2024-10-21 10:01:59   error           connect to http://10.xx.yyy.xx:80 timed out
#     2024-10-20 12:13:42   error_EM        ok
#     2024-10-20 12:14:43   firmware        v1.4.4(check internet for firmware v1.3.3)
#     2024-10-21 10:13:56   inttemp         53.9
#     2024-10-21 09:31:44   mac             3C:xyz
#     2024-10-21 09:31:44   model_ID        SPEM-003CEBEU
#     2024-10-21 09:31:44   model_family    Pro/Gen2
#     2024-10-21 09:31:44   model_function  energy meter
#     2024-10-21 09:31:44   model_name      Shelly Pro 3EM
#     2024-10-21 10:02:54   network         <html>connected to <a href="http://10.xx.yyy.xx">10.xx.yyy.xx</a> (LAN)</html>
#     2024-10-21 09:58:58   network_disconnects 6
#     2024-10-20 12:13:42   network_ip-address_LAN 10.xx.yyy.xx
#     2024-10-21 10:12:56   network_ip-address_Wifi 10.xx.yyy.xy
#     2024-10-21 10:13:56   network_rssi    -80
#     2024-10-21 10:12:56   network_ssid    Fritz7490_nomap
#     2024-10-20 12:13:44   network_wifi_roaming -80
#     2024-10-21 09:58:58   state           Error: Network
#     2024-10-21 10:13:56   uptime          159509
#     2024-10-20 12:13:47   webhook_cnt     0
#     2024-10-20 12:13:42   webhook_ver     0
#   helper:
#     Energymeter_P 45874158432.6544
#     Energymeter_R 9580000
#     Sets       config:ap_disable,ap_enable interval password reboot:noArg update:noArg name reset:noArg clear:disconnects,error,energy,responsetimes actions
#     Total_Energy_S 50105.79
#     a_Active_Power 0
#     b_Active_Power 22
#     c_Active_Power 1.7
#     power      23.7
#     powerCnt   1
#     powerNeg   0
#     powerPos   23.7
#     settings_time 1729498437.0476
#     timestamp_last 1729497481.03227
#
setstate WaermepumpeZaehler  23.7 W
setstate WaermepumpeZaehler 2024-10-20 13:15:44 Active_Power_A   0.0
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Active_Power_B  22.0
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Active_Power_C   1.7
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Active_Power_S  23.7
setstate WaermepumpeZaehler 2024-10-21 09:58:00 Active_Power_calculated 24.0 ( 1440 Ws =  0.40 Wh in 59 s )
setstate WaermepumpeZaehler 2024-10-21 09:58:01 Active_Power_integrated 23.8  (1 values)
setstate WaermepumpeZaehler 2024-10-20 13:16:01 Active_Power_integratedNeg  0.0  (0 Ws =  0.00 Wh)
setstate WaermepumpeZaehler 2024-10-21 09:58:01 Active_Power_integratedPos 23.8  (1428 Ws =  0.40 Wh)
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Apparent_Power_A  6.6
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Apparent_Power_B 189.6
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Apparent_Power_C  7.5
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Apparent_Power_S 203.7
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Current_A 0.028
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Current_B 0.806
setstate WaermepumpeZaehler 2024-10-21 09:57:06 Current_C 0.032
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Current_S 0.867
setstate WaermepumpeZaehler 2024-10-21 09:56:06 Frequency_A 50
setstate WaermepumpeZaehler 2024-10-21 09:56:06 Frequency_B 50
setstate WaermepumpeZaehler 2024-10-21 09:56:06 Frequency_C 50
setstate WaermepumpeZaehler 2024-10-21 09:58:06 PowerReactive_A  6.6
setstate WaermepumpeZaehler 2024-10-21 09:58:06 PowerReactive_B 188.3
setstate WaermepumpeZaehler 2024-10-21 09:58:06 PowerReactive_C  7.3
setstate WaermepumpeZaehler 2024-10-21 09:58:06 PowerReactive_S 202.2
setstate WaermepumpeZaehler 2024-10-20 12:13:58 Power_Factor_A 0.00 (inductive)
setstate WaermepumpeZaehler 2024-10-21 09:54:06 Power_Factor_B 0.12 (inductive)
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Power_Factor_C 0.22 (inductive)
setstate WaermepumpeZaehler 2024-10-21 09:57:00 Purchased_Energy_A 496.87
setstate WaermepumpeZaehler 2024-10-21 09:58:00 Purchased_Energy_B 40155.63
setstate WaermepumpeZaehler 2024-10-21 09:58:00 Purchased_Energy_C 9463.42
setstate WaermepumpeZaehler 2024-10-21 09:58:00 Purchased_Energy_S 50115.92
setstate WaermepumpeZaehler 2024-10-21 09:58:01 Purchased_Energy_T 45874158432.6544
setstate WaermepumpeZaehler 2024-10-21 09:32:00 Returned_Energy_A 10.13
setstate WaermepumpeZaehler 2024-10-20 12:14:00 Returned_Energy_B 0
setstate WaermepumpeZaehler 2024-10-20 12:14:00 Returned_Energy_C 0
setstate WaermepumpeZaehler 2024-10-21 09:32:00 Returned_Energy_S 10.13
setstate WaermepumpeZaehler 2024-10-20 13:16:01 Returned_Energy_T 9580000
setstate WaermepumpeZaehler 2024-10-21 09:58:00 Total_Energy_S 50105.79
setstate WaermepumpeZaehler 2024-10-21 09:58:01 Total_Energy_T 45864578432.6544
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Voltage_A 233.7
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Voltage_B 234.7
setstate WaermepumpeZaehler 2024-10-21 09:58:06 Voltage_C 234.2
setstate WaermepumpeZaehler 2024-10-20 12:13:44 ap ShellyPro3EM-3Cxxxxxzzzzz enabled password
setstate WaermepumpeZaehler 2024-10-21 10:13:57 ap_clients 0
setstate WaermepumpeZaehler 2024-10-20 12:13:44 ble enabled
setstate WaermepumpeZaehler 2024-10-20 12:13:42 cloud enabled(connected)
setstate WaermepumpeZaehler 2024-10-21 10:01:59 error connect to http://10.xx.yyy.xx:80 timed out
setstate WaermepumpeZaehler 2024-10-20 12:13:42 error_EM ok
setstate WaermepumpeZaehler 2024-10-20 12:14:43 firmware v1.4.4(check internet for firmware v1.3.3)
setstate WaermepumpeZaehler 2024-10-21 10:13:56 inttemp 53.9
setstate WaermepumpeZaehler 2024-10-21 09:31:44 mac 3C:xxxxxxxzzzzzzzz
setstate WaermepumpeZaehler 2024-10-21 09:31:44 model_ID SPEM-003CEBEU
setstate WaermepumpeZaehler 2024-10-21 09:31:44 model_family Pro/Gen2
setstate WaermepumpeZaehler 2024-10-21 09:31:44 model_function energy meter
setstate WaermepumpeZaehler 2024-10-21 09:31:44 model_name Shelly Pro 3EM
setstate WaermepumpeZaehler 2024-10-21 10:02:54 network <html>connected to <a href="http://10.xx.yyy.xx">10.xx.yyy.xx</a> (LAN)</html>
setstate WaermepumpeZaehler 2024-10-21 09:58:58 network_disconnects 6
setstate WaermepumpeZaehler 2024-10-20 12:13:42 network_ip-address_LAN 10.xx.yyy.xx
setstate WaermepumpeZaehler 2024-10-21 10:12:56 network_ip-address_Wifi 10.xx.yyy.xy
setstate WaermepumpeZaehler 2024-10-21 10:13:56 network_rssi -80
setstate WaermepumpeZaehler 2024-10-21 10:12:56 network_ssid Fritz7490_nomap
setstate WaermepumpeZaehler 2024-10-20 12:13:44 network_wifi_roaming -80
setstate WaermepumpeZaehler 2024-10-21 09:58:58 state Error: Network
setstate WaermepumpeZaehler 2024-10-21 10:13:56 uptime 159509
setstate WaermepumpeZaehler 2024-10-20 12:13:47 webhook_cnt 0
setstate WaermepumpeZaehler 2024-10-20 12:13:42 webhook_ver 0

Gibt es dafür schon eine Abhilfe, oder seh ich nur den Wald vor lauter Bäumen nicht?
Schöne Grüße und vielen Dank für jede Hilfe.
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

NewRasPi

Hallo nochmal,
nach meiner Beobachtung verliert der shellypro3em seine WLan Verbindung und setzt einen
state Error: Network
Da war auch wohl ein Fehler mit der WLan- IP-Adresse. (Die Fritzbox merkt sich wohl alte mal verwendete IP-Adressen und blockiert diese, obwohl da schon lang nichts mehr dran ist)
Aber auch jetz mit einer neuen jungfäulichen festen WLan IP-Adresse, verliert der Shelly seine Funkverbindung. Eigentlich hat dieser Shelly ja auch ein LAN-Kabel und eine feste IP.
"Reicht" ihm das nicht aus?
Wenn ich das WLan aufwecke und kurz das Attribut "Intervall" verändere, lebt auch die Aktuallisierung wieder auf.
Weiß dafür jemand eine Lösung? 
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

Starkstrombastler

Zitat von: NewRasPi am 21 Oktober 2024, 10:28:30m Post 49 war schon mal das für mich gleiche Problem mit dem shellypro3em beschrieben.
Dann hast du ja auch die Problembehandlung in den nachfolgenden Postings gelesen, im Post #56 wurde eine Lösung angekündigt, die dann am 12.10.24 als Testversion 6.01 Beta1 im Post #63 zur Verfügung gestellt wurde. Hast du diese Version installiert, was liefert get WaermepumpeZaehler version ?

Im Übrigen fällt mir auf, dass du die Anzeige der Einheiten nicht nutzt, was insbesondere bei den Energiezählern eine deutliche Erleichterung ist:
attr WaermepumpeZaehler showunits normal2

Speziell beim ShellyPro3EM lässt sich das Auslesen der Leistungswerte mit einem eigenen Intervall festlegen, z.B. 10 Sekunden:
attr WaermepumpeZaehler interval_power 10

Dann kann das "normale" Polling-Intervall hochgesetzt werden:
attr WaermepumpeZaehler interval 600
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

NewRasPi

Hallo Starkstrombastler, danke für Deine Antwort.
 was liefert get WaermepumpeZaehler version ?
[/quote]
 was liefert get WaermepumpeZaehler version ?

WaermepumpeZaehler.version => 6.00.5 11.09.2024

Ich dachte ich hätte auch gelesen, das die schon im normalen Update integriert ist.
Ich versuch jetzt natürlich sofort die geänderte Version einzurichten.
Nochmal vielen Dank. Ich werde berichten.
P.S. Vor den Versions Update bei FHEM und im Shelly ging die Aktuallisierung schon mal.
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

Starkstrombastler

Zitat von: caldir65 am 20 Oktober 2024, 16:41:27Ich habe das jetzt mal soweit versucht, umzusetzen. Im Shelly-Device kann ich mit get action die angelegten Actions des Shelly sehen - aber eine (zeitnahe) Reaktion in den Readings bleibt aus ...
Wir haben ein Orchester, und da spielen u.a.:
  • dein ShellyPlus1, auf dem eine oder mehrere Actions mit URLs zum Webhook auf deinem Server eingetragen sind
  • das FHEM-Device welches den Shelly abbildet: ShellyPlus1_Schlafzimmer
  • eine FHEM-Web Instanz, mit der du üblicherweise Fhem bedienst
  • eine FHEM-Web Instanz, die Meldungen vom Shelly (Actions) als Webhook entgegennehmen soll:  HOOK
  • ein allowed Device, welches hereinkommende Meldungen auf Zulässigkeit prüft: allowedHOOK

Aber wie es aussieht, ist da einiges durcheinander:
als allowedDevice musst du dein Shelly-Device eintragen
was ist mit dem Webhook, zum FHEMWEB Device 'HOOK' hast du kein List gepostet?
wie sehen die Action URLs aus?

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

Starkstrombastler

Zitat von: NewRasPi am 21 Oktober 2024, 21:43:40P.S. Vor den Versions Update bei FHEM und im Shelly ging die Aktuallisierung schon mal.
Wir haben mit den Shellies ein wirklich sehr aktiv lebendes Ökosystem. Mehrere Geräte-Generation gleichzeitig am Markt, es kommen immer wieder neue Geräte dazu, Firmware-Updates und neue Funktionen.....

Um da mitzuhalten und den Code irgendwie effizient zu halten, geht es nicht ohne Änderungen .... und damit eben auch Fehler
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

NewRasPi

#83
Hallo Starkstrombastler
es sollte bitte nicht als Kritik verstanden werden, dass es vor dem Update schon mal gegangen ist.
Das sollte nur als Info mit erscheinen.
Nachdem ich mit den richtigen Rechten im Linux gekämpft habe, Eigentümer fhem und Gruppe dialout, hatte ich
dann in FHEM (natürlich nach shutdown restart) die Meldung "cannot load modul shelly".
Nach einem normalen FHEM Update läuft es erst mal wieder. Natürlich ist jetzt wieder die ältere Version in meinem System.
Ich hoffe das vielleicht das "interval_power 10" eine bessere Aktualisierung der Werte bringt.

Ich war auf dem falschen Raspberry - Sorry.
Ich beobachte und berichte wenn ich was neues weiß.

Nun hätte ich noch eine Frage, nachdem es mit kurzen Error dann doch gleich wieder geht.
Kann man den "state" auch den tatsächlichen Wert aus "stateFormat" oder gleich das was in der App auch als gesamt Verbrauch "Active_Power_S" angezeigt wird zuordnen?
In der DbLog Datenbank kommt, egal was ich für Werte in "DbLogInclude" auswähle, einfach nur der "state" an. "OK" ist bei den Plot aber nicht so interessant.
Vielen Dank für Deine super Arbeit.
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

Starkstrombastler

Zitat von: NewRasPi am 22 Oktober 2024, 00:07:15In der DbLog Datenbank kommt, egal was ich für Werte in "DbLogInclude" auswähle, einfach nur der "state" an.
Hast du Attribute event-on-change/update gesetzt? Was zeigt der Event-Monitor, wenn du alle Readings des Devices zulässt?
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

JoWiemann

Hallo,

in Ergänzung zu meinem Post: https://forum.fhem.de/index.php?msg=1322626

Ich habe in einem Shelly Device das Attribut interval auf 0 gesetzt. Bei einem Neustart von Fhem wird hierdurch wohl das Internal INTERVALL nicht initialisiert, was zu dem im Post gemeldeten Fehler führt.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

NewRasPi

Zitat von: Starkstrombastler am 23 Oktober 2024, 19:03:41
Zitat von: NewRasPi am 22 Oktober 2024, 00:07:15In der DbLog Datenbank kommt, egal was ich für Werte in "DbLogInclude" auswähle, einfach nur der "state" an.
Hast du Attribute event-on-change/update gesetzt? Was zeigt der Event-Monitor, wenn du alle Readings des Devices zulässt?
Hallo Starkstrombastler
Danke für Deine Hilfe.
Der Event monitor ist voll mit Anzeigen des Shelly "WaermepumpenZaehler.
Das attr WaermepumpeZaehler event-on-change-reading .* habe ich auch gesetzt.
Hier ist das list:
Internals:
   DEF        10.yy.xxx.yy
   FUUID      6714d7d6-f33f-71b0-caxxxxxxxxxxxxxxxxxxxxxxxxx
   INTERVAL   60
   NAME       WaermepumpeZaehler
   NR         346
   NTFY_ORDER 50-WaermepumpeZaehler
   SHELLYID   shellypro3em-3cxxxxxxxxxx
   STATE       23.9 W
   StatusCall 0
   TYPE       Shelly
   eventCount 12089
   units      1
   OLDREADINGS:
   READINGS:
     2024-10-23 22:11:26   Active_Power_A    0.0 W
     2024-10-24 10:19:02   Active_Power_B   22.6 W
     2024-10-24 10:19:02   Active_Power_C    1.3 W
     2024-10-24 10:19:02   Active_Power_S   23.9 W
     2024-10-24 10:19:00   Active_Power_calculated 22.7 W ( 1403 Ws =  0.39 Wh in 61 s )
     2024-10-24 10:19:02   Active_Power_integrated 23.3  W (3 values)
     2024-10-22 15:54:01   Active_Power_integratedNeg  0.0  W (0 Ws =  0.00 Wh)
     2024-10-24 10:19:02   Active_Power_integratedPos 23.3  W (1400 Ws =  0.39 Wh)
     2024-10-24 10:18:31   Apparent_Power_A  6.8 VA
     2024-10-24 10:19:02   Apparent_Power_B 189.1 VA
     2024-10-24 10:19:02   Apparent_Power_C  7.4 VA
     2024-10-24 10:19:02   Apparent_Power_S 203.4 VA
     2024-10-24 10:13:29   Current_A       0.029 A
     2024-10-24 10:17:31   Current_B       0.806 A
     2024-10-24 10:18:31   Current_C       0.032 A
     2024-10-24 10:19:02   Current_S       0.866 A
     2024-10-24 10:08:24   Frequency_A     50 Hz
     2024-10-24 10:08:24   Frequency_B     50 Hz
     2024-10-24 10:08:24   Frequency_C     50 Hz
     2024-10-24 10:18:31   PowerReactive_A  6.8 var
     2024-10-24 10:19:02   PowerReactive_B 187.7 var
     2024-10-24 10:18:31   PowerReactive_C  7.3 var
     2024-10-24 10:19:02   PowerReactive_S 201.8 var
     2024-10-23 22:11:26   Power_Factor_A  0.00 (inductive)
     2024-10-24 10:19:02   Power_Factor_B  0.12 (inductive)
     2024-10-24 10:18:31   Power_Factor_C  0.22 (inductive)
     2024-10-24 10:19:00   Purchased_Energy_A 0.50769 kWh
     2024-10-24 10:19:00   Purchased_Energy_B 65.19433 kWh
     2024-10-24 10:19:00   Purchased_Energy_C 9.59052 kWh
     2024-10-24 10:19:00   Purchased_Energy_S 75.29254 kWh
     2024-10-24 10:19:02   Purchased_Energy_T 53615.81584 kWh
     2024-10-24 10:06:00   Returned_Energy_A 0.01532 kWh
     2024-10-21 23:38:00   Returned_Energy_B 0.0 kWh
     2024-10-21 23:38:00   Returned_Energy_C 0.0 kWh
     2024-10-24 10:06:00   Returned_Energy_S 0.01532 kWh
     2024-10-21 23:38:01   Returned_Energy_T 11.15000 kWh
     2024-10-24 10:19:00   Total_Energy_S  75.27722 kWh
     2024-10-24 10:19:02   Total_Energy_T  53604.66584 kWh
     2024-10-24 10:19:02   Voltage_A       234.0 V
     2024-10-24 10:19:02   Voltage_B       234.4 V
     2024-10-24 10:18:31   Voltage_C       234.7 V
     2024-10-22 10:32:48   ap              enabled password
     2024-10-24 10:18:06   ap_clients      0
     2024-10-22 10:32:48   ap_name         ShellyPro3EM-3Cxxxxxx
     2024-10-21 23:36:40   ble             enabled
     2024-10-22 10:32:48   ble_obs         enabled
     2024-10-22 10:32:48   ble_rpc         enabled
     2024-10-21 23:36:40   cloud           enabled(connected)
     2024-10-24 10:03:06   error           connect to http://10.yy.xxx.yy:80 timed out
     2024-10-21 23:36:40   error_EM        ok
     2024-10-21 23:37:40   firmware        v1.4.4(check internet for firmware v1.3.3)
     2024-10-22 10:32:48   firmware_current v1.4.4
     2024-10-22 10:33:47   firmware_updIcon OK
     2024-10-22 10:33:47   firmware_updText -/-
     2024-10-24 10:16:06   inttemp         53.1 °C
     2024-10-22 13:03:38   mac             3C:E9:xxxxxxxx
     2024-10-22 13:03:38   model_ID        SPEM-003CEBEU
     2024-10-22 13:03:38   model_family    Pro/Gen2
     2024-10-22 13:03:38   model_function  energy meter
     2024-10-22 13:03:38   model_name      Shelly Pro 3EM
     2024-10-24 10:04:06   network         <html>connected to <a href="http://10.yy.xxx.yy">10.yy.xxx.yy</a> (LAN)</html>
     2024-10-24 10:04:06   network_connection online (LAN)
     2024-10-24 09:58:55   network_disconnects 83
     2024-10-22 12:13:02   network_ip-address 10.yy.xxx.yx
     2024-10-22 13:03:38   network_ip-address_LAN 10.yy.xxx.yy
     2024-10-24 10:13:06   network_ip-address_Wifi 10.yy.xxx.yx
     2024-10-24 10:13:06   network_rssi    -81 dBm (bad)
     2024-10-24 10:13:06   network_ssid    Fritz7490_nomap
     2024-10-21 23:37:40   network_wifi_roaming -80 dBm
     2024-10-24 10:03:21   state           OK
     2024-10-24 10:19:06   uptime          230759 sec, last reboot at 2024-10-21 18:13:07
     2024-10-21 23:36:40   webhook_cnt     0
     2024-10-21 23:36:40   webhook_ver     0
   helper:
     Energymeter_P 53615815.8441289
     Energymeter_R 11150
     Sets       config:ap_disable,ap_enable interval password reboot:noArg update:noArg name reset:noArg clear:disconnects,error,energy,responsetimes actions
     Total_Energy_S 75277.22
     a_Active_Power 0
     b_Active_Power 22.6
     c_Active_Power 1.3
     power      0
     powerCnt   0
     powerNeg   0
     powerPos   0
     range_extender enabled
     settings_time 1729757886.80936
     timer      0
     timestamp_last 1729757942.80126
Attributes:
   DbLogExclude .*
   DbLogInclude STATE,stateFormat
   event-on-change-reading .*
   fp_Lageplan 482,34,1,WaermepumpeStrom,
   interval_power 30
   model      shellypro3em
   room       2.1_Heizraum
   showunits  normal2
   stateFormat Active_Power_S

Im Event monitor:
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Apparent_Power_A:  6.9 VA
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Voltage_A: 234.2 V
2024-10-24 10:17:01 Shelly WaermepumpeZaehler PowerReactive_A:  6.9 var
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Current_B: 0.805 A
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Apparent_Power_B: 188.7 VA
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Active_Power_B:  21.5 W
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Voltage_B: 234.2 V
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Power_Factor_B: 0.11 (inductive)
2024-10-24 10:17:01 Shelly WaermepumpeZaehler PowerReactive_B: 187.5 var
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Current_C: 0.032 A
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Apparent_Power_C:  7.5 VA
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Active_Power_C:   1.8 W
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Voltage_C: 234.4 V
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Power_Factor_C: 0.22 (inductive)
2024-10-24 10:17:01 Shelly WaermepumpeZaehler PowerReactive_C:  7.3 var
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Apparent_Power_S: 203.1 VA
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Active_Power_S:  23.3 W
2024-10-24 10:17:01 Shelly WaermepumpeZaehler PowerReactive_S: 201.7 var
2024-10-24 10:17:00 Shelly WaermepumpeZaehler Purchased_Energy_A: 0.50768 kWh
2024-10-24 10:17:00 Shelly WaermepumpeZaehler Purchased_Energy_B: 65.19361 kWh
2024-10-24 10:17:00 Shelly WaermepumpeZaehler Purchased_Energy_C: 9.59047 kWh
2024-10-24 10:17:00 Shelly WaermepumpeZaehler Purchased_Energy_S: 75.29176 kWh
2024-10-24 10:17:00 Shelly WaermepumpeZaehler Total_Energy_S: 75.27644 kWh
2024-10-24 10:17:00 Shelly WaermepumpeZaehler Active_Power_calculated: 23.9 W ( 1439 Ws =  0.40 Wh in 60 s )
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Active_Power_integrated: 23.6  W (2 values)
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Active_Power_integratedPos: 23.6  W (1416 Ws =  0.39 Wh)
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Purchased_Energy_T: 53615.81508 kWh
2024-10-24 10:17:01 Shelly WaermepumpeZaehler Total_Energy_T: 53604.66508 kWh
2024-10-24 10:17:06 Shelly WaermepumpeZaehler uptime: 230639 sec, last reboot at 2024-10-21 18:13:07

Ich bin jetzt wie in einem anderen Thread gezeigt wurde über den Event monitor auf Create FileLog und habe damit
so wie vor der Umstellung auf DbLog eben wieder zusätzlich ein normales Filelog erstellt.
Damit dann auch die SVG.plot generieren lassen und kann somit meinen Shelly Stromverbrauch grafisch darstellen.
Vielen Dank und schöne Grüße
Raspberry Pi 2 Mod B + Raspberry Pi 3 + Raspberry Pi4; HM Lan Adapter; 8 Kanal Relaiskarte; ca. 15x 1wire Temperatur Sensor DS18B20; 10x HC-SR501 Bewegungsmelder; 9x HM Rauchmelder HM-Sec-SD; HM Funk Fenstersensoren; HM Strommess-Zwischenstecker;

tatu123

Hallo zusammen,

ich habe heute ein Update meiner Fhem installation gemacht.
Dabei wurde das Shelly-Modul neu gezogen. Im Anschluss startet jetzt mein fhem nicht mehr.
Folgender Fehler ist im log:
2024.10.25 09:57:20 1: PERL WARNING: Use of uninitialized value $timer in division (/) at ./FHEM/36_Shelly.pm line 5542.
Illegal division by zero at ./FHEM/36_Shelly.pm line 5542.

Nach dem Restor des "alten" Shelly-Moduls tut alles wieder.

Viele Grüße
Heiko

Starkstrombastler

Zitat von: tatu123 am 25 Oktober 2024, 12:28:52ich habe heute ein Update meiner Fhem installation gemacht.
Dabei wurde das Shelly-Modul neu gezogen. Im Anschluss startet jetzt mein fhem nicht mehr.
Das ist bedauerlich, dass dies trotz umfangreicher Tests passiert.
Ich versuch das nachzuvollziehen: Du hast einen ShellyPro3EM und dort das Attribut 'Periods' nicht gesetzt, richtig?

Sofortige Abhilfe (nur erforderlich bei Nutzung eines ShellyPro3EM):
  • Setzen des Attributes Periods auf einen (oder mehrere) der auswählbaren Werte
  • Speichern der Konfiguration (cfg)
  • Aktualisieren und Neustart

Ansonsten steht ab morgen (bzw. ab sofort im Repository) eine korrigierte Version zur Verfügung.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

tatu123

Zitat von: Starkstrombastler am 25 Oktober 2024, 15:28:04Das ist bedauerlich, dass dies trotz umfangreicher Tests passiert.

Keinen Stress alles gut. Vielen Dank für die Arbeit am Modul.

ZitatIch versuch das nachzuvollziehen: Du hast einen ShellyPro3EM und dort das Attribut 'Periods' nicht gesetzt, richtig?

Richtig

ZitatSofortige Abhilfe (nur erforderlich bei Nutzung eines ShellyPro3EM):
  • Setzen des Attributes Periods auf einen (oder mehrere) der auswählbaren Werte
  • Speichern der Konfiguration (cfg)
  • Aktualisieren und Neustart

Gemacht und Tut. Danke für die schnelle und erfolgreiche Hilfe.

Vielen Dank noch mal für deine Arbeit am Modul.

VG
Heiko