Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
home_io_control.climate Namespace Reference

Functions

 _has_window_companions (config)
 _inject_companion_ids (config)
 _validate_climate_poll_interval (config)
 _validate_temperature_range (config)
 to_code (config)

Variables

list DEPENDENCIES = ["home_io_control"]
 IOHomeClimate = home_io_control_ns.class_("IOHomeClimate", climate.Climate, cg.Component)
 IOHomeWindowBinarySensor
 IOHomeOpenWindowDetectionSwitch
str CONF_WINDOW_SENSOR_ID = "_window_sensor_id"
str CONF_WINDOW_DETECTION_SWITCH_ID = "_window_detection_switch_id"
int MIN_CLIMATE_POLL_INTERVAL_MS = 60000
tuple DEFAULT_TEMPERATURE_RANGE_C = (-40.0, 80.0)
tuple TEMPERATURE_RANGE_BOUNDS_C = (-50.0, 100.0)
 CONFIG_SCHEMA

Function Documentation

◆ _has_window_companions()

_has_window_companions ( config)
protected
True when the declared heater kind has a window sensor and a detection switch.

The kind is the declared io_device_type/io_subtype (subtype 0 when omitted), the same key the
C++ heating profile uses. A heater declared without a type gets no companions: nothing at
validation time says what it is.

Definition at line 56 of file climate.py.

◆ _inject_companion_ids()

_inject_companion_ids ( config)
protected
Declare the heater companion IDs during validation (ESPHome 2026.x StaticVector sizing).

Definition at line 68 of file climate.py.

Here is the call graph for this function:

◆ _validate_climate_poll_interval()

_validate_climate_poll_interval ( config)
protected

Definition at line 88 of file climate.py.

◆ _validate_temperature_range()

_validate_temperature_range ( config)
protected

Definition at line 109 of file climate.py.

◆ to_code()

to_code ( config)

Definition at line 151 of file climate.py.

Variable Documentation

◆ CONF_WINDOW_DETECTION_SWITCH_ID

str home_io_control.climate.CONF_WINDOW_DETECTION_SWITCH_ID = "_window_detection_switch_id"

Definition at line 53 of file climate.py.

◆ CONF_WINDOW_SENSOR_ID

str home_io_control.climate.CONF_WINDOW_SENSOR_ID = "_window_sensor_id"

Definition at line 52 of file climate.py.

◆ CONFIG_SCHEMA

home_io_control.climate.CONFIG_SCHEMA
Initial value:
= cv.All(
climate.climate_schema(IOHomeClimate)
.extend(platform_schema_extension())
.extend(
{
cv.Optional(CONF_MIN_TEMPERATURE): cv.temperature,
cv.Optional(CONF_MAX_TEMPERATURE): cv.temperature,
}
)
.extend(cv.COMPONENT_SCHEMA),
_validate_climate_poll_interval,
_validate_temperature_range,
_inject_companion_ids,
)

Definition at line 135 of file climate.py.

◆ DEFAULT_TEMPERATURE_RANGE_C

tuple home_io_control.climate.DEFAULT_TEMPERATURE_RANGE_C = (-40.0, 80.0)

Definition at line 105 of file climate.py.

◆ DEPENDENCIES

list home_io_control.climate.DEPENDENCIES = ["home_io_control"]

Definition at line 41 of file climate.py.

◆ IOHomeClimate

home_io_control.climate.IOHomeClimate = home_io_control_ns.class_("IOHomeClimate", climate.Climate, cg.Component)

Definition at line 43 of file climate.py.

◆ IOHomeOpenWindowDetectionSwitch

home_io_control.climate.IOHomeOpenWindowDetectionSwitch
Initial value:
= home_io_control_ns.class_(
"IOHomeOpenWindowDetectionSwitch", switch.Switch, cg.Component
)

Definition at line 47 of file climate.py.

◆ IOHomeWindowBinarySensor

home_io_control.climate.IOHomeWindowBinarySensor
Initial value:
= home_io_control_ns.class_(
"IOHomeWindowBinarySensor", binary_sensor.BinarySensor, cg.Component
)

Definition at line 44 of file climate.py.

◆ MIN_CLIMATE_POLL_INTERVAL_MS

int home_io_control.climate.MIN_CLIMATE_POLL_INTERVAL_MS = 60000

Definition at line 85 of file climate.py.

◆ TEMPERATURE_RANGE_BOUNDS_C

tuple home_io_control.climate.TEMPERATURE_RANGE_BOUNDS_C = (-50.0, 100.0)

Definition at line 106 of file climate.py.