#gelöst# userReadings wird nicht erstellt

Begonnen von Helmi55, 30 November 2021, 13:54:00

Vorheriges Thema - Nächstes Thema

Helmi55

Hallo Leute
ich habe einen Shelly 1pm per MQTT2 in FHEM eingebunden.
Alles funktioniert NUR es lässt sich kein userReadings erstellen
relay_0_energy_kWh:relay_0_energy.* monotonic {ReadingsVal($NAME,"relay_0_energy",0)/60/1000.0}, Kosten_Euro:relay_0_energy_kWh.* { sprintf("%.2f",ReadingsVal($NAME,"relay_0_energy_kWh",0)*.2);;}

Es sollte "relay_0_energy_kWh" erstellt werden und dann noch "Kosten_Euro"

Selbiges funktioniert bei einem Shelly Plug s - aber das ist doch nicht vom Schalter abhängig......

Hier habe ich noch ein List angehängt

Internals:
   CID        shelly1pm_E09806A9DB91
   DEF        shelly1pm_E09806A9DB91
   DEVICETOPIC Brunnen_Heizung
   FUUID      61a61678-f33f-b033-336c-da6852207f8689b9
   IODev      myBroker
   LASTInputDev myBroker
   MSGCNT     326
   NAME       Brunnen_Heizung
   NR         560
   STATE      6.8
   TYPE       MQTT2_DEVICE
   myBroker_MSGCNT 326
   myBroker_TIME 2021-11-30 13:51:57
   READINGS:
     2021-11-30 13:51:57   0_hwID          28db600222200170
     2021-11-30 13:51:57   0_tC            6.8
     2021-11-30 13:51:57   0_tF            44.3
     2021-11-30 13:41:56   IODev           myBroker
     2021-11-30 13:42:02   actions_stats_skipped 0
     2021-11-30 13:42:02   cfg_changed_cnt 0
     2021-11-30 13:42:02   cloud_connected false
     2021-11-30 13:42:02   cloud_enabled   false
     2021-11-30 13:42:02   event           
     2021-11-30 13:42:02   event_cnt       0
     2021-11-30 13:42:02   ext_sensors_temperature_unit C
     2021-11-30 13:51:57   ext_temperature_0 6.8
     2021-11-30 13:42:02   ext_temperature_0_hwID 28db600222200170
     2021-11-30 13:42:02   ext_temperature_0_tC 8.94
     2021-11-30 13:42:02   ext_temperature_0_tF 48.09
     2021-11-30 13:51:57   ext_temperature_f_0 44.3
     2021-11-30 13:42:02   fs_free         149345
     2021-11-30 13:42:02   fs_size         233681
     2021-11-30 13:42:02   fw_ver          20211109-130756/v1.11.7-g682a0db
     2021-11-30 13:42:02   has_update      false
     2021-11-30 13:42:02   id              shelly1pm-E09806A9DB91
     2021-11-30 13:51:32   input_0         0
     2021-11-30 13:42:02   inputs_1_event 
     2021-11-30 13:42:02   inputs_1_event_cnt 0
     2021-11-30 13:42:02   inputs_1_input  0
     2021-11-30 13:42:02   ip              10.0.0.159
     2021-11-30 13:42:02   mac             E09806A9DB91
     2021-11-30 13:42:02   meters_1_counters_1 0.000
     2021-11-30 13:42:02   meters_1_counters_2 1643.561
     2021-11-30 13:42:02   meters_1_counters_3 1567.388
     2021-11-30 13:42:02   meters_1_is_valid true
     2021-11-30 13:42:02   meters_1_overpower 0.00
     2021-11-30 13:42:02   meters_1_power  0.00
     2021-11-30 13:42:02   meters_1_timestamp 1638279722
     2021-11-30 13:42:02   meters_1_total  9579
     2021-11-30 13:42:02   model           SHSW-PM
     2021-11-30 13:42:02   mqtt_connected  true
     2021-11-30 13:42:02   new_fw          false
     2021-11-30 13:42:02   online          true
     2021-11-30 13:51:32   overtemperature 0
     2021-11-30 13:42:02   ram_free        37720
     2021-11-30 13:42:02   ram_total       50472
     2021-11-30 13:51:32   relay_0         off
     2021-11-30 13:51:32   relay_0_energy  11128
     2021-11-30 13:51:32   relay_0_power   0.00
     2021-11-30 13:42:02   relays_1_has_timer false
     2021-11-30 13:42:02   relays_1_ison   false
     2021-11-30 13:42:02   relays_1_overpower false
     2021-11-30 13:42:02   relays_1_source mqtt
     2021-11-30 13:42:02   relays_1_timer_duration 0
     2021-11-30 13:42:02   relays_1_timer_remaining 0
     2021-11-30 13:42:02   relays_1_timer_started 0
     2021-11-30 13:42:02   serial          55
     2021-11-30 13:44:50   state           relay_0
     2021-11-30 13:51:32   temperature     26.73
     2021-11-30 13:51:32   temperature_f   80.11
     2021-11-30 13:51:32   temperature_status Normal
     2021-11-30 13:42:02   time            13:42
     2021-11-30 13:42:02   tmp_is_valid    true
     2021-11-30 13:42:02   tmp_tC          29.75
     2021-11-30 13:42:02   tmp_tF          85.55
     2021-11-30 13:42:02   unixtime        1638276122
     2021-11-30 13:42:02   update_has_update false
     2021-11-30 13:42:02   update_new_version 20211109-130756/v1.11.7-g682a0db
     2021-11-30 13:42:02   update_old_version 20211109-130756/v1.11.7-g682a0db
     2021-11-30 13:42:02   update_status   idle
     2021-11-30 13:42:02   uptime          1421
     2021-11-30 13:42:02   wifi_sta_connected true
     2021-11-30 13:42:02   wifi_sta_ip     10.0.0.159
     2021-11-30 13:42:02   wifi_sta_rssi   -30
     2021-11-30 13:42:02   wifi_sta_ssid   Dahoam
