Anbindung eines MQTT mit analogen Werten

Begonnen von cornelius fillmore, 21 September 2019, 09:12:14

Vorheriges Thema - Nächstes Thema

cornelius fillmore

Hallo Forum,
kann mir hier noch mal einer weiterhelfen.
Ich habe einen WEMO zur Aufnahme analoger Daten konfiguriert.
Dieser lässt sich auch via IP ansprechen und zeigt Werte

Anbei der Eintrag in fhem.cfg
define myZisterne dummy
attr myZisterne userattr mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttForward:all,none mqttPublish:textField-long mqttSubscribe:textField-long
attr myZisterne alias Status
attr myZisterne comment Daten von WEMOS D1 http://192.168.0.166\
--------------------------------------------\
ANALOG_A0 --> 600 --> Überlaufhöhe mit Trimmer eingestellt! \
ANALOG_A0 --> 600 --> Zisterne 6500 Liter --> Durchmesser D 200cm\
für Berechnung. Damit in Liter ausgegeben L207/1000 -> in Formel\
---------------------------------------------------------------------\
Wstd --> Wasserstand in cm  Fstd --> Füllstand in Liter
attr myZisterne devStateStyle style=color:red
attr myZisterne group Zisterne
attr myZisterne mqttSubscribe ANALOG_A0:topic=tele/Zisterne/SENSOR ANALOG_A0:expression={json2nameValue($message)}
attr myZisterne room Aussen->Zisterne
attr myZisterne stateFormat <b>Volumen FstD l;;<br>FH WstD cm
attr myZisterne userReadings WstD:ANALOG_A0.* {sprintf("%.0f",ReadingsNum($NAME,"ANALOG_A0",0)/3)},\
FstD:ANALOG_A0.* {sprintf("%.0f",0.207*((10000*acos((100-ReadingsNum($NAME,"WstD",0))/100))\
+(sqrt(10000-(ReadingsNum($NAME,"WstD",0)-100)*(ReadingsNum($NAME,"WstD",0)-100)))*(ReadingsNum($NAME,"WstD",0)-100)));;;;}
######################################
define mqttGeneric MQTT_GENERIC_BRIDGE mqtt room=Aussen->Zisterne
attr mqttGeneric IODev MQTT2_FHEM_Server
attr mqttGeneric room Aussen->Zisterne,Steuerung->MQTT2_DEVICE

Warum auch immer kommt keine Werte in fhem an

Kann mir da jemand weiterhelfen?
3 x Fhem 5.9 mit RPI

Beta-User

Hmm,

zwei Dinge verstehe ich nicht so recht:

Zum einen, warum du hier cfg-Auszüge postest. Daraus kann keiner richtig was ablesen, lists oder RAW-Definitionen sind da viel hilfreicher. Hier wäre evtl. noch ein Mitschnitt des MQTT-Verkehrs hilfreich.

Zum anderen: Wenn du den MQTT2_SERVER im Einsatz hast, warum gehst du hier den steinigen Weg über die MQTT_GENERIC_BRIDGE+Dummy und läßt nicht einfach autocreate am MQTT2_SERVER ein MQTT2_DEVICE anlegen?
Dann brauchst du auch keine userReadings, sondern kannst den Perl-Code direkt in die readingList coden (ggf. mit doppelten Einträgen für dasselbe topic)...

Wäre m.E. einfacher.

Gruß, Beta-User
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Billy

Zitat von: Beta-User am 21 September 2019, 23:26:23
Hmm,

zwei Dinge verstehe ich nicht so recht:

Gruß, Beta-User

Kann man nur verstehen wenn man diesen Link dazu kennt.
https://forum.fhem.de/index.php/topic,93308.msg974422.html#msg974422

Gruß Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

Beta-User

#3
Ok, also einfach eine copy/paste-Sache.

