Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches

ESPHome water_heater platform schema and code generation. More...

Go to the source code of this file.

Namespaces

namespace  home_io_control
namespace  home_io_control.water_heater

Functions

 home_io_control.water_heater._validate_water_heater_kind (config)
 home_io_control.water_heater._inject_companion_ids (config)
 home_io_control.water_heater._companion_config (companion, config)
 home_io_control.water_heater.to_code (config)

Variables

list home_io_control.water_heater.DEPENDENCIES = ["home_io_control"]
 home_io_control.water_heater.IOHomeWaterHeater = home_io_control_ns.class_("IOHomeWaterHeater", water_heater.WaterHeater, cg.Component)
 home_io_control.water_heater.IOHomeDhwEnergySensor = home_io_control_ns.class_("IOHomeDhwEnergySensor", sensor.Sensor, cg.Component)
 home_io_control.water_heater.IOHomeDhwBinarySensor
 home_io_control.water_heater.IOHomeDhwBoostSwitch = home_io_control_ns.class_("IOHomeDhwBoostSwitch", switch.Switch, cg.Component)
 home_io_control.water_heater.DhwReading = IOHomeDhwBinarySensor.enum("Reading", is_class=True)
str home_io_control.water_heater.CONF_HEAT_PUMP_RUNNING = "heat_pump_running"
str home_io_control.water_heater.CONF_ELECTRIC_BACKUP_RUNNING = "electric_backup_running"
str home_io_control.water_heater.CONF_BOOST = "boost"
tuple home_io_control.water_heater._BINARY_COMPANIONS
 home_io_control.water_heater.CONFIG_SCHEMA

Detailed Description

ESPHome water_heater platform schema and code generation.

Binds an ESPHome water_heater entity to a domestic hot water heater (io_device_type: domestic_hot_water), with four opt-in companions: energy (kWh, for the energy dashboard), heat pump running, electric backup running, and a boost switch. Boost and away travel in the heater's operating-mode word and are experimental: not confirmed on hardware yet. The heater is polled (default every five minutes); status_poll_interval sets the cadence, with the same one-minute floor as climate. Shared device-binding logic lives in platform_common.py; only the water heater's entity and companions are built here.

The kind is required: the codegen checks it carries the WATER_HEATER capability, so a config can never send the water heater's register frames to another device.

Definition in file water_heater.py.