My thermostat (eq3 via mqtt hvac) is alway Grey (but does respond)


I hope this is (not) something obvious, I have been searching for a solution for a while.
In all honesty I am certainly only a beginner, but trying to learn while doing.

I have an ESP32 which connects via ble to a TRV and publishes it to mqtt.
This part seems to work pretty good (GitHub - softypit/esp32_mqtt_eq3: esp32-based mqtt node to control EQ-3 BLE TRVs).

I added this in my home assistant using mqtt hvac, which seems to work, but the thermostat card still status Grey, even though it does seem to work.

Any ideas on where to start?

My configuration:

  - platform: mqtt
    unique_id: bureau_eq3
    name: bureau
    mode_state_topic: "/esp321radout/status"
      - "auto"
      - "off"
      - "heat"
      - "cool"
    mode_command_topic: "/esp321radin/trv"
    mode_command_template: >
      {% if 'heat' in value %}
      '00:1A:22:11:F9:BC on'
      {% elif 'auto' in value %}
      '00:1A:22:11:F9:BC auto'
      {% elif 'cool' in value %}
      '00:1A:22:11:F9:BC manual'
      {% else %}
      '00:1A:22:11:F9:BC off'
      {% endif %}
    precision: 0.5
    temperature_command_topic: "/esp321radin/trv"
    temperature_command_template: "00:1A:22:11:F9:BC settemp {{value|int}}"
    #"{{"00:1A:22:11:F9:BC settemp "}}"
    temperature_state_topic: "/esp321radout/status"
    temperature_state_template: "{{ value_json.temp | float}}"
    current_temperature_topic: "/esp321radout/status"
    current_temperature_template: "{{ value_json.temp | float}}"
    mode_state_topic: "/esp321radout/status" 
    mode_state_template: >
      {% if "30.0" in value_json.temp %}
      {% elif "auto" in value_json.mode %}
      set mode = 'auto'
      {% elif "manual" in value_json.mode %}
      set mode = 'cool'
      {% else %}
      set mode = 'off'
      {% endif %}
    min_temp: 4
    max_temp: 31
    temp_step: 0.5

Should delete cool from your modes. So, nothing happens when you click on the flame symbol on the thermostat after a few seconds?

You don’t mention having the additional helper and automations setup for modes and such. I see no mode on the thermostat not even ‘off’.

eq3mqtt setup

The above setup seems similar to what I used last year before abandoning ESP32 bluetooth for connecting to my eq3 valves. Found signal poor and difficult to set up for multiple ep3s.

I was using the ‘cool’ mode as a way to set the thermostat to manual.

It seems like the reason I didn’t get colors is I didn’t need the ’ ’ around the modes, everything worked, just states didn’t update in ha.
Your link/example really thought me a lot, my automations was still empty… I said I was a beginner right? :sweat_smile: … I have been using the nodered add-on for some simple stuff.

I will be using the configuration and automations you linked to as a starting point now, thanks!

Which road did you take after the ESP32-solution, did you find a way with a better signal?

I used a RPI zero W with another instance of HA on it with remote home assistance(RHA) from HACS on main HA. Latest version of HA needs RHA on .PI zero as well . Bluetooth reaches to surrounding rooms. Have been able to control 4 EP3s from one device.

Thanks, I might have to go that way too, the ESP32 doesn’t seem to be the most stable solution and indeed with pretty limited range.
But that will probably require some further research (how to install hassos on zeroW, how to connect it with the eq3, how to connect it with my main HA,…).