OpenTherm Gateway binding

Hi Arjan,

It is not so much about setting TT And TC and the same time. I use TT when coming home early, so the house is warm when I arrive. TC I use when I have left the house but forgot to turn the heating off.

So what you would see in my screenshot are controls for TT as you see now and another selection item for TC.

Regards Han

Right, with ‘at the same time’ I meant without having to change the configuration settings. And from what I understand that’s what you would prefer, hence the use of two channels. Anyway, that’s what I’m implementing now :slight_smile:

Another thing I noticed through the logs, is that in some cases more than one background thread for communication to the OTGW is started. While this may not affect the functionality of the binding, it does take up resources and opens sockets unnecessarily. So I’m currently changing the way the background thread is started, in an effort to make sure only one thread is started at a time.

I’ve uploaded a new version (0.5.0) with separate channels for TemperatureTemporary and TemperatureConstant. I Also changed a few things regarding the creation of the background thread.

Please download the latest version and let me know if you find any issues.


1 Like


finaly got it work, I don’t know why but its working now :slight_smile:

I got yesterday my raspi and with this its working.

Is there a way to import you demo sitemap and items?
I have already imported the sitemap and items into the right folders.

Yours Alex

Hi Alex,

Glad you got it working!

I am not really sure what you mean by importing the demo sitemap and items. If you put the .items and .sitemap files in the correct folders, openHAB will automatically load them. On my setup, the correct folders would be /etc/openhab2/items/ and /etc/openhab2/sitemap/, yours could be different though.

Hi Arjen,

works like a charm:

2018-10-14 10:50:07.360 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Received channel: openthermgateway:otgw:1:temperatureconstant, command: 15
2018-10-14 10:50:07.363 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Sending message: TC=15
2018-10-14 10:50:07.390 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Received message: TC: 15.00
2018-10-14 10:50:07.940 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Received message: T90395A00
2018-10-14 10:50:08.079 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Received message: B60395000

2018-10-14 11:26:10.074 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Received channel: openthermgateway:otgw:1:temperaturetemporary, command: 20
2018-10-14 11:26:10.075 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Sending message: TT=20
2018-10-14 11:26:10.102 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Received message: TT: 20.00
2018-10-14 11:26:10.187 [DEBUG] [eway.handler.OpenThermGatewayHandler] - Received message: B40000200

regards, Han

Great! If you have any ideas to further improve the binding, let me know.

Hey Arjen,

atm I am very happy with the binding. It covers all I want. If I can come up with something I will definitely let you know!

I am not so happy with the way I can program the setpoints in the UI (selection item). It would have been nice if the UI would have offered something like a spinning wheel to set the setpoint value, but then there is the problem that if you want to remove the setpoint one would have to send “0”.

Thanks for the great work in solving this longstanding issue for me!!

kind regards,


Hi Han,

Would it be an idea to use the wheel to set the desired room temperature and use a button to send the 0 degrees for reset ? So two items that act on the same channel…

Hi Arjen,

that would be a solution but there is no “wheel” like function :sleepy:



in the demo.items a " is missing inside de otgw declaration:




1 Like

Hi everyone,

Version 0.5.0 works also perfect for me !
Thanks Arjen !

@Han, Is it possible to share your sitemap ?
I’m curious to know how do you managed the color indication for the value update …

Kind regards,



Number Sensor_VH_Kitchen_Temperature_iSense "Keukentemperatuur (iSense) [%.1f °C]" <temperature> (gCV) 				// Room temperature coming from iSense thermostat
	DateTime Sensor_VH_Kitchen_Temperature_iSense_LastUpdate "Last Update [%1$ta, %1$td-%1$tm %1$tT]" <time> (gCV)


Text item=Sensor_VH_Kitchen_Temperature_iSense valuecolor=[Sensor_VH_Kitchen_Temperature_iSense_LastUpdate=="NULL"="#808080",Sensor_VH_Kitchen_Temperature_iSense_LastUpdate>300="#ff0000",Sensor_VH_Kitchen_Temperature_iSense_LastUpdate>150="#ffa500",Sensor_VH_Kitchen_Temperature_iSense_LastUpdate<=150="#008000"] 