Wie gesagt: Das sollte mit MQTT2_DEVICE-"Bordmitteln" einfacher gehen ;) . Sich in MQTT einzuarbeiten mit "schwierigen" Devices ist mAn. nicht unbedingt zu empfehlen.

Kann gerne Unterstüzung leisten, wenn das Sinn macht, um den Sensor zu "vertemplaten", müßte aber dann wissen, was da als JSON kommt. Sollte erst mal der Spur nach so gehen (der JSON wird in ein separates Reading geschrieben):
defmod myZisterne2 MQTT2_DEVICE myZisterne
attr myZisterne2 comment Daten von WEMOS D1 http://192.168.0.166\
attr myZisterne2 group Zisterne
attr myZisterne2 readingList\
tele/Zisterne/SENSOR {json2nameValue($EVENT)}\
tele/Zisterne/SENSOR { $EVENT =~ m,ANALOG_A0, ? {"json_raw"=>$EVENT} : undef }
attr myZisterne2 room Aussen->Zisterne
attr myZisterne2 stateFormat <b>Volumen FstD l;;<br>FH WstD cm
attr myZisterne userReadings WstD:ANALOG_A0.* {sprintf("%.0f",ReadingsNum($name,"ANALOG_A0",0)/3)},\
FstD:ANALOG_A0.* {sprintf("%.0f",0.207*((10000*acos((100-ReadingsNum($name,"WstD",0))/100))\
+(sqrt(10000-(ReadingsNum($name,"WstD",0)-100)*(ReadingsNum($name,"WstD",0)-100)))*(ReadingsNum($name,"WstD",0)-100)));;;;}

EDIT: ein "\" im Code entfernt
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Beta-User

Du solltest als erstes schauen, was der wohin sendet. Das sieht mir danach aus, als würde schon auf der MQTT-Seite nichts laufen. Bitte da erst mal nachsehen (z.B. rawEvents im IO auf .* stellen und rePublish aktivieren).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

cornelius fillmore

Anbei das reading des MQTT
Internals:
   CID        DVES_0D7972
   DEF        DVES_0D7972
   DEVICETOPIC MQTT2_DVES_0D7972
   FUUID      5d95d145-f33f-4662-0232-3e0002cdd5d1e7c7
   IODev      MQTT2_FHEM_Server
   LASTInputDev MQTT2_FHEM_Server
   MQTT2_FHEM_Server_MSGCNT 4
   MQTT2_FHEM_Server_TIME 2019-10-04 16:12:22
   MSGCNT     4
   NAME       MQTT2_DVES_0D7972
   NR         551
   STATE      ???
   TYPE       MQTT2_DEVICE
   READINGS:
     2019-10-04 16:01:42   INFO1_FallbackTopic cmnd/DVES_0D7972_fb/
     2019-10-04 16:01:42   INFO1_GroupTopic sonoffs
     2019-10-04 16:01:42   INFO1_Module    Generic
     2019-10-04 16:01:42   INFO1_Version   6.6.0(release-sonoff)
     2019-10-04 16:01:42   INFO2_Hostname  DVES_0D7972-6514
     2019-10-04 16:01:42   INFO2_IPAddress 192.168.0.166
     2019-10-04 16:01:42   INFO2_WebServerMode Admin
     2019-10-04 16:01:42   INFO3_RestartReason External System
     2019-10-04 16:09:07   LWT             Online
     2019-10-04 16:09:07   POWER           
     2019-10-04 16:12:22   SENSOR_ANALOG_A0 243
     2019-10-04 16:12:22   SENSOR_Time     2019-10-04T15:12:22
     2019-10-04 16:12:22   STATE_Heap      15
     2019-10-04 16:12:22   STATE_LoadAvg   23
     2019-10-04 16:12:22   STATE_Sleep     50
     2019-10-04 16:12:22   STATE_SleepMode Dynamic
     2019-10-04 16:12:22   STATE_Time      2019-10-04T15:12:22
     2019-10-04 16:12:22   STATE_Uptime    0T00:10:48
     2019-10-04 16:12:22   STATE_Wifi_AP   1
     2019-10-04 16:12:22   STATE_Wifi_BSSId A0:04:60:39:82:5D
     2019-10-04 16:12:22   STATE_Wifi_Channel 13
     2019-10-04 16:12:22   STATE_Wifi_Downtime 0T00:00:07
     2019-10-04 16:12:22   STATE_Wifi_LinkCount 1
     2019-10-04 16:12:22   STATE_Wifi_RSSI 78
     2019-10-04 16:12:22   STATE_Wifi_SSId NETGEAR23
