Hassio + with EQ3 Bluetooth Smart Thermostats

I will get back to you, but as I’m on the road it might take a few days.
Ysbrand

@YJB
Thank you, Ysbrand!
I will try to figure out some of it by then. I thought I could build btsimonh 's firmware using gitpod, but either I need to set a different variant than tasmota32 or tasmota32-bluetooth, or I am doing something wrong. The two builds I did compile with gitpod both did not now the command “trv devlist”.
I just started platformio run -e tasmota32-bluetooth

I have an EQ3 bluetooth thermostat and try to use it with hassio on a raspberry pi 3. And can see the eQ-3s in the BLE configuration.

Hi,

We’re still working on a PR (we only did the BLE part earlier this year as it was the foundation for the EQ3 stuff).

The current EQ3 version is available from https://github.com/btsimonh/Tasmota. branch EQ3-2021-04-08) You will need to build it yourself at this point.
Just compile the tasmota32-bluetooth version and only add the EQ3 stuff to your override:
#define USE_EQ3_ESP32

Somewhat outdated docs: EQ3 Documentation

Obviously you will need one or more ESP32 devices, and as a bonus, it has been tested on the Sonoff Dual R3 as well (which is ESP32 based and has BLE).

This should get you going, questions? don’t be afraid to ask.

1 Like

And a quick update, the EQ3 code is now (as of Tasmota V10.0.0) part of the standard tasmota-bluetooth build.

2 Likes

Hi all,
Thanks for update. With the tasmota32-bluetooth can i see and communicate with the valves. How do you intagrate ESP32 in yours HA Platform: over MQTT (do you need here mqtt climate platform?) or over Tasmota integration? How it works?
Thanks in advance

Yes, MQTT is the easiest:

Setup in tasmota as a autoexec.bat with aliases:

    BLEAlias 001A22654321=EQ3livingroom
    BLEAlias 001A22123456=EQ3kitchen
    BLEAddrFilter 0
    MI32Option6 1
    bleenableunsaved 1
    trvHideFailedPoll 1
    trvMinRSSI -95

If you have more than 1 ESP (larger house), make sure you use a group topic to send a command

cmnd/eq3_devices/

For current temperature I’m using a regular tempsensor like LYWSD03MMC
see: ATC_MiThermometer

HA config

climate:
    - platform: mqtt
      name: livingroom_radiator_climate
      modes: ['off',heat,auto,idle]
      min_temp: 4.5
      max_temp: 23.0
      temp_step: 0.5
      mode_command_topic: cmnd/eq3_devices/EQ3/EQ3livingroom/mode
      temperature_command_topic: cmnd/eq3_devices/EQ3/EQ3livingroom/settemp
      current_temperature_topic: tele/tasmota_ble/ATC0137cb
      current_temperature_template: '{{ value_json.Temperature }}'
      temperature_state_topic: stat/EQ3/EQ3livingroom
      temperature_state_template: '{{ value_json.temp }}'
      mode_state_topic: stat/EQ3/EQ3livingroom
      mode_state_template: '{{ value_json.hassmode }}'
      hold_command_topic: cmnd/eq3_devices/EQ3/EQ3livingroom
      hold_state_template: '{{ value_json.mode }}'
      hold_state_topic: stat/EQ3/EQ3livingroom
      hold_modes: ["auto","manual","off","on","boost","lock","unlock","day","night"]
      precision: 0.5

if you want to read some other info you can use the following (reading the valve opening):

sensors:
    - platform: mqtt
      name: "livingroom_valve"
      state_topic: stat/EQ3/EQ3livingroom
      value_template: >
        {% if value_json.result == "ok" %}
          {{ value_json.posn }}
        {% else %}
          {{ states('sensor.livingroom_valve') }}
        {% endif %}
      unit_of_measurement: "%"
1 Like

The EQ3 newer firmware now needs proper pairing by ble. Was able to do this by bluetoothctl on the RPI.
Can the Tasmota deal with the pairing?
I wouldn’t advise anybody to update the EQ3 firmware unless they are sure.

Which version are you referring to? We have been testing mostly with FW version 1.20, but we have received reports that FW 1.46 works as well without any pairing requirement.

Yeah, it was the 1.46 I think. Couldn’t connect by ble from RPi until I paired via ssh and 6 digit code.

I just did the firmware update via calor BT and I still can set temp via MQTTfx

For the record: which FW version are you now running?

Where can I check this? I can’t find anything in the app…

Remove battery and reinsert. FW version should show up first.

It says 1.46

1 Like

First, I’d like to say thanks for this integration. I was able to set up an EQ3 TRV with Tasmota and HA and one of Xiaomi’s temperature sensors. Anyway, I don’t know if I get the aim of this combination - regarding to the documentations of the EQ3 there is no temperature sensor included. But in my case it seems the EQ3 ignores the current temperature stated by the external Xiaomi sensor and takes its own value as the valve always exceeds the set temperature by around 2°C and holds it.

Is that possible?

Well, the EQ3 has no clue about the existence of the Xiaomi sensor.

The EQ3 has its own internal temperature sensor, it is using that sensor to adjust the valve state (taking into consideration the ‘desired’ temperature). While the EQ3 has its own sensor, it is NOT reporting the temperature to the outside world, hence the combination with a Xiaomi sensor.

The advantage of the extra sensor is obviously also, that it will report a more realistic value as the temperature is not reported from the valve (close to the radiator).

So yes, in most cases there will be a difference between the room temperature, and the temperature that the EQ# TRV observes. It also implies that you might need to set a lower/higher target temperature to get the required ambient/room temperature. Just monitor the valve state as it will tell you how ‘close’ the TRV thinks it is to the target temperature.

Example
20C is the target
19.8 is reported by a Xiaomi temperature sensor
Capture

And the valve no longer reports 100% open, so the TRV is already reducing the waterflow.

Hope this explains a bit…

1 Like

@YJB , can you point me to a tutorial how to do this esp32 thing? I have no idea about using this things, but i need to incude some thermostats to my home assistant :slight_smile:

More than happy to help, although I’m not sure about the starting point.

You will need ot get an esp32 device (ali is the cheapest option, but will obviously take some time)
A 5 5v power supply
esp flasher for windows (esp flasher)
tasmota32-bluetooth bin file
flash the esp32 and that should allow you to connect with the EQ3 devices.

most tutorials dont explain how to connect the chip to my device.
Found this: Flash Sonoff using Raspberry Pi - Tasmota
And there are so much esp32 boards. I dont know if i can go with a cheap one ot if inead the bigger ones.
How do i power the thing for use? Battery or power supply?
Whats the cause to use tasmota and not ESPhome?
Can i add f.e. an thermometer, PIR or other sensors or do i need another board to do this?
Do i use wifi or is LAN better? Energy use / reliability?
Whats about such? looks very neat: https://eckstein-shop.de/M5StackATOMLiteESP32DevelopmentKit2CESP32PICOChipmitWiFiundBluetooth

If i dont use an ESP32, can i “forward” the data from bluetooth on RPI3b+ to homeassistant on another device as VM? per MQTT?
How much devices can i pair with it?

Thank you for your help, @YJB