Floor heat Thermostat

I am interested in this budget floor thermostat topic as well. But as @typeonegative I am using Hassio, so custom component seems to be only option for me. Any suggestions would be highly appreciated.

Hi Guys, I have Beok thermostat and Broadlink RM Pro. Do you have any suggestions how to pair?

Check out heatit’s z-wave controllers…

@ktpx Literally just searching for a z-wave solution to UFH controls and saw your link from only 13hrs ago, quite the coincidence!

Have you used any of their products? I’m looking to install 2-3 electric UFH matts, will probably use “warmup” or similar company. Preferably I would rather use a different controller, but their kits mostly come with their “smart” wifi version, we all know native z-wave is better though right :slight_smile:

Do you have any idea if these will be a correct replacement, if they would void warranties on the matt or could cause any other issues (using their own floor sensors etc) ?


No, I haven’t, but I’ve been thinking about using them in the new house, to replace the non smart ones that comes with the default install. Check compatibility with your mats/temp sensors (ask the manufacturer).

I manged to get my Flourean thermostat communicating with MQTT.

These are my notes when I instated it hope it helps someone.
Install Ubuntu on vmware workstation

install python2.7 sudo apt-get install python2.7
install setuptools sudo apt-get install python-setuptools
install git sudo apt-get install git-core

cd /usr/local/lib/python2.7/
sudo mkdir broadlink

cd /usr/local/lib/python2.7/broadlink
sudo git clone git://github.com/ptd006/python-broadlink
cd /usr/local/lib/python2.7/broadlink/python-broadlink
sudo python2.7 setup.py install
cd …
sudo git clone git://github.com/ralphm2004/broadlink-thermostat
sudo easy_install pip
sudo pip install paho-mqtt

cd /usr/local/lib/python2.7/broadlink/python-broadlink
sudo python2.7 setup.py install ( this seemed to fail but I cattied on anyway)

cd /usr/local/lib/python2.7/broadlink/broadlink-thermostat

sudo nano broadlink-thermostat.conf (change details for your MQTT server)

sudo python2.7 /usr/local/lib/python2.7/broadlink/broadlink-thermostat/broadlink-thermostat.py

Would not start so ran sudo pip install broadlink

sudo python2.7 /usr/local/lib/python2.7/broadlink/broadlink-thermostat/broadlink-thermostat.py

broadlink discover
found: cf407XXea34
PID child 887
Hysen heating controller
set time 5:29:38 5
cf40703XXa34 room_temp 21.0

Hi sorry for my english.

I try to connect with my BEOK BOT-313W in hassbian (hassbian have venv python) i exec this code:

sudo systemctl stop [email protected]
sudo su -s /bin/bash homeassistant
source /srv/homeassistant/bin/activate
mkdir repos
cd repos
git clone https://github.com/ptd006/python-broadlink.git
python setup.py install
git clone https://github.com/ralphm2004/broadlink-thermostat.git
–Install mosquito
sudo hassbian-config install mosquitto
sudo systemctl start mosquitto.service
–Update apt-get
sudo apt-get update
–Install PIP
sudo apt-get install python-pip
pip install paho-mqtt
edit broadlink-thermostat.conf with mosquito access data
pip install broadlink
python2.7 broadlink-thermostat.py
i receive “broadlink discover” and nothing more
What can i do


Now i solved my problem.

In the configuration of my BEOK BOT-313W there are one option “Sensor mode setting” and when i click in “Out-s control” or “in-s and out-s control” i solved my problem and receive ip and temperature of the room.


I change configuration.yaml with this value:

Work fine!

platform: mqtt
name: Calefaccion
- ‘0’
- ‘1’
current_temperature_topic: /broadlink/43df7534ea34/room_temp
#target_temp_step: 0.5
temperature_command_topic: /broadlink/43df7534ea34/cmd/set_temp
temperature_state_topic: /broadlink/43df7534ea34/thermostat_temp
mode_command_topic: /broadlink/43df7534ea34/cmd/set_mode
mode_state_topic: /broadlink/43df7534ea34/auto_mode
power_command_topic: /broadlink/43df7534ea34/cmd/set_power
power_state_topic: /broadlink/43df7534ea34/power
payload_on: ‘1’
payload_off: ‘0’

I am trying to use script to set a schedule problem is it wont accept the payload.
whats the best way to get round this, it seems to stop on the"quotes"

alias: Weekend
service: mqtt.publish
topic: “/broadlink/cf4070xxxx34/cmd/set_schedule”
payload: “’[[{“start_hour”: 6, “temp”: 22.5, “start_minute”: 0}, {“start_hour”: 6, “temp”: 15.0, “start_minute”: 55}, {“start_hour”: 11, “temp”: 15.0, “start_minute”: 30}, {“start_hour”: 17, “temp”: 22.0, “start_minute”: 30}, {“start_hour”: 20, “temp”: 23.0, “start_minute”: 0}, {“start_hour”: 23, “temp”: 15.0, “start_minute”: 10}], [{“start_hour”: 8, “temp”: 22.0, “start_minute”: 0}, {“start_hour”: 23, “temp”: 15.0, “start_minute”: 0}]]’”

sorted it , needed to use data_template and payload_template

alias: WeekDay
service: mqtt.publish
topic: “/broadlink/cf4070xxxx34/cmd/set_schedule”
payload_template: ‘[[{“start_hour”: 6, “temp”: 22.5, “start_minute”: 0}, {“start_hour”: 6, “temp”: 15.0, “start_minute”: 55}, {“start_hour”: 11, “temp”: 15.0, “start_minute”: 30}, {“start_hour”: 18, “temp”: 22.0, “start_minute”: 30}, {“start_hour”: 20, “temp”: 23.0, “start_minute”: 0}, {“start_hour”: 23, “temp”: 15.0, “start_minute”: 10}], [{“start_hour”: 8, “temp”: 22.0, “start_minute”: 0}, {“start_hour”: 23, “temp”: 15.0, “start_minute”: 0}]]’