Attributes:
   IODev      MQTT2_FHEM_Server
   readingList DVES_0D7972:tele/DVES_0D7972/LWT:.* LWT
DVES_0D7972:cmnd/DVES_0D7972/POWER:.* POWER
DVES_0D7972:tele/DVES_0D7972/INFO1:.* { json2nameValue($EVENT, 'INFO1_', $JSONMAP) }
DVES_0D7972:tele/DVES_0D7972/INFO2:.* { json2nameValue($EVENT, 'INFO2_', $JSONMAP) }
DVES_0D7972:tele/DVES_0D7972/INFO3:.* { json2nameValue($EVENT, 'INFO3_', $JSONMAP) }
DVES_0D7972:tele/DVES_0D7972/STATE:.* { json2nameValue($EVENT, 'STATE_', $JSONMAP) }
DVES_0D7972:tele/DVES_0D7972/SENSOR:.* { json2nameValue($EVENT, 'SENSOR_', $JSONMAP) }
   room       Steuerung->MQTT2_DEVICE

Beim Verändern des Wasserstandes, ändert sich auch der analoge Wert
3 x Fhem 5.9 mit RPI

Beta-User

OK, also jetzt scheint was reingekommen zu sein, aber du hast - warum auch immer ::) - autocreate am IO auf complex eingestellt. Also heißt das Reading anders...

Würde vorschlagen, das autocreate wieder auf "simple" zu stellen, die readingList zu löschen und dann den Tasmota wieder zu booten. Dann müßte es eigentlich auch mit dem userreading von neulich klappen, sobald da ein Wert reinkommt. Oder du paßt halt das userReading-Attribut so an, dass es auf den Readingnamen matcht. Ist aber nach meinem Geschmack unnötig, da lange Readingnamen zu verwenden.

Bitte dreh' nicht an allem ohne Not rum, das macht es am Ende schwieriger, nicht einfacher...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

cornelius fillmore

So autocreate steht auf simple
Internals:
   CONNECTS   6
   DEF        1883 global
   FD         22
   FUUID      5d39cd46-f33f-4662-c3ff-df761f9cb1d22c6b
   NAME       MQTT2_FHEM_Server
   NR         448
   PORT       1883
   STATE      Initialized
   TYPE       MQTT2_SERVER
   READINGS:
     2019-10-04 16:53:30   RETAIN          {"tele/DVES_0D7972/LWT":"Offline","tele/Pumpe-Brunnen/LWT":"Online","tele/ROTO_Dachfenster/LWT":"Offline","tele/VELUX_Dachfenster/LWT":"Online","tele/sonoff/LWT":"Online"}
     2019-10-04 16:53:30   nrclients       3
     2019-10-04 16:23:29   state           Initialized
   clients:
     MQTT2_FHEM_Server_192.168.0.153_25979 1
     MQTT2_FHEM_Server_192.168.0.154_63255 1
     MQTT2_FHEM_Server_192.168.0.49_61596 1
   retain:
     tele/DVES_0D7972/LWT:
       ts         1570200810.59217
       val        Offline
     tele/Pumpe-Brunnen/LWT:
       ts         1570199027.51893
       val        Online
     tele/ROTO_Dachfenster/LWT:
       ts         1570199010.16084
       val        Offline
     tele/VELUX_Dachfenster/LWT:
       ts         1570199028.37998
       val        Online
     tele/sonoff/LWT:
       ts         1570199240.39055
       val        Online
