Seite 3 von 3
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 15. Aug 2020 20:22
von Blui
Ich möchte die Mittelwerte von Temperatur, Luftdruck und Feuchtigkeit ausgeben wie schon oben beschrieben
Bei Temperatur funktioniert es auch, bei Luftdruck und Feuchtigkeit aber nicht.
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 15. Aug 2020 23:22
von udo1toni
Bist Du sicher, dass alle beteiligten Items auch einen gültigen Wert liefern?
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 16. Aug 2020 00:25
von Blui
Ja, das tun sie.
Hier mal eine zusammengebastelte Übersicht aus VSCode:
Mittelwertanzeigen.jpg
Wie man sehen kann wird die Temperatur ausgerechnet, die anderen beiden Mittelwerte aber nicht.
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 16. Aug 2020 08:36
von Darkwin101
Hast du mal openHAB neu gestartet ich habe die Erfahrung gemacht das gerade Gruppen und MQTT bei Änderungen sehr empfindlich sind und mal einen Neustart verlangen.
Gesendet von iPad mit Tapatalk
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 16. Aug 2020 11:22
von Blui
Oh, tatsächlich. Danke, jetzt geht es.
Ich dachte eigentlich ich hätte schon neu gestartet aber egal.
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 17. Dez 2021 18:00
von HiG
Der Thread ist ja schon ein wenig älter...aber es tritt zumindest Teile meines Problems.
Ich habe mir dieser Tage die Bewegungsmelder vom Lidl geholt. Hab sie im MQTT eingebunden und bekomme fleissig Nachrichten. Diese lassen sich in den Grund-Datentypen auch zauberhaft auslesen und verarbeiten. Aber...
Der wichtigeste Parameter eines Bewegungsmelders ist für mich, ob der ne Bewegung erkannt hat. Und das liefert ein True/false zurück. Der payload sieht so aus
Code: Alles auswählen
zb2mqtt/0xec1bbdfffe89fa5a', payload '{
"battery":100,
"battery_low":false,
"device":{
"applicationVersion":65,
"dateCode":"2019.12.12",
"friendlyName":"0xec1bbdfffe89fa5a",
"hardwareVersion":1,
"ieeeAddr":"0xec1bbdfffe89fa5a",
"manufacturerID":4619,
"manufacturerName":"_TZ1800_fcdjzz3s",
"model":"HG06335",
"networkAddress":46992,
"powerSource":"Battery",
"stackVersion":2,
"type":"EndDevice",
"zclVersion":1
},
"linkquality":0,
"occupancy":false,
"tamper":false,
"voltage":3200}'
Auslesen tue ich es mittels
Code: Alles auswählen
Type xxx : bs_k_bewegung "Bewegung erkannt " [ stateTopic="zb2mqtt/0xWohnen", transformationPattern="JSONPATH:$.occupancy" ]
Ich hab schon alle Typen irgendwie ausprobiert... es kommen immer Logausgaben wie....
Code: Alles auswählen
2021-12-17 17:56:33.932 [WARN ] [ab.binding.mqtt.generic.ChannelState] - Incoming payload 'false' not supported by type 'NumberValue'
2021-12-17 17:56:33.934 [WARN ] [ab.binding.mqtt.generic.ChannelState] - Command 'false' not supported by type 'OnOffValue': No enum constant org.openhab.core.library.types.OnOffType.false
wie bekomme ich true/false in On/off oder 0/1 gewandelt?
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 17. Dez 2021 21:26
von udo1toni
Einen Typ xxx gibt es nicht. Da es sich hier um einen binären Wert handelt, ist switch der richtige Typ. Allerdings erwartet switch exakt die Werte ON und OFF, nicht true und false. Deshalb musst Du zusätzlich noch übersetzen. Sieht dann so aus:
Code: Alles auswählen
Type switch : bs_k_bewegung "Bewegung erkannt " [ stateTopic="zb2mqtt/0xWohnen", on="true", off="false", transformationPattern="JSONPATH:$.occupancy" ]
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 17. Dez 2021 21:39
von HiG
Mein lieber Udo....
wenn wir Dich nicht schon hätten...müssten wir Dich "erfinden". Funktioniert!. Danke schön
Das "XXX" war nur den unterschiedlichen bisher versuchten Typen geschuldet #duck
Re: Viele unbeantwortete Fragen zu MQTT
Verfasst: 17. Dez 2021 21:58
von udo1toni
HiG hat geschrieben: ↑17. Dez 2021 21:39
as "XXX" war nur den unterschiedlichen bisher versuchten Typen geschuldet #duck
Ich hatte es mir schon fast gedacht
