OH3-Update: MQTT funktioniert nur teilweise

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
emmdie
Beiträge: 6
Registriert: 3. Apr 2023 14:15
Answers: 1

OH3-Update: MQTT funktioniert nur teilweise

Beitrag von emmdie »

Hallo zusammen,

nachdem ich viele Stunden gesucht, gelesen und probiert habe, fällt mir nichts mehr ein.

Zur Vorgeschichte:
- Habe ein Update von OH2.x (weiß nicht mehr genau, welche Version) auf OH3 gemacht (HW: Raspi 3B+).
- Vieles habe ich wiedergefunden, manche Sachen auch neu angelegt (z. B. Räume als Standorte).
- Das MQTT-Binding hat gefehlt, ich habe es nachinstalliert.
- MQTT-Broker ist Mosquitto und läuft auf einem anderen Raspi, dort hat sich nichts geändert.
- Die Definition zweier Tasmota-Steckdosen wurde übernommen. Eine davon hatte ich versehentlich gelöscht und habe sie neu angelegt. Beide funktionieren per MQTT. Sie lassen sich schalten und übermittlen den korrekten Status. Deshalb gehe ich davon aus, dass die Kommunikation mit dem Broker funktioniert.

Zum Problem:
- Ich hole vom MQTT-Broker die Werte für Heizungstemperaturen ab. Thing ist "Heizung", Channel sind "Bad", "Flur" usw. Die Channel waren nach dem Upgrade vorhanden, OH hat sie also mitgenommen. Die Werte werden von einem anderen Raspi dort "eingeliefert" und lassen sich auch abrufen (ich benutze z. B. den MQTT-Explorer).
- Am OH3 fand ich zu Beginn Fehlermeldungen, dass der per MQTT abgeholte Wert nicht "number" sei. Das lag an einem führenden Leerzeichen, das bisher den OH2 nicht gestört hatte. Ich entferne es in jedem Channel per Regex in der advanced config: "REGEX: [0-9]*\.[0-9]+". Danach verschwanden die Einträge im Log, das war wohl richtig.
- Um nun an die Werte zu kommen, linke ich ein Item an jeden Channel (new item). Ich lasse alle abgefragten Werte so, wie vorgeschlagen (Name, Label, Type: number, profile: Standard)

Aber: da kommt nichts! Ich habe an den Channels viel probiert, auch ein neues Thing angelegt mit neuem Channel und neuem Item - nix! OH scheint beim MQTT nichts abzuholen, denn ich vermisse z. B. die Logeinträge der Art "Wert x hat sich geändert auf y", wie ich sie von OH2 kannte.

Jetzt weiß ich nicht mehr, wo ich noch suchen soll. Der Broker funktioniert (s. o., Steckdosen). Die Channels hat OH3 selbst aus meiner OH2-Konfig erzeugt, auch ein neu angelegter ändert nichts. Was kann ich beim "Add Link to Item" falsch machen? Oder muss ich ganz woanders suchen?

HILFE! Und danke im Voraus.

Gruß
emmdie
von emmdie » 3. Apr 2023 19:20
Also, ich habe:
- MQTT-Bridge pausiert: ich konnte sehen, wie sie sich am Broker ab- und wieder anmeldet.OK
- Selbst publiziert: nichts (sichtbar) angekommen
- Anführungszeichen habe ich nicht angegeben, aber REGEX: davorgeschrieben, da ich die Regex im Channel angelegt habe.
- zusätzlicher String-Channel: JETZT kommen wir der Sache näher: Wert wird sofort angezeigt, wenn ich einen neuen publiziere, wird auch der angezeigt!
- zweites Item verlinkt: Type number, Profile regex und in der Regex-Zeile nur (\d*\.\d*), diesmal ohne REGEX: davor, weil es ja schon in der REGEX-Zeile steht - läuft!

Mir ist es relativ egal, ob ich die Regex im Channel oder im Item angebe, solange es funktioniert - puh! (Verstanden hätte ich es trotzdem gern)

Jetzt steht noch die Persistence an. Irgendwo hatte ich gelesen, dass in OH3 alle num. Werte automatisch gespeichert werden, wenn die Pers. eingerichtet ist, das sieht aber bisher nicht so aus.

Danke dir vielmals!
Gehe zur vollständigen Antwort

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von udo1toni »

Mal ganz platt... hast Du REGEX auch installiert?

Ach so, wo ich gerade drauf schaue... Mutmaßlich fehlen da Klammern... Probiere es mal so:

Code: Alles auswählen

REGEX: (\d*\.\d*)
\d sollte das gleiche sein wie [0-9]
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