Attributes:
   autocreate simple
   rePublish  1
   room       Steuerung->MQTT2_DEVICE

Aber wie lösche ich denn die readingList?
3 x Fhem 5.9 mit RPI

Beta-User

 :o Wie wäre es mit: in der Detailseite einfach hinten in der Zeile mit dem Attribut auf "delete" klicken? Oder den Inhalt bearbeiten und dort einfach leeren?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

cornelius fillmore

#9
 ::)
gelöscht neu gebootet und die Zeilen von "my Zisterne" in die cfg eingetragen
passiert aber irgendwie nichts, stehen immer noch die drei roten ?
reading myZisterne
Internals:
   FUUID      5d975f97-f33f-4662-6eea-b42ab53e317ce5b3
   NAME       myZisterne
   NR         552
   STATE      ???
   TYPE       dummy
Attributes:
   alias      Status
   comment    Daten von WEMOS D1 http://192.168.0.166
--------------------------------------------
ANALOG_A0 --> 600 --> Überlaufhöhe mit Trimmer eingestellt!
ANALOG_A0 --> 600 --> Zisterne 6500 Liter --> Durchmesser D 200cm
für Berechnung. Damit in Liter ausgegeben L207/1000 -> in Formel
---------------------------------------------------------------------
Wstd --> Wasserstand in cm  Fstd --> Füllstand in Liter
   devStateStyle style=color:red
   group      Zisterne
   mqttSubscribe ANALOG_A0:topic=tele/Zisterne/SENSOR ANALOG_A0:expression={json2nameValue($message)}
   room       Aussen->Zinsterne
   stateFormat <b>Volumen FstD l;<br>FH WstD cm
   userReadings WstD:ANALOG_A0.* {sprintf("%.0f",ReadingsNum($NAME,"ANALOG_A0",0)/3)},
FstD:ANALOG_A0.* {sprintf("%.0f",0.207*((10000*acos((100-ReadingsNum($NAME,"WstD",0))/100))
+(sqrt(10000-(ReadingsNum($NAME,"WstD",0)-100)*(ReadingsNum($NAME,"WstD",0)-100)))*(ReadingsNum($NAME,"WstD",0)-100)));;}
   userattr   mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttForward:all,none mqttPublish:textField-long mqttSubscribe:textField-long

das MQTT an sich scheint aber doch ok, da kommen doch Werte an

3 x Fhem 5.9 mit RPI

Beta-User

