This component provides support for opentherm devices such as:
- DIYLess' Master OpenTherm Shield
- Ihor Melnyk' OpenTherm adapter
Those are typically connected to an ESP8266 or ESP32
The functional aspect (OpenTherm communications) is heavily based on ihormelnyk/opentherm_library.
The goal of this component is not to provide a full-blown climate device, but rather expose a bunch of OpenTherm data and functionality. To make use of this data and functionality is up to the user. This could be by - for example - using the exposed enities in ESPHome/HA automations or by using the exposed entities in other components (e.g. a combination of PID Climate and a few Template Outputs)
As this is my first component, I'm also looking for constructive criticism on how to enhance this component where needed.
This component is a fork of khenderick/esphome-opentherm and adapted to support operating in gateway mode. It is connected both to an OpenTherm master device (typically a thermostat) and an OpenTherm slave device (typically a CH boiler) and forwards all messages from the master to the slave.
@hendrick's component is currently also in an open PR to esphome,
but has currently a low chance of acceptance since it uses a ~32ms delay in loop()
. This should be
rewritten to work async.
Feel free to help me out and open a PR with improvements.
esphome compile example_opentherm.yaml && esphome upload example_opentherm.yaml