OT Thing - An OpenTherm-WiFi Gateway with integrated OT master & slave

I built my own OpenTherm gateway with a compact singleboard design:






Features:

  • ESP32-C3 CPU
  • OpenTherm master & slave
  • Bypass relay
  • Terminal screws for 1wire sensors & digital input
  • Reset & configuration button
  • USB-C connector for supply, flashing & interface
  • 4 status LEDs
  • Compact enclosure

Project-homepage (german):

3 Likes

Hello Stefan,

I have a boiler:
Geminox THRi 1-10 and a QAA73 thermostat.

I would like to connect them to Home Assistant and analyze the data and also manage the temperature and other parameters remotely.

I would like to ask if this board will also allow me to keep the original thermostat QAA73. Currently, my thermostat is connected to the boiler via two cables and there is 25V on them. (thermostat is supposed to be powered through an opentherm wires).

thx for answer

Miro

Hi Miro,

your equipment seems to use opentherm for its communication. You can setup the otthing in gatewaymode between your boiler and your roomunit and let the roomunit still control the boiler while otthing is monitoring all data and sending it to homeassistant. In gatewaymode you can also override the ch &dhw temperatures from homeassitant.

Kind regards
Stefan

1 Like

Brilliant! A nice piece of hardware, exactly what I was looking for.

I have some questions on the software. Is OTThing your own development? Is the code available? Can you run OTGateway on this hardware, and if so, would that replace OTThing?

Hello Stefan,
I’m trying to order and it won’t ship to Slovakia.
When I choose another country, like the Czech Republic, everything is OK and shipping is 7EUR

  • Es wurde keine Versandart ausgewählt. Bitte überprüfe deine Adresse oder kontaktiere uns, wenn du Hilfe benötigst.

Hi,

I fixed the shipping settings.

Kind regards,
Stefan

Hi,

The firmware of the OTThing is open, you can find it here:

Can you send a link of the firmware you mean?

Kind regards
Stefan

Hi Stefan,

Thank you! I’m referring to GitHub - Laxilef/OTGateway: OTGateway is a powerful open-source solution for controlling OpenTherm-compatible boilers, turning your heating system into a smart one. Set the perfect temperature, save on energy bills, and eliminate unnecessary hassle — integration with Home Assistant makes heating management simple and automated.

Hello! Nice work! Very interesting!
I have a Baxi Luna in plus boiler. I have an outside temperature sensor (siemens qac34) that is connected to the boiler.
Στιγμιότυπο από 2025-02-01 08-53-33

Can this data been read it and used?
Also i have sonoff temperature sensors inside and also outside the house connected with HA also. Can this data used as input for outside temperature and room temperature (instead of wiring room-unit)

As mirino75 wrote now on boiler is wired the “keypad unit” that must used opentherm protocol. It has to be unwired or on the same clamp the same time can connect both?

Στιγμιότυπο από 2025-02-01 08-55-29

Sorry for the many photos

Yes, this (by the way greate!) firmware can be used, see Add support board "OT Thing" by Phunkafizer · Pull Request #123 · Laxilef/OTGateway · GitHub
But it does not support the OpenTherm slaveinterface on the OT Thing, so a connected roomunit will not work.

Greetings,
Stefan

Hi,

you will have to cut the two wires from your boiler to the roomunit and connect all 4 wires the OTThing between:

If you disconnect power from OT Thing the relay on the board will reconnect the wires as it was before.

If you have the outsidetemperature available in homeassistant you can send it with an automation to OTThing, here is an example:

alias: OTThing outside temperature
description: ""
trigger:
  - platform: time_pattern
    seconds: /30
condition: []
action:
  - service: mqtt.publish
    metadata: {}
    data:
      qos: "0"
      retain: false
      payload: "{{ state_attr(\"weather.home\", \"temperature\") }}"
      topic: otthing/31F374/outsideTemp/set
    enabled: true
mode: single

This will sent the outside temperature from HA’s weather integration every 30 s to the OT Thing.

I think that also the outsidetemperature sensor connected to the boiler could be used if the boiler makes it available over the opentherm interface. If needed I could add this to the firmware so that it can be selected as the source for outsidetemperature. The current roomtemperature is not used by the OT Thing as it calculates the needed flow temperature from the outsidetemperature.

Kind regards
Stefan

1 Like

So it uses outside temperature to “decide” the temperature of the heated water that circulates?
I thought usually that on OT protocol the inside temperature sensor was communicating with the boiler
And depending on the “rate” of changing of the inside home temperature it could control the heating water temperature in order to have a smooth result.

There are different “concepts” how to control the flow temperature of the heating. It depends heavily on the setup (how many rooms, thermostat on the heating elements, …) which way to choose. In my setup I have the room unit located in the living room, but in this room there is also a wood ofen. When I fire the wood ofen the thermostat would think the room is warm enough, lowering the flow temperature, causing all other rooms to become too cold. Or: If I do not need my living room warm with the thermostat in it by turning down the valves in this room the thermostat always wood demand a higher flowtemperature than needed.
In general, what you want to have is the flowtemperature as low as needed and the valves of the heating elements wide open in order to have low loss off energy. There is a vid on youtube (unfortunately in german) which explains this very good:

In order to keep the rooms on a constant temperature, you have to feed in the same amount of energy which is going out of the rooms; the amount of energy going out of the rooms depends on the outside temperature, the amount of energy going in the rooms depends on the flowtemperature.

Yes i understand what are you saying.
Can it be modified in order to have a graph that you it has boiler temp and inside temp? so you can modify your curve as you like etc?

Hi Nikolaos,

it does not make sense to calculate the boiler temp just from the current inside temp; say your roomsetpoint is set to 21 C°, the required boiler temperature is complety different for an outside temperature of -5 C° or +10 C°. But anyway you could simply write an automation in homeassistant in order to set the boiler temperature you want.

Kind regards
Stefan