emmdie
Beiträge: 6
Registriert: 3. Apr 2023 14:15
Answers: 1

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von emmdie »

Danke für die schnelle Reaktion!

REGEX ist installiert. Ich hatte auch schon Zweifel an meiner Expression und habe auch da schon vieles probiert (z. B. nicht die Zahl auswählen, sondern Space entfernen). Alles ohne Erfolg.

Dein Vorschlag ist schon eleganter formuliert - aber hat das Rätsel leider auch nicht gelöst.

emmdie
Beiträge: 6
Registriert: 3. Apr 2023 14:15
Answers: 1

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von emmdie »

Was mir noch einfällt: Ich weiß gar nicht, wie lange ich auf den Erfolg nach einer Änderung der Konfig warten muss: sollte sich direkt nach dem Klick auf "Done" was tun? Oder erst, wenn ein neuer Wert vom MQTT abgeholt wird? Oder muss ich einen Dienst neu starten?

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von udo1toni »

openHAB holt ja nichts. Wenn openHAB startet (kannst Du auch emulieren, indem Du die mqtt Bridge kurz pausierst - dann meldet sich openHAB am Mosquitto ab und nach Aufheben der Pause wieder an), wird Mosquitto alle RETAIN-Werte der abonnierten Topics zustellen. Alle anderen Werte kommen nur dann, wenn der zugehörige Client einen Wert schickt.
Du kannst aber natürlich problemlos im mqtt Explorer einfach auf dem entsprechenden Topic publizieren, notfalls die aktuelle Payload.
Es spielt für Mosqitto keine Rolle, welcher Client (und mqtt Explorer ist auch einer) ein Topic publiziert.

EDIT: Die Anführungszeichen hast Du nicht mit eingegeben, oder?

Du kannst auch einfach zum testen einen zusätzlichen string Channel anlegen und dort das Topic laden, um zu schauen, was da tatsächlich ankommt. Dort kannst Du auch das REGEX ausprobieren.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

emmdie
Beiträge: 6
Registriert: 3. Apr 2023 14:15
Answers: 1

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von emmdie »

Also, ich habe:
- MQTT-Bridge pausiert: ich konnte sehen, wie sie sich am Broker ab- und wieder anmeldet.OK
- Selbst publiziert: nichts (sichtbar) angekommen
- Anführungszeichen habe ich nicht angegeben, aber REGEX: davorgeschrieben, da ich die Regex im Channel angelegt habe.
- zusätzlicher String-Channel: JETZT kommen wir der Sache näher: Wert wird sofort angezeigt, wenn ich einen neuen publiziere, wird auch der angezeigt!
- zweites Item verlinkt: Type number, Profile regex und in der Regex-Zeile nur (\d*\.\d*), diesmal ohne REGEX: davor, weil es ja schon in der REGEX-Zeile steht - läuft!

Mir ist es relativ egal, ob ich die Regex im Channel oder im Item angebe, solange es funktioniert - puh! (Verstanden hätte ich es trotzdem gern)

Jetzt steht noch die Persistence an. Irgendwo hatte ich gelesen, dass in OH3 alle num. Werte automatisch gespeichert werden, wenn die Pers. eingerichtet ist, das sieht aber bisher nicht so aus.

Danke dir vielmals!

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von udo1toni »

Eventuell hast Du es nur im falschen Feld eingetragen? Es gibt das Feld Incomming Value Transformations, da gehört der Ausdruck von oben rein. Was auch noch möglich ist: das Leerzeichen wird fälschlicherweise ignoriert. Das könnte man mit einem [ ] kompensieren, also

Code: Alles auswählen

REGEX:[ ](\d*\.\d*)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

emmdie
Beiträge: 6
Registriert: 3. Apr 2023 14:15
Answers: 1

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von emmdie »

Das richtige Feld hatte ich schon erwischt, aber am Leerzeichen könnte es gelegen haben.

Jetzt habe ich die Regex in den Items als Profil und bekommen Werte, so lasse ich das.

Ich würde jetzt meinen Beitrag von gestern, 19:20, als Antwort markieren, da er für Leute mit ähnlichem Problem wohl am meisten hergibt. OK?

Benutzeravatar
udo1toni
Beiträge: 15247
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von udo1toni »

Ja, sicher :)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

emmdie
Beiträge: 6
Registriert: 3. Apr 2023 14:15
Answers: 1

Re: OH3-Update: MQTT funktioniert nur teilweise

Beitrag von emmdie »

Persistence läuft jetzt auch. Da stand noch eine alte .persist im Weg.

So langsam macht auch OH3 Spaß :D Danke nochmals.

Antworten