Attributes:
   event-on-change-reading ext_temperature_0,relay_0
   readingList shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/ext_temperature/0:.* ext_temperature_0
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/ext_temperature_f/0:.* ext_temperature_f_0
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/ext_temperatures:.* { json2nameValue($EVENT) }
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/ext_temperatures_f:.* { json2nameValue($EVENT) }
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/relay/0:.* relay_0
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/input/0:.* input_0
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/relay/0/power:.* relay_0_power
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/relay/0/energy:.* relay_0_energy
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/temperature:.* temperature
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/temperature_f:.* temperature_f
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/overtemperature:.* overtemperature
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/temperature_status:.* temperature_status
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/input_event/0:.* { json2nameValue($EVENT) }
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/online:.* online
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/announce:.* { json2nameValue($EVENT) }
shelly1pm_E09806A9DB91:shellies/shelly1pm-E09806A9DB91/info:.* { json2nameValue($EVENT) }
   room       Brunnen,Favoriten,MQTT2_DEVICE
   setList    relay_0:iconSwitch,on,li_wht_off,off,li_wht_on shellies/shelly1pm-E09806A9DB91/relay/0/command $EVTPART1
x_mqttcom shellies/shelly1pm-E09806A9DB91/command $EVTPART1
   stateFormat ext_temperature_0
   userReadings relay_0_energy_kWh:relay_0_energy.* monotonic {ReadingsVal($NAME,"relay_0_energy",0)/60/1000.0}, Kosten_Euro:relay_0_energy_kWh.* { sprintf("%.2f",ReadingsVal($NAME,"relay_0_energy_kWh",0)*.2);;}
   verbose    5
   webCmd     relay_0
   webCmdLabel :


Zur Sicherheit habe ich auch schon einen Neustart vom FHEM durchgeführt.

Im Logfile mit verbose 5 sehe ich auch keine Auffälligkeiten

2021.11.30 13:44:36 3: MQTT2_DEVICE set Brunnen_Heizung relay_0 on
2021.11.30 13:44:37 4: MQTT2_DEVICE_Parse: Brunnen_Heizung shellies/shelly1pm-E09806A9DB91/relay/0 => relay_0
2021.11.30 13:44:39 4: MQTT2_DEVICE_Parse: Brunnen_Heizung shellies/shelly1pm-E09806A9DB91/relay/0/power => relay_0_power
2021.11.30 13:44:39 4: MQTT2_DEVICE_Parse: Brunnen_Heizung shellies/shelly1pm-E09806A9DB91/relay/0/energy => relay_0_energy
2021.11.30 13:44:42 4: MQTT2_DEVICE_Parse: Brunnen_Heizung shellies/shelly1pm-E09806A9DB91/ext_temperature/0 => ext_temperature_0
2021.11.30 13:44:42 4: MQTT2_DEVICE_Parse: Brunnen_Heizung shellies/shelly1pm-E09806A9DB91/ext_temperature_f/0 => ext_temperature_f_0
2021.11.30 13:44:42 4: MQTT2_DEVICE_Parse: Brunnen_Heizung shellies/shelly1pm-E09806A9DB91/ext_temperatures => { json2nameValue($EVENT) }
2021.11.30 13:44:42 4: MQTT2_DEVICE_Parse: Brunnen_Heizung shellies/shelly1pm-E09806A9DB91/ext_temperatures_f => { json2nameValue($EVENT) }
2021.11.30 13:44:50 3: MQTT2_DEVICE set Brunnen_Heizung relay_0 off



