Floureon / Beok (and other Broadlink based) thermostat component

Ok then the code is the follow:

    - platform: floureon
      name: ZonaNotte
      mac: 44:ee:33:77:00:11
      turn_off_mode: turn_off
      turn_on_mode: 24.5
      use_external_temp: false

Is this correct?


Thanks for your time & efforts! I can confirm that this module works with Beok TDS21WIFI-EP electric floor thermostat.

At the same time, I was unable to find proofs of any working with HA (and available for ordering on aliexpress) Fan coil Thermostats. So I’ve ordered 3 units of Beok TGT70WIFI-AC2 assuming, somehow and someday it should also work with HA.

Unfortunately it doesn’t work as intended “out of the box”, but it does respond to commands using this module (switching to some error mode). All I need is switching of 3 fan speeds (manual/schedule/logical thermostat using external temp. sensors). Will try to write own code using your example, but don’t even know when will have time to start.

Yes. Does it work as it should now?

Yes, work correctly now, thanks so much friend

I am not familiar with fan controlling units. But I suppose it should be similar to thermostat ones. Could you elaborate what errors / results you getting using switch / climate component?

Hi, i get an error: Integration floureon not found

i guess i’m doing something wrong with the pathHA

You’ve need to put all those files into custom_components/floureon, not custom_components/climate/floureon

i also try this but i get this error: Platform not found: climate.floureon

on configuration.yalm i have:


  • platform: floureon
    name: Termostato_Casa
    mac: xx:xx:xx:xx:xx
    use_external_temp: false

maybe i have to force somehow homeassistant to read custom_components folder?


HI all.
I have a BEOK BOT 313 thermostat and it is working fine. The question is regarding the particular thermostat. Has anyone managed to make it work with 0.5 degrees ? I mean that right now if I set the temperature at 21 celcius it has to go up to 22.5 in order to stop the heating. I would prefer to stop at 21.5. I don’t think it can be set to 0.5 but thought it would be better to ask.

I need to double check, but my floureon thermostats works the same way. Minimum hysteresis is 0.5, so 21.5 would be upper limit, but since temperature measured in 0.5 increments, temperature needs to reach 22.0 to turn heating off, therefore real hysteresis is 1 degree. You could try to workaround this problem using home assistant generic climate component to switch on and off floureon switch component.

Thanks for the prompt reply!
Is there any chance to help me a bit with an example code Please?

  - platform: generic_thermostat
    name: Study
    heater: switch.study_heater
    target_sensor: sensor.study_temperature
    min_temp: 15
    max_temp: 21
    ac_mode: false
    target_temp: 17
    cold_tolerance: 0.3
    hot_tolerance: 0
      seconds: 5
      minutes: 3
    initial_hvac_mode: "off"
    away_temp: 16
    precision: 0.1

this is my flureon config

  - platform: floureon
    host: 192.168.1.xxx
    mac: '24:DF:A7:xx:8C:xx'
    name: Beok_Thermostat 
    use_external_temp: false

which switch should i use?

edit: … climate.beok_thermostat
this one?

Hi all and happy new year!

Does anyone know if this component is compatible with this, or this?


I did it work. My problem was an old HA version. With 0.103.5 it worked. Thanks!

I have the following and it is working.


The devices in your link are not wifi enabled (i think) so they won’t work

First, you need to setup your thermostat as a switch (for available options please lookup at github page):

  platform: floureon
  name: livingroom_floor
  mac: 78:0f:77:00:00:00
  turn_off_mode: min_temp
  turn_on_mode: max_temp  
  use_external_sensor: false

Now with temperature sensing there are few options. First - you can use built in thermostat temperature sensor, then you’ll need to create template sensor:

  - platform: template
        value_template: '{{ states.climate.livingroom_floor.attributes.current_temperature if  states.climate.livingroom_floor else "unavailable" }}'
        unit_of_measurement: °C

and now you have both sensor & switch to configure your generic climate as you wish.


As soon as I paste the files in /config/custom_components/floureon/ I receive the following error at HA restart (using Hassio):

‘ERROR (SyncWorker_5) [homeassistant.loader] Error parsing manifest.json file at /config/custom_components/floureon/manifest.json: Expecting value: line 7 column 1 (char 6)’

In this case, I didn’t yet enter the lines in configuration.yaml. As soon as I do that and restart, HA doesn’t start anymore…

Any clue ?

Hi, I have the beok 313 and so far it works really fine with climate component.

this is my actual config:
platform: floureon
name: Termostato
mac: 78:0F:77:xx:xx:xx
use_external_temp: false

What about schedule configuration?
Is it possible to control it with HA?



I’ve got a Decdeal thermostat working with Beca Smart app:

I’ve added the floureon component, I see it on HA but I’m not able to control the thermostat.

Have anybody tried with this device? have you suggestions?

Thank you !


I am trying to setup a Beok TDS21-EP Thermostat on Home Assistant (Hassio) version: 0.105.2

The thermostat is correctly recognized when I configure it as sensor but it doesn’t seem to work when configured as a switch.

I found this in the error log:

Mon Feb 10 2020 22:08:09 GMT+0100 (Central European Standard Time)
Unable to update from sensor: could not convert string to float: ‘unavailable’

What I want to achieve is this scenario:

  • I have 3 electric heating panels in one room, each individually connected to a fibaro z-wave switch which is controlled via home assistant.
  • I would like to use the Beok thermostat module to manage the temperature in the room by controlling all 3 electric heaters simultaneously via an automated schedule.
  • I would also like to use the Beok Thermostat to manually change the temperature in the room if needed.

One ‘stupid’ question that keeps haunting me is ‘How does the Beok thermostat actually send a command to my heating panels when it is time to raise or lower the temperature’ ? I just can’t seem to understand how all these elements should be connected to work together.

Thanks in advance for any further explanation -:slight_smile:

Kind regards,


I’ve got this message in the developer log, what shall I do?
“You are using a custom integration for floureon which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant.”