Seite 1 von 2

MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 18:51
von kaloschke
Hallo,
seit "einiger Zeit" werden die Daten, die Mosquitto liefert, nicht mehr in Openhab 4.2.2 erkannt. Der MQTT-Explorer zeigt, dass alles so läuft wie es erwartet wird. Ich habe testweise in userdata den Inhalt des cache- und des tmp-Ordners gelöscht. Ohne Erfolg.
Die MQTT -Konfiguration erfolgt über eine mqtt.things Datei.

Hier mal ein Beispiel für einen Bewegungssensor:

Code: Alles auswählen

 Thing topic motionsensor_ground "MQTT Motion Sensor" {
        Channels:
            Type switch : motionsensor "Bewegungsmelder Flur"  [stateTopic = "zigbee2mqtt/motionsensor_floor/occupancy", on ="true", off="false"]
    }
Das zugehörige Item in OH:

Code: Alles auswählen

Switch MotionSensor_Floor  (gGroundfloor,gSwitch)  {channel="mqtt:topic:mosquitto:motionsensor_ground:motionsensor"}
Im MQTT-Explorer sieht das so aus:
mqtt.png
Was mich irritiert ist, dass in der Verwaltungsoberfläche von OH alle Things online sind, die Items korrekt zugeordnet sind, Änderungen in der items- bzw. mqtt.things Datei sofort übernommen werden, aber keine Aktualisierung passiert.

Bin mit meinem (eher schwachen) Latein am Ende und bitte um Ideen zur Fehlersuche.

Viele Grüße

Ergänzung: OH und Mosquitto laufen auf einem RPi5 unter Docker
Ergänzung 2: Es betrifft nicht alle MQTT-Things! Wohl nur die, die über zigbee2mqtt laufen.

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 20:16
von peter-pan
Hast du deine MQTT-Bridge und die Zigbee2mqtt-Things in einer Datei ?

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 20:27
von kaloschke
Ja. So ...

Code: Alles auswählen

Bridge mqtt:broker:mosquitto [ host="192.168.2.87", secure=false, clientID="openhab" ]  {

    Thing topic motionsensor_ground "MQTT Motion Sensor" {
        Channels:
            Type switch : motionsensor "Bewegungsmelder Flur"  [stateTopic = "zigbee2mqtt/motionsensor_floor/occupancy", on ="true", off="false"]
    }
    
    ...
Und das hat alles bis "vor kurzem" noch funktioniert

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 20:27
von Harka
Moin,
? occupancy ist doch Teil eines JSON
imho brauchst Du

Code: Alles auswählen

stateTopic="zigbee2mqtt/motionsensor_floor", transformationPattern="JSONPATH:$.occupancy"
viewtopic.php?p=60021

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 20:35
von peter-pan
Das ist richtig, was @Harka sagt. Wenn du nur einen JSON-String bekommst, musst du diesen auflösen. Die Sensoren, die ich im Einsatz habe, schicken auch Einzelwerte an den Broker

Code: Alles auswählen

Thing mqtt:topic:danny:snzb0302 "Bewegungs-Sensor SZNB-03-02"  (mqtt:broker:danny )   @ "zigbee2mqtt"
    {
    Channels:
        Type number  : voltage      "SNZB-03 Spannung"                    [ stateTopic="zigbee2mqtt/snzb_03_02/voltage", unit="mV" ]
        Type number  : battery      "SNZB-03 Batterie"                    [ stateTopic="zigbee2mqtt/snzb_03_02/battery", unit="%" ] 
        Type contact : batterylow   "SNZB-03 Batterie Niedrig"            [ stateTopic="zigbee2mqtt/snzb_03_02/battery_low", on="true", off="false" ] 
        Type switch  : occupancy    "SNZB-03 Bewegung"                    [ stateTopic="zigbee2mqtt/snzb_03_02/occupancy", on="true", off="false" ]
        Type contact : tamper       "SNZB-03 Sabotage"                    [ stateTopic="zigbee2mqtt/snzb_03_02/tamper", on="true", off="false" ]
        Type number  : linkquality  "SNZB-03 Empfangsstäreke LQI"         [ stateTopic="zigbee2mqtt/snzb_03_02", transformationPattern="JSONPATH:$.linkquality", unit="lqi" ]

    }
Was für einen Sensor hast du denn da in "ZIGBEE2MQTT" im Einsatz (interessiert mich privat. Ich suche nach einem Sensor der auch den Luftdruck misst). Habe momentan ca. 40 Geräte über Z2M angeflanscht.

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 20:58
von kaloschke
@Harka
Treffer :D
Also es ging definitiv über ein Jahr so wie oben gezeigt. Weiß leider nicht mehr, wo ich das so her habe.
Vielleicht hat die Veränderung etwas mit irgendwelchen Updates zu tun,

Super. Vielen Dank.

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 20:59
von kaloschke
@peter-pan
Dir auch vielen Dank!

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 21:02
von kaloschke
@peter-pan
Habe diesen hier, um im Flur über einen Shelly eine Steckdose einzuschalten.
motionsensor.png

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 21:15
von peter-pan
Den habe ich auch im Einsatz (mehrfach), wie du an dem Thing-Beispiel sehen kannst.

Ich habe aber eigentlich das Teil gemeint, dass den JSON-String "temp_outside" bzw. "temp_inside" ausgibt ;)

Re: MQTT funktioniert nicht (mehr)

Verfasst: 18. Nov 2024 21:30
von kaloschke
aquara.png
Das sind Aquara Sensoren