Was mach ich da bitte falsch?

Danke
Helmut

System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Otto123

Hi,

drei Dinge: $NAME bei notify  - aber $name bei userReadings.
Den trigger auf ein Reading was im gleichen Code Abschnitt erstellt wird, kann sein das gibt keinen Event wegen Verhinderung von Schleifen.
Besser ReadingsNum() für Zahlen nehmen

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Helmi55

Hallo Otto
Danke für deine Zeit.

Ich habe jetzt mal auf ein userReadings begrenzt
relay_0_energy_kWh:relay_0_energy.* monotonic {ReadingsNum($name,"relay_0_energy",0)/60/1000.0}
und ReadingsNum und $name (auch $NAME) verwendet.
Leider ohne Erfolg....

Was ich überhaupt nicht verstehe, wieso funktioniert meine "alteVersion" bei anderen Devices??

Hast du noch eine Idee bitte?

Gruß
Helmut
System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Otto123

hast Du events verhindert?
list relay_0_energy_kWh event-on-change-reading
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

MadMax-FHEM

Eventuell ist aber auch das mit der Schleife noch relevant?

relay_0_energy_kWh:relay_0_energy.*

weil relay_0_energy.* auch auf relay_0_energy_kWh reagiert...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Helmi55

Hallo
also ich hatte das attr "event-on-change-reading ext_temperature_0,relay_0" gesetzt.
Was hat das für eine Auswirkung auf "relay_0_energy" ? Wird hier alles mit relay_0.....  getriggert?

Sie sieht das userReadings nun aus

relay_0_energy_kWh:relay_0_energy.* monotonic {ReadingsNum($name,"relay_0_energy",0)/60/1000.0}, Kosten_Euro:relay_0_energy_kWh.* { sprintf("%.2f",ReadingsNum($name,"relay_0_energy_kWh",0)*.2);;}

und es funktioniert wie es soll.
Hat mich ja gewundert, da ich dieses userReadings auch in anderen Devices verwende.

Auslöser war event-on-change......

Danke für eure Hilfe
Gesund bleiben

Helmut

System1 fhem 6.1 auf RPi 4B mit 4GB, HMUSBConfig, DS9490R-1Wire, Busware USB 868, Pool-Solarsteuerung mit FHEM. System2 fhem 6.1 auf RPi 4B mit 4GB (Bullseye) mit Busware USB 868 und 433 und HMUARTLGW für Haussteuerung

https://www.flickr.com/photos/canonhelmi/

Otto123

Hallo Helmut,

hier steht nicht von regExp oder so
Zitatevent-on-change-reading
Dieses Attribut enthält eine durch Kommata getrennte Liste von "readings". Wenn gesetzt, erzeugen nur Veränderungen der gelisteten "readings" ein Ereignis. Wenn die aktualiserten Werte der gelisteten "readings" identisch sind, wird kein Ereignis generiert.
Wenn hinter dem Namen eines "readings" eine :Schwelle angegeben ist, wird das Event nur getriggert wenn die Änderung grösser als diese Schwelle ist.
Die unterschiedlichen Bedeutungen von event-on-update-reading und event-on-change-reading sind folgende:
Wenn beide Attribute nicht gesetzt sind erzeugt jede Aktualisierung eines jeden "readings" eines Gerätes ein Ereignis.
Wenn eines der Attribute gesetzt ist, erzeugen nur Updates oder änderungen von "readings" die in einem der Attribute gesetzt sind ein Ereignis.
Wenn ein "reading" in event-on-update-reading aufgeführt ist, erzeugt eine Aktualisierung ein Ereignis unabhängig ob das "reading" auch in event-on-change-reading aufgelistet ist.
also wenn reading nicht gelistet dann kein Event!

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz