Opentherm gateway/thermostat with full integration for Home Assistant

I deleted the device in HA again, stopped home assistant, deleted python cache, restarted HA and added the device again and it seems to work now! I don’t understand what exactly was going wrong and why this has resolved the issue.

I’ll do some further testing.

After reconnecting esp to mqtt, it sends device configs to the broker. When a device is deleted, all known HA configs of device entities are deleted.
When PID/Equitherm was enabled, esp should have sent a new config for the climate entity with new limits. But either this didn’t happen, or HA didn’t update the entity config :man_shrugging:

That explains why it has now started working properly! Thanks for the support!

Any chance you may implement an ‘Eco’ mode to set the thermostat to a predefined temperature (like 10 degrees)?

But you can set the temperature between 5 and 30 degrees. What should ECO mode do in your opinion?

I’m referring to the Eco mode like available in Nest Thermostat. With the Eco mode, I can set the temperature with one touch to predefined value (in my case I have set it to 10 degrees). When I’m leaving for a longer period, like on vacation, I set turn on the Eco mode. It then jumps to 10 degrees and turns off the schedules. It remembers the target temperature before doing so, and when I’m back and I turn the eco mode off, the temperature jumps back to the previous target temperature and the schedules are working again.

When I think about it now, I think it’s better to automate this in Home Assistant where the schedules are also automated than in OTGatewat. This eco mode leans more toward the automation than toward regulating the heating. I’m gonna make it in HA.

I’m trying to add a BLE indoor sensor (Xiaomi LYWSD03MMC) but with no luck so far. I suspect it has to do with the MAC address but I’m not sure. Where do I find the correct MAC address for the sensor?

Thanks for the help!

I managed to get the BLE sensor connected by discovering finding its MAC address. For this I used your Wiki and the linked other projects.

The OTG now connects to the BLE sensor. The connection is established (I can see the bluetooth icon on the sensor LCD). The read temperature stays however on 0 degrees (same for the read humidity, it stays on 0%).

Any suggestion how to debug?

Are you using pvvx firmware for the sensor?

No, I’m using the stock firmware, the latest version.

Probably encrypted data there. Try using firmware from pvvx for the sensor.

Thanks. I’ll try.

Can you explain what “Turbo mode” exactly does?

I’m having difficulty keeping the house warm. The problem I’m experiencing is that the temperature in the radiators are pretty low when the turbo mode is off. I hardly succeed get the current room temperature increasing. When I turn the turbo mode on, I get the radiators warm (as I was used to them with Nest) and the target current room temperature start increasing. I notice the Turbo mode turns itself off automatically and I cannot understand why.

Hello! Could you help me? I don’t know how to integrate OTGateway into Home Assistant. I think I should set proper parameters in the MQTT section in the OT Gateway settings.


Where can I find settings for OT Gateway?

You need to adjust the Equitherm/PID coefficients. Turbo mode turns off when the indoor temperature reaches the target temperature.

Thank you @LazyDev! I have already fixed it. I was already using PID but PID does not work in my house! My house is old, and the isolation is not very good. So my boiler needs to work hard and it takes a lot of time to reach the target temperature. The deviation around the target temperature is very very little, so the PID does not make any sense for my situation. The only reason I use it now it’s because PID enables Target temperature regulation based on the room temperature. Turning it off means I need to implement temperature regulation in Home Assistant myself, which I don’t want to do.

I ended up reading your code to understand how the regulation is working and what the Turbo mode actually does. I finally started using these values to work in my situation:

PID P: 2
PID I: 0.002
PID D: 30
PID Min Temp: 60
PID Max Temp: 61
System Min Temp: 60
System Max Temp: 61
Hysterersis: 0.2

This keeps the heating pretty stable running till the target room temp is reached. I have been using it for about 1.5 months now and I’m very happy :slight_smile: with it. And I got rid of my Nest Thermostat ;).

If you’re looking for room to improve, I have a couple of suggestions:

  1. Create a new mode beside PID or Equitherm to linearly regulate the temperature to toward the target temperature. This is kind of PID with the graph jumping from zero to a flat boiler temperature. This mode would be useful in homes like mine where PID regulation doesn’t help much.
  2. I suggest adding as many as documentation in the GUI explaining what every option actually does.

Thanks again for the great piece of work! Your project made it possible for me to get rid of the Nest eco system! :wink:

1 Like

In firmware 1.5.5 the settings for indoor temperature, the type/source option “OpenTherm, indoor temp” is missing, unlike the sensor for “outdoor temp.”
Because I use a Zigbee thermometer for indoor temperature, I now select the option “Manual via MQTT/API” for indoor temperature.
In Home Assistant, I use the automation opentherm_interntemp to link the value of the indoor thermometer to the “indoor temp” field.

My question is whether this is the correct way to do it. In the thermostat card in Home Assistant, the current temperature is not showing the “indoor temp,” but the “heating temp.” I have no idea how to change this.

Another question is: what happened to the “target temperature”? I upgraded directly from version 1.4 to 1.5.5 and now I seem to have lost the ability to set the target temperature.

Hi, for some reason MQTT says it is connected but is not being detected in HA. I can only embed one image but both HA and otgw suggest connected to MQTT. OTGW has the Home Assistant Discovery box ticked. Latest firmware Anyone have any ideas?

Chris

Hi,
Try rebooting the ESP from the web interface. If this does not help, show a screenshot from mqtt explorer, for example homeassistant/climate

Yeah it was just me being lame and not setting up Mosquitto properly. #timewaster.

1 Like