Bosch Thermostat II via MQTT

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
featboi
Beiträge: 5
Registriert: 26. Apr 2022 08:46
Answers: 0

Bosch Thermostat II via MQTT

Beitrag von featboi »

Moin zusammen,

ich bin aktuell relativ neu in die Materie Openhab eingetaucht.
Derzeit habe ich bereits einige Shellys und Philips HUE Lampen via "mosquitto2mqtt" verbunden.

Nun habe ich mir 6 Bosch Thoermosatet gekauft (BTH-RA) und bereits eingebunden.
Die Solltemperatur kann ich bereits steuern.

Probleme habe ich bei der Anzeige der Ist-Temperatur und der Batterie. Hier werden mir keine Werte angezeigt.
Kann mir hierbei jemand helfen?

Thing

Code: Alles auswählen

Thing mqtt:topic:******:Thermostat_Esszimmer "Thermostat_Esszimmer" (mqtt:broker:*******)
{
	Channels:
    		Type number : temperature 	"Raum Temperatur"   		[ stateTopic="zigbee2mqtt/Thermostat_Esszimmer/local_temperature" ]
    		Type number : setpoint    	"Gewünschte Temperatur" 	[ commandTopic="zigbee2mqtt/Thermostat_Esszimmer/setpoint-temperature", formatBeforePublish="{ \"occupied_heating_setpoint\":\"%s\"}", transformationPattern="JSONPATH:$.occupied_heating_setpoint" ]
		Type number : battery     	"Batterie"     			[ stateTopic="zigbee2mqtt/Thermostat_Esszimmer/battery" ]
}
Item

Code: Alles auswählen

Group Thermostat_Esszimmer    "Thermostate_Esszimmer"                               (Esszimmer)                             ["HVAC"]
Number:Temperature   	temperature    "Esszimmer_Temperatur [%.1f °C]"        	<temperature>   (Temperature, Thermostat_Esszimmer)     ["Measurement", "Temperature"] { channel="mqtt:topic:******:Thermostat_Esszimmer:temperature" [scale="Celsius"] }
Number               	setpoint       "Esszimmer_Setpoint [%.1f °C]"		<temperature>   (Thermostat_Esszimmer)                  ["Measurement", "TargetTemperature"] { channel="mqtt:topic:******:Thermostat_Esszimmer:setpoint" [scale="Celsius"] }
Number:Dimensionless 	batterie       "Esszimmer_Batterie [%d %%]"        	<battery>       (Battery, Thermostat_Esszimmer)         ["Battery"] { channel="mqtt:topic:******:Thermostat_Esszimmer:battery" }
Danke euch =)

Viele Grüße
FeatBoi

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

Re: Bosch Thermostat II via MQTT

Beitrag von udo1toni »

Herzlich willkommen im openHAB Forum!
featboi hat geschrieben: 14. Sep 2023 12:58 Derzeit habe ich bereits einige Shellys und Philips HUE Lampen via "mosquitto2mqtt" verbunden.
mosquitto ist der Broker, Du meinst mit Sicherheit zigbee2mqtt ;)

Bezüglich des Thermostats:
MQTT nutzt gewöhnlich gerichtete Kommunikation, das heißt, ein Topic wird nur zum Senden verwendet, ein anderes Topic wird nur zum Empfang verwendet.
Nach der Doku gibt es z.B. ein topic .../setpoint-temperature/set um die Temperatur zu setzen. Das Topic ohne /set liefert die Temperatur (in welchem Format auch immer). Der Soll-Channel sähe also so aus:

Code: Alles auswählen

Type number : setpoint    "Gewünschte Temperatur" [ stateTopic="zigbee2mqtt/Thermostat_Esszimmer/setpoint-temperature", 
                                                    commandTopic="zigbee2mqtt/Thermostat_Esszimmer/setpoint-temperature/set", 
                                                    formatBeforePublish="{ \"occupied_heating_setpoint\":\"%s\"}", 
                                                    transformationPattern="JSONPATH:$.occupied_heating_setpoint" ]
Wobei nicht mal sicher ist, ob das Topic überhaupt JSON liefert, das solltest Du am besten über einen MQTT Sniffer klären (z.B. MQTT Explorer)
Der MQTT Explorer ist auch hilfreich, um das Format der anderen Channel zu klären. Die von mir genutzten Zigbee Geräte arbeiten alle ausschlioeßlich mit JSON Payloads, das mag aber individuell unterschiedlich sein.

Ich möchte aber empfehlen, dass Du die Number Channel jeweils mit einer Unit versiehst (ich gehe von openHAB4 aus), z.B.

Code: Alles auswählen

Type number : temperature "Raum Temperatur" [ stateTopic="zigbee2mqtt/Thermostat_Esszimmer/local_temperature", unis="°C" ]
Einen solchen QuantityType Channel kannst Du dann direkt mit einem passenden Item verknüpfen:

Code: Alles auswählen

Number:Temperature temperature "Esszimmer_Temperatur" <temperature> (Temperature, Thermostat_Esszimmer) ["Measurement", "Temperature"] { channel="mqtt:topic:******:Thermostat_Esszimmer:temperature", unit="°C", stateDescription""[pattern="%.1f °C"] }
Natürlich unter der Voraussetzung, dass die Daten schon korrekt im Channel ankommen.
Wo kommt denn das scale="Celsius" her? Mir ist kein solcher Parameter bekannt...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

featboi
Beiträge: 5
Registriert: 26. Apr 2022 08:46
Answers: 0

Re: Bosch Thermostat II via MQTT

Beitrag von featboi »

Moin,

bitte entschuldige meine späte Aantwort. Die Probleme sind behoben. Danke =)

Antworten