when the thermostat is heating and you see the 3 vertical waves icon on your thermostat indicating it is heating, this is the mode, either 0 or 1, I presume, but this state is not send to home assistant, does this work for you?

if so how did you make this work?

I only always see a 0 before the temperature in hass, the 0 never changes, even when the thermostat is heating.

The mode 0 indicate manual mode and 1 indicate auto mode, used in this commands :
mode_command_topic: /broadlink/43df7534ea34/cmd/set_mode
mode_state_topic: /broadlink/43df7534ea34/auto_mode

The 3 vertical waves icon i presume “on” when room_temp is less than set_temp, in history graph you can see it.

But I think no exits any state for 3 vertical waves

You can look all states in https://github.com/ralphm2004/broadlink-thermostat

/broadlink/xxxxxx34ea34/dayofweek 1
/broadlink/xxxxxx34ea34/remote_lock 0
/broadlink/xxxxxx34ea34/osv 42
/broadlink/xxxxxx34ea34/sec 36
/broadlink/xxxxxx34ea34/external_temp 0.0
/broadlink/xxxxxx34ea34/fre 0
/broadlink/xxxxxx34ea34/min 56
/broadlink/xxxxxx34ea34/unknown 0
/broadlink/xxxxxx34ea34/sensor 0
/broadlink/xxxxxx34ea34/loop_mode 1
/broadlink/xxxxxx34ea34/room_temp 14.5
/broadlink/xxxxxx34ea34/power 1
/broadlink/xxxxxx34ea34/thermostat_temp 5.0
/broadlink/xxxxxx34ea34/temp_manual 0
/broadlink/xxxxxx34ea34/room_temp_adj 0.0
/broadlink/xxxxxx34ea34/active 0
/broadlink/xxxxxx34ea34/poweron 0
/broadlink/xxxxxx34ea34/auto_mode 0
/broadlink/xxxxxx34ea34/svl 5
/broadlink/xxxxxx34ea34/hour 22
/broadlink/xxxxxx34ea34/svh 35
/broadlink/xxxxxx34ea34/dif 2

1 Like

thanks for this usefull info…

I think the:
/broadlink/xxxxxx34ea34/active 0

is the state if it is heating or not…
but I don’t see how to get that state in relation to the climate mqtt component in hass?

does anyone know how to get this state with mqtt?

Duh, if you change:

mode_command_topic: /broadlink/xxxxxx34ea34/set_mode



in your climate.yaml you will get the state if the thermostat is heating or not, now you can send messages whenever the thermostat is heating, exactly like I wanted :smiley:

now it must also be possible somehow to display a flame icon or not in front of the temperature on the hass frontend whenever the thermostat is heating… because the 0 changes to 1 when the thermostat is heating.

1 Like

I think you can use a sensor tag, something like this:

platform: mqtt
name: calefaccion_activa
state_topic: ‘/broadlink/43df7534ea34/active’
payload_available: ‘1’
payload_not_available: ‘0’

You can do automations to the sensor states and you can see history of the sensor.

I use too, two switch for power and auto/manual mode:


  • platform: mqtt
    name: Calefaccion Auto
    command_topic: /broadlink/43df7534ea34/cmd/set_mode
    state_topic: /broadlink/43df7534ea34/auto_mode
    payload_on: ‘1’
    payload_off: ‘0’

  • platform: mqtt
    name: Calefaccion
    command_topic: /broadlink/43df7534ea34/cmd/set_power
    state_topic: /broadlink/43df7534ea34/power
    payload_on: ‘1’
    payload_off: ‘0’

And the climate tag like this:

platform: mqtt
name: Temperatura
- ‘0’
- ‘1’
current_temperature_topic: /broadlink/43df7534ea34/room_temp
target_temp_step: 0.5
temperature_command_topic: /broadlink/43df7534ea34/cmd/set_temp
temperature_state_topic: /broadlink/43df7534ea34/thermostat_temp
mode_command_topic: /broadlink/43df7534ea34/cmd/set_mode
mode_state_topic: /broadlink/43df7534ea34/auto_mode
power_command_topic: /broadlink/43df7534ea34/cmd/set_power
power_state_topic: /broadlink/43df7534ea34/power
payload_on: ‘1’
payload_off: ‘0’


Hi there, could anybody just write me step by step guide how to connect and set my thermostat with home assistant? I completely noob in this, just bought Raspberry Pi 3 yesterday, flash it and now I can access configutation.yaml from windows 10, but thats all. I tried add MQTT component, but I dont know how to set it up. My wifi thermostat (BEOK TDS21-EP) is working well with default mobile APP. I can see its MAC adress and IP adress from my router…

I would like to achive automatiation something like turn off the thermostat when I leave home.

So I’ve wrote a beta custom_component for Hassio to drive these thermostats

Im looking for a thermostat ** using DRY CONTACT 220v, position NORMALLY OPEN (

TODAY I have this simple one - see at the end model 54183

I would like to replace with one like the one discussed above
See at the end of the pagem model GA with N wire in sockets 2 AND 3.

ANY EPERIENCE uin using these models “GA” with N wire on sockets 2 AND 3 ?


@Sorin_Paun I tried Ine of these. I never got to change the IP adress / assign IP from dhcp and thus abandonded testing with the script.