Wifi thermostat (Beok, Floureon, Beca Energy) component

Using the phone when the wifi icon on the thermostat display is blinking

I use the Room Heat (eu) app

@kirichkov
Another thing.
I had to repeat the phone procedure several times on Android. more than 5 times until it gets the IP.
On Apple it gets it first time.

Cheers,
us

1 Like

A thousand thanks for the fast responses and sharing your experience! Iā€™ll be trying again. Maybe itā€™s the thermostat thatā€™s buggy.

Iā€™ll have a look at this bug asap, I thing it is on the code :wink:
Thanks a lot for testing this.:smile:

You should have a manual with the thermostat. If not, you can found it there: http://www.beok-controls.com/yspic/2018040954638133.pdf

You have several step to follow (see 2. Connection Thermostat with Phone on the first page):

  1. Hold on Clock key, then press Power key.
  2. Go into Advanced Setting, press Menu key 9 times until FAC mode appears.
  3. When FAC appears, press UP key to change from 8 to 10 or 32.
  4. Then, press power off.
  5. Hold on Clock key, then press Power key again.
  6. At this time, wifi symbol will be twinkling quickly and frequently. It means, you can connect thermostat with phone now. When wifi symbol stop twinkling, it means thermostat is successfully connected with phone.

Hope it will help !

Cheers

2 Likes

Does this module allow to do any automations ?

As ideally I would like to reduce 2 degrees margin that my thermostat has, and reduce it just to half degree difference.

e.g. when setup temperature to 20
i would like it to start boiler at 19.5 and finish on 20.5 rather as it is now start at 19 and finish at 21 ?

Thanks for any advice.

@SirK79

I have no idea why do you want 1 degree hysteresis for a boiler. It will click your relay like crazy.
Eventually it will burn and crash.

But, here is the only way I know.
Unfortunately it involves some soldering.
The internal sensor has to be replaced with an external one.
Thus, you need to take off the internal sensor and solder in a 2 wire external one (from my measurements it is a 100K NTC, different than the ā€œtrueā€ external one which is 10K NTC).
Both sensors (the wires soldered one and the ā€œtrueā€ external one) should be placed together in the place on the boiler where they can measure the temp.
Set the sensor configuration to Internal control with external limit and hysteresis to 1.
Set the target temperature to the same value as external limit temperature.
Example target 21 degree, external limit temp 21 degree.
When the temperature raises, it never gets over 21 degrees because of the external temperature limit. At that point the relay is open.
When it drops under 20 it starts heating.
Bingo, you get your 1 degree hysteresis.
The only problem is that the external limit temp is whole integer.
You canā€™t do 19.5-20.5.

Cheers,
us

Sorry I forgot something very important.
You need to calibrate the sensor (the new one) very well compensating it with ā€œadjā€ = calibration. With less than 0.5 accuracy.

@uss @clementTal Thank you both for your help! It did take a number of tries but I managed to move the thermostat to the dedicated Wi-Fi for cheap Chinese devices AND integrate them with HASS! :bowing_man:

Iā€™m still unclear how these thermostats get their network preferences if they donā€™t create an AP, and have no network connectivity, but somehow it works. This is what was puzzling me. I guess you need to try a number of times (I used an iPhone) because of the Great Chinese Firewall. Had this issue before with the Xiaomi GW until I forced it to connect to Xiaomiā€™s Singapore server where setting it up was a breeze.

I have to add friendly_name: to my config file, i donā€™t think it liked name:

Blockquote
I have no idea why do you want 1 degree hysteresis for a boiler. It will click your relay like crazy.
Eventually it will burn and crash.

When I mean boiler in fact I mean home temperature, where to me variation between 19 - 21 is far too much. 19.1 is too cold but boiler is not even kicking in and then it will only switch off once you reach 21 that to me personally feels too warn.

Where my previous thermostat could efficiently operate between 19.5 - 20.5 providing comfortable temperature all the time.

Not even mentioning that once you switch it off at 21 degrees radiators are still hot that will take house temperature even higher.

As a side note, i had to change some of my nodered flows from testing for ā€œstate = autoā€ to ā€œstate = idleā€ as it was trying to set the mode every 15 seconds as the state wasnā€™t auto when being polledā€¦

Just to inform that Iā€™m experiencing same issue. I have 8 floor heatings with external sensor so this is quite problematic for me. Thanks though for awesome work here!

My testing, by default I want to have sen 1:

  • If I change temperature from Home Assistant -> sen 1 is changed to sen 0
  • If I change from manual to automatic (and otherwise) in Home assistant -> sen 0
  • If I power off from Home assistant and power on from Beok -app -> sen 1 stays
  • If I power off and power on (manual heating) in Home Assistant -> sen 0
  • If I power off and power on automatic in Home Assistant -> sen 1 seemed to stay first time but other times changed to sen 0

Edit: I want to have external_sensor (sen 1) always, not sen 2 as I wrote first. My mistake!

If youā€™re interested, you could try using mine component (https://github.com/algirdasc/hass-components/tree/master/floureon). It can control Floureon thermostats using PID algorithm, also Iā€™ve fixed constant settings reset when changing thermostat params. Itā€™s not perfect, but you could give it a shot.

@matti
From my experience, this is how it should work.

This is implemented here:

Cheers,
us

I made a mistake in my first post, sorry: I want to have sen 1 (external_sensor) always. I edited my previous post according to this.

Does this change the matter any way?

In my opinion if I choose external_sensor (sen 1) or internal sensor with external sensor limit (sen 2), Home Assistant should not change it to sen 0 -mode in any situation. This is security risk: external sensor reading is vital at least in my application, other wise the heating cables might overheat resulting to fire hazard if sen 0 is used.

Iā€™m not sure if I understand: the component itself acts as PID via home assistant and ā€œoverridesā€ the thermostats own control? Correct?

@matti
From what you say, you want the second working situation:

  1. External sensor
    In this mode the thermostat doesnā€™t take in consideration the internal sensor.
    Thus, the room_temp is irrelevant.
    current_temperature = external_temp , that is, the temperature read by the external sensor (the sensor situated outside the thermostat and linked to the connector found at the back of the thermostat)
    target_temperature is the temperature you set in manual mode or taken from the schedule in auto mode
    The thermostat tries to bring the current_temperature = external_temp to the target_temperature (taking into account the hysteresis).
    That means, it opens the valve until it gets there and then closes the valve.
    Independently, if the current_temperature = external_temp reaches the external_limit_temp it closes the valve, no matter what.

I didnā€™t check clemenTal version, if you use that one.
I know for sure that my version is right.
If you select external sensor, the hysteresis is done based of that external sensor reading.
Also, external limit temperature acts as a overheating protection (if reached, it shuts off the relay no matter what).

Cheers,
us

Well, yes and no. There are two modes:
Mode ā€œEcoā€ means Home Assistant will take control of your thermostat using PID algorithm. All controls made via thermostat will reset HomeAssistant thermostat mode to Manual/Auto.
Mode ā€œAuto/Manualā€ means that Home Assistant will not control thermostat, only update temperature sensor state and set target temperature on thermostat. Changing target temperature / mode via thermostat will set apropriate states on Home Assistant side.

I wrote this component to be able use PID algorithm or use native thermostat algorithms if needed.