Willst du mich provozieren? Es ist völlig unnötig und potentiell schädlich, in der cfg rumzueditieren. Entweder du machst das über FHEMWEB oder ich bin raus... >:(

Kurz: Wir reden hier im RAW-Format oder gar nicht (Wiki: Import von Code snippets). Damit kann ich dein Device hier simulieren, alles andere ist lästig.

Da du nicht verrätst, wie lange der Sensor denn braucht, bis er was sendet, kann es eben sein, dass da "???" stehen. Das wird erst anders, wenn was kommt, das dauert eben hier scheinbar lange. Vorhin war da was, das war keine zwei Minuten alt, warum, kann ich aber nicht sagen, das würde man vermutlich nur rausfinden, wenn man in den Code sieht. Sollte es ein logfile dazu geben, kannst du ja mal schauen, was da wann eingetragen wurde...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

cornelius fillmore

 :-[, mache es nun via RAW
Anbei die Def des Sensors:
defmod MQTT2_DVES_0D7972 MQTT2_DEVICE DVES_0D7972
attr MQTT2_DVES_0D7972 IODev MQTT2_FHEM_Server
attr MQTT2_DVES_0D7972 readingList DVES_0D7972:tele/DVES_0D7972/LWT:.* LWT\
DVES_0D7972:cmnd/DVES_0D7972/POWER:.* POWER\
DVES_0D7972:tele/DVES_0D7972/INFO1:.* { json2nameValue($EVENT) }\
DVES_0D7972:tele/DVES_0D7972/INFO2:.* { json2nameValue($EVENT) }\
DVES_0D7972:tele/DVES_0D7972/INFO3:.* { json2nameValue($EVENT) }\
DVES_0D7972:tele/DVES_0D7972/STATE:.* { json2nameValue($EVENT) }\
DVES_0D7972:tele/DVES_0D7972/SENSOR:.* { json2nameValue($EVENT) }
attr MQTT2_DVES_0D7972 room MQTT2_DEVICE

setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 ANALOG_A0 244
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 FallbackTopic cmnd/DVES_0D7972_fb/
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 GroupTopic sonoffs
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Heap 15
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 Hostname DVES_0D7972-6514
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 IPAddress 192.168.0.166
setstate MQTT2_DVES_0D7972 2019-10-04 17:05:06 LWT Online
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 LoadAvg 19
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 Module Generic
setstate MQTT2_DVES_0D7972 2019-10-04 17:05:06 POWER
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 RestartReason Software/System restart
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Sleep 50
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 SleepMode Dynamic
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Time 2019-10-04T16:53:36
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Uptime 0T00:50:38
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 Version 6.6.0(release-sonoff)
setstate MQTT2_DVES_0D7972 2019-10-04 17:03:10 WebServerMode Admin
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Wifi_AP 1
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Wifi_BSSId A0:04:60:39:82:5D
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Wifi_Channel 13
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Wifi_Downtime 0T00:00:10
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Wifi_LinkCount 1
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Wifi_RSSI 88
setstate MQTT2_DVES_0D7972 2019-10-04 17:53:37 Wifi_SSId NETGEAR23


Hilft das was?
In der Web-Ansicht reagiert des Sensor sofort
Und mal das Logfile dazu:
2019-10-04_17:00:05 MQTT2_DVES_0D7972 LWT: Online
2019-10-04_17:00:05 MQTT2_DVES_0D7972 POWER:
2019-10-04_17:00:05 MQTT2_DVES_0D7972 GroupTopic: sonoffs
2019-10-04_17:00:05 MQTT2_DVES_0D7972 Version: 6.6.0(release-sonoff)
2019-10-04_17:00:05 MQTT2_DVES_0D7972 FallbackTopic: cmnd/DVES_0D7972_fb/
2019-10-04_17:00:05 MQTT2_DVES_0D7972 Module: Generic
2019-10-04_17:00:05 MQTT2_DVES_0D7972 IPAddress: 192.168.0.166
2019-10-04_17:00:05 MQTT2_DVES_0D7972 WebServerMode: Admin
2019-10-04_17:00:05 MQTT2_DVES_0D7972 Hostname: DVES_0D7972-6514
2019-10-04_17:00:05 MQTT2_DVES_0D7972 RestartReason: External System
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Wifi_RSSI: 86
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Time: 2019-10-04T16:00:13
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:00:13 MQTT2_DVES_0D7972 LoadAvg: 31
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Uptime: 0T00:00:20
2019-10-04_17:00:13 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Heap: 15
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:00:13 MQTT2_DVES_0D7972 Time: 2019-10-04T16:00:13
2019-10-04_17:00:13 MQTT2_DVES_0D7972 ANALOG_A0: 207
2019-10-04_17:03:10 MQTT2_DVES_0D7972 LWT: Online
2019-10-04_17:03:10 MQTT2_DVES_0D7972 POWER:
2019-10-04_17:03:10 MQTT2_DVES_0D7972 FallbackTopic: cmnd/DVES_0D7972_fb/
2019-10-04_17:03:10 MQTT2_DVES_0D7972 Module: Generic
2019-10-04_17:03:10 MQTT2_DVES_0D7972 GroupTopic: sonoffs
2019-10-04_17:03:10 MQTT2_DVES_0D7972 Version: 6.6.0(release-sonoff)
2019-10-04_17:03:10 MQTT2_DVES_0D7972 IPAddress: 192.168.0.166
2019-10-04_17:03:10 MQTT2_DVES_0D7972 Hostname: DVES_0D7972-6514
2019-10-04_17:03:10 MQTT2_DVES_0D7972 WebServerMode: Admin
2019-10-04_17:03:10 MQTT2_DVES_0D7972 RestartReason: Software/System restart
2019-10-04_17:03:18 MQTT2_DVES_0D7972 LoadAvg: 19
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Uptime: 0T00:00:20
2019-10-04_17:03:18 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Time: 2019-10-04T16:03:18
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Wifi_RSSI: 82
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Heap: 15
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:03:18 MQTT2_DVES_0D7972 ANALOG_A0: 243
2019-10-04_17:03:18 MQTT2_DVES_0D7972 Time: 2019-10-04T16:03:18
2019-10-04_17:05:06 MQTT2_DVES_0D7972 LWT: Online
2019-10-04_17:05:06 MQTT2_DVES_0D7972 POWER:
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Heap: 15
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Wifi_RSSI: 84
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Time: 2019-10-04T16:08:27
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:08:27 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Uptime: 0T00:05:29
2019-10-04_17:08:27 MQTT2_DVES_0D7972 LoadAvg: 34
2019-10-04_17:08:27 MQTT2_DVES_0D7972 Time: 2019-10-04T16:08:27
2019-10-04_17:08:27 MQTT2_DVES_0D7972 ANALOG_A0: 244
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Time: 2019-10-04T16:13:29
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Wifi_RSSI: 84
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:13:30 MQTT2_DVES_0D7972 LoadAvg: 19
2019-10-04_17:13:30 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Uptime: 0T00:10:31
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Heap: 14
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:13:30 MQTT2_DVES_0D7972 ANALOG_A0: 243
2019-10-04_17:13:30 MQTT2_DVES_0D7972 Time: 2019-10-04T16:13:29
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Heap: 14
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Uptime: 0T00:15:33
2019-10-04_17:18:32 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:18:32 MQTT2_DVES_0D7972 LoadAvg: 19
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Time: 2019-10-04T16:18:31
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Wifi_RSSI: 88
2019-10-04_17:18:32 MQTT2_DVES_0D7972 ANALOG_A0: 243
2019-10-04_17:18:32 MQTT2_DVES_0D7972 Time: 2019-10-04T16:18:31
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Heap: 14
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Time: 2019-10-04T16:23:33
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Wifi_RSSI: 86
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:23:33 MQTT2_DVES_0D7972 LoadAvg: 23
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Uptime: 0T00:20:35
2019-10-04_17:23:33 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:23:33 MQTT2_DVES_0D7972 Time: 2019-10-04T16:23:33
2019-10-04_17:23:33 MQTT2_DVES_0D7972 ANALOG_A0: 243
2019-10-04_17:28:34 MQTT2_DVES_0D7972 LoadAvg: 19
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Uptime: 0T00:25:35
2019-10-04_17:28:34 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Wifi_RSSI: 92
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Time: 2019-10-04T16:28:33
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Heap: 14
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:28:34 MQTT2_DVES_0D7972 Time: 2019-10-04T16:28:33
2019-10-04_17:28:34 MQTT2_DVES_0D7972 ANALOG_A0: 243
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:33:35 MQTT2_DVES_0D7972 LoadAvg: 33
2019-10-04_17:33:35 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Uptime: 0T00:30:37
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Wifi_RSSI: 90
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Time: 2019-10-04T16:33:35
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Heap: 14
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:33:35 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:33:36 MQTT2_DVES_0D7972 ANALOG_A0: 243
2019-10-04_17:33:36 MQTT2_DVES_0D7972 Time: 2019-10-04T16:33:35
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Wifi_RSSI: 88
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Time: 2019-10-04T16:38:35
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:38:36 MQTT2_DVES_0D7972 LoadAvg: 21
2019-10-04_17:38:36 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Uptime: 0T00:35:37
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Heap: 14
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:38:36 MQTT2_DVES_0D7972 ANALOG_A0: 243
2019-10-04_17:38:36 MQTT2_DVES_0D7972 Time: 2019-10-04T16:38:35
2019-10-04_17:43:37 MQTT2_DVES_0D7972 LoadAvg: 19
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Uptime: 0T00:40:38
2019-10-04_17:43:37 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Wifi_RSSI: 84
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Time: 2019-10-04T16:43:36
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Heap: 15
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:43:37 MQTT2_DVES_0D7972 Time: 2019-10-04T16:43:36
2019-10-04_17:43:37 MQTT2_DVES_0D7972 ANALOG_A0: 244
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Heap: 15
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Wifi_RSSI: 88
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Time: 2019-10-04T16:48:36
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:48:37 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Uptime: 0T00:45:38
2019-10-04_17:48:37 MQTT2_DVES_0D7972 LoadAvg: 19
2019-10-04_17:48:37 MQTT2_DVES_0D7972 ANALOG_A0: 244
2019-10-04_17:48:37 MQTT2_DVES_0D7972 Time: 2019-10-04T16:48:36
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Heap: 15
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Time: 2019-10-04T16:53:36
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Wifi_RSSI: 88
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:53:37 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Uptime: 0T00:50:38
2019-10-04_17:53:37 MQTT2_DVES_0D7972 LoadAvg: 19
2019-10-04_17:53:37 MQTT2_DVES_0D7972 ANALOG_A0: 244
2019-10-04_17:53:37 MQTT2_DVES_0D7972 Time: 2019-10-04T16:53:36
2019-10-04_17:58:37 MQTT2_DVES_0D7972 LWT: Online
2019-10-04_17:58:37 MQTT2_DVES_0D7972 POWER:
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Heap: 14
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Wifi_Channel: 13
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Sleep: 50
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Wifi_Downtime: 0T00:00:10
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Wifi_LinkCount: 1
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Wifi_BSSId: A0:04:60:39:82:5D
2019-10-04_17:58:52 MQTT2_DVES_0D7972 LoadAvg: 23
2019-10-04_17:58:52 MQTT2_DVES_0D7972 SleepMode: Dynamic
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Uptime: 0T00:55:54
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Wifi_AP: 1
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Wifi_SSId: NETGEAR23
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Wifi_RSSI: 92
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Time: 2019-10-04T16:58:52
2019-10-04_17:58:52 MQTT2_DVES_0D7972 Time: 2019-10-04T16:58:52
2019-10-04_17:58:52 MQTT2_DVES_0D7972 ANALOG_A0: 243
3 x Fhem 5.9 mit RPI

Beta-User

OK, jetzt kommen also Werte rein.

(übrigens: Wenn du erst schreibst, es kommt nichts rein, und das dann änderst, während ich antworte, bekomme ich das nicht mit, und das führt dann zu Irritationen. Also besser in dem Fall eine neue Antwort schreiben...).

In dem RAW ist aber nicht zu sehen, dass du userReadings gesetzt hättest? Was hindert dich daran, das auszutesten, was wir schon hatten? Das analoge Reading heißt ja jetzt so, wie der Trigger in userReading, das müßte also passen.

Zuletzt wäre die Frage, ob man sowas via userReadings löst oder über Perl in der readingList. Hier finde ich userReadings ok.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

cornelius fillmore

Guten Morgen,
Zitat von: Beta-User am 05 Oktober 2019, 05:21:54
...
In dem RAW ist aber nicht zu sehen, dass du userReadings gesetzt hättest? ...
Nein ich habe nichts extra gesetzt, nur via autocreate erkannt. Wie soll ich diese denn setzen?

Dann das reading von "myZisterne"
Internals:
   CFGFN     
   FUUID      5d982631-f33f-4662-d7ba-4dd9866d53108800
   NAME       myZisterne
   NR         4775
   STATE      <b>Volumen FstD l;<br>FH WstD cm
   TYPE       dummy
   READINGS:
Attributes:
   alias      Status
   comment    Daten von WEMOS D1 http://192.168.0.166
--------------------------------------------
ANALOG_A0 --> 600 --> Überlaufhöhe mit Trimmer eingestellt!
ANALOG_A0 --> 600 --> Zisterne 6500 Liter --> Durchmesser D 200cm
für Berechnung. Damit in Liter ausgegeben L207/1000 -> in Formel
---------------------------------------------------------------------
Wstd --> Wasserstand in cm  Fstd --> Füllstand in Liter
   devStateStyle style=color:red
   group      Zisterne
   mqttSubscribe ANALOG_A0:topic=tele/Zisterne/SENSOR ANALOG_A0:expression={json2nameValue($message)}
   room       Aussen->Zisterne
   stateFormat <b>Volumen FstD l;<br>FH WstD cm
   userReadings WstD:ANALOG_A0.* {sprintf("%.0f",ReadingsNum($NAME,"ANALOG_A0",0)/3)},
FstD:ANALOG_A0.* {sprintf("%.0f",0.207*((10000*acos((100-ReadingsNum($NAME,"WstD",0))/100))
+(sqrt(10000-(ReadingsNum($NAME,"WstD",0)-100)*(ReadingsNum($NAME,"WstD",0)-100)))*(ReadingsNum($NAME,"WstD",0)-100)));;}
   userattr   mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttForward:all,none mqttPublish:textField-long mqttSubscribe:textField-long


Zitat von: Beta-User am 05 Oktober 2019, 05:21:54
...Was hindert dich daran, das auszutesten, was wir schon hatten? Das analoge Reading heißt ja jetzt so, wie der Trigger in userReading, das müßte also passen
In dem RAW ist aber nicht zu sehen, dass du userReadings gesetzt hättest? ...
Meinst du damit deine "myZisterne2" aus dem 4. Post?
Habe ich mal eingebaut, sieht aber im Ergebnis nicht anders aus als "myZisterne"
Anbei das reading Internals:
   CFGFN     
   CID        myZisterne
   DEF        myZisterne
   DEVICETOPIC myZisterne2
   FUUID      5d9821ed-f33f-4662-fabf-de594c71d9923d52
   IODev      MQTT2_FHEM_Server
   NAME       myZisterne2
   NR         4628
   STATE      <b>Volumen FstD l;<br>FH WstD cm
   TYPE       MQTT2_DEVICE
   READINGS:
Attributes:
   IODev      MQTT2_FHEM_Server
   comment    Daten von WEMOS D1 http://192.168.0.166
attr myZisterne2 group Zisterne
   readingList tele/Zisterne/SENSOR {json2nameValue($EVENT)}
tele/Zisterne/SENSOR { $EVENT =~ m,ANALOG_A0, ? {"json_raw"=>$EVENT} : undef }
   room       Aussen->Zisterne
   stateFormat <b>Volumen FstD l;<br>FH WstD cm


Wie kommuniziert denn eigentlich der dummy "myZisterne" mit dem MQTT?
3 x Fhem 5.9 mit RPI

Beta-User

Der dummy kommuniziert gar nicht mit dem MQTT2_DEVICE. Du setzt einfach das userReadings-Attribut am MQTT2_DEVICE ;) .

(Dieser völlig unnötige Gedanke, dass man da irgendwas zwischen den Devices "umpacken" müßte, wo kommt das eigentlich her? Such mal nach dem Thread "Warum so viele dummies?" (oder so ähnlich)).
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files