Ich habe folgendes Device:
Internals:
CFGFN ./FHEM/fhem-2-licht.cfg
DEF 192.168.1.143
DURATION 0
FUUID 5dd143d5-f33f-5ef7-6c34-39065869a297ce68
INTERVAL 60
NAME pc_salon
NR 1565
STATE 106.18 W - 11.639 KWh (seit dem 18.12.2019)
TCPIP 192.168.1.143
TYPE Shelly
OLDREADINGS:
READINGS:
2020-01-10 06:31:01 cloud enabled(connected)
2019-12-11 22:27:38 config energy= [channel 0]
2020-01-14 13:51:54 energy 11638.9
2019-12-17 21:52:12 firmware v1.5.7
2020-01-14 11:46:16 network <html>connected to <a href="http://192.168.1.143">192.168.1.143</a></html>
2020-01-14 13:00:48 overpower 0
2020-01-14 13:51:54 power 106.18
2020-01-14 13:00:48 relay on
2020-01-14 13:00:48 state on
2020-01-14 13:51:54 zaehler 0
Attributes:
alexaName PC
alexaRoom PC
alias PC Salon
cmdIcon on:message_socket_on2@yellow off:message_socket_off2@white statusRequest:rc_INFO toggle:toggle
genericDeviceType switch
group 5 Sonstige Steckdosen
icon message_socket
mode relay
model shelly1pm
room 3 Schalter für Steckdosen,9e Shelly
sortby 42
stateFormat {ReadingsVal('pc_salon','power','') . " W - " . sprintf('%.3f',ReadingsVal('pc_salon','energy','')/1000) . ' KWh (seit dem 18.12.2019)'}
userReadings zaehler:energy.* monotonic {ReadingsVal("pc_salon","energy.*",0)}
webCmd on:off:statusRequest
Das Feld zaehler soll sicherstellen, dass auch noch nach Stromausfall der Gesamtverbrauch erhalten bleibt. Aber das Feld wird zwar angelegt, bleibt aber bei einer Änderung in energy immer 0.
Mein Event Monitor gibt folgendes aus:
2020-01-14 13:05:50 Shelly pc_salon power: 105.89
2020-01-14 13:05:50 Shelly pc_salon energy: 11606.3
2020-01-14 13:05:50 Shelly pc_salon zaehler: 0
Was habe ich hier falsch gemacht?
Einen Fehler habe ich schon gefunden: Ziemlich blöd von mir.
{ReadingsVal("pc_salon","energy.*",0)}
muss natürlich sein
{ReadingsVal("pc_salon","energy",0)}
Jetzt wird das Feld zaehler aktualisiert aber mit Mondzahlen:
2020-01-14 14:25:56 Shelly pc_salon power: 31.51
2020-01-14 14:25:56 Shelly pc_salon energy: 11679.7
2020-01-14 14:25:56 Shelly pc_salon zaehler: 12.8000000000011
Manuell gibt {ReadingsVal("pc_salon","energy",0)}
[/code] den richtigen Wert 11679.7 aus