rule "OTGW_Temperature"
    Item Sensor_VH_Kitchen_Temperature_iSense received update
    Sensor_VH_Kitchen_Temperature_iSense_LastUpdate.postUpdate( new DateTimeType() )

kr Han

Hi Arjen, I have it working with the SMD version of the gateway. But currenlty i’m not able to control the Heating it looks like it only reads information through Opentherm.

Any Suggestions? also it says my water pressure is 6 bar.


Thanks for sharing Han,

The Items and Rules works perfect, but I have problems with the Sitemap.
The Sitemap won ’t load with the expression for the color setting, there is something wrong with the calculation …

Any suggestion ?



Hi Mic,

Can you try setting the room temperature setpoint using the otmonitor tool that is available for download at ?

If that works, please enable debug logging in openHAB (scroll up for instructions), change the setpoint and then post the log here.

Also, please check the version number of the binding to make sure you have the latest version.

(this screenshot shows 0.4.0, but the latest version is infact 0.5.0…)

Hi Arjen,

Thanks for the quick response. I checked otmonitor and also their a cannot change the room temperature setpoint. I’m using the OTGW standalone currently(almost standalone its connected with a Qubino PWM thermostat. I do see the in the logging that it should do something but no change at all. Even in the debug logging of Openhab i can see the adjustment i try to make within otmonitor. What i can change in otmonitor is the control setpoint. But this does not work from Openhab(loggin attached),

error log:
00:17:54.706 [INFO ] [smarthome.event.ItemCommandEvent ] - Item ‘ControlSetpoint’ received command 70
00:17:54.722 [INFO ] [smarthome.event.ItemStateChangedEvent] - ControlSetpoint changed from 10.0 to 70
00:17:55.233 [INFO ] [smarthome.event.ItemStateChangedEvent] - BoilerWaterTemperature changed from 43.0 to 42.0
00:17:56.242 [INFO ] [smarthome.event.ItemStateChangedEvent] - ControlSetpoint changed from 70 to 10.0

00:14:22.417 [INFO ] [smarthome.event.ItemCommandEvent ] - Item ‘ControlSetpoint’ received command 50
00:14:22.427 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received channel: openthermgateway:otgw:4732db64:controlsetpoint, command: 50
00:14:22.440 [INFO ] [smarthome.event.ItemStateChangedEvent] - ControlSetpoint changed from 10.0 to 50
00:14:22.981 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: R007B0000
00:14:23.087 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: BC07B0000
00:14:24.012 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: R00120000
00:14:24.203 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: BC0120600
00:14:24.208 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘waterpressure’: 6.0
00:14:25.047 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: R80000100
00:14:25.210 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: BC0000102
00:14:25.218 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘ch_enable’: ON
00:14:25.229 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘dhw_enable’: OFF
00:14:25.240 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘ch_mode’: ON
00:14:25.254 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘dhw_mode’: OFF
00:14:25.271 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘flame’: OFF
00:14:26.086 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: R80190000
00:14:26.220 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: BC0192300
00:14:26.225 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘flowtemp’: 35.0
00:14:27.126 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: R10010A00
00:14:27.233 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received message: BD0010A00
00:14:27.242 [DEBUG] [teway.handler.OpenThermGatewayHandler] - Received update for channel ‘controlsetpoint’: 10.0

Also i notice all the strange messages is this normal (R00120000)?


ps i run 0.5.0

Hi Mic,

The messages like R00120000 is the raw data received from the gateway. They are parsed by the binding using the opentherm specifications and then linked to the channels to update the value. So yes, it’s normal that you see these messages when the loglevel is set to DEBUG. Using the otmonitor, you should see the exact same messages in the log and also the meaning of these messages.

I am not sure why you are not able to set the setpoint values using either otmonitor or openHAB. I would expect to see at least something like “Sending message: TT=21”, or “Unable to send message: TT=21” but your log doesn’t show anything :roll_eyes:

Perhaps the gateway is in monitor mode, instead of gateway mode. In the Options -> Miscellaneous page of the otmonitor (F7) you can press Gateway button which should show a GW=1 command being sent to the gateway. Can you try that to see if that makes any difference?


I have removed some cut & paste errors