Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
home_io_control Directory Reference
Directory dependency graph for home_io_control:

Files

 
__init__.py
 ESPHome hub schema and code generation for Home IO Control.
 
button.py
 ESPHome pairing-button schema and code generation.
 
climate.py
 ESPHome climate platform schema and code generation.
 
cover.py
 ESPHome cover platform schema and code generation.
 
device_registry.cpp
 DeviceRegistry implementation.
 
device_registry.h
 Per-hub device table, update-callback fan-out, and linked-remote map.
 
doxygen_groups.h
 Doxygen group definitions for the Home IO Control component.
 
exchange_engine.cpp
 Authenticated exchange engine — outbound and inbound protocol flows.
 
exchange_engine.h
 Self-contained authenticated exchange engine for IO-Homecontrol 2W.
 
hub_core.cpp
 Component lifecycle and main-loop scheduling.
 
hub_core.h
 IO-Homecontrol ESPHome component — protocol controller.
 
hub_decisions.h
 Pure transition helpers for hub-owned exchange and pairing frame decisions.
 
hub_exchange.h
 Internal exchange-state model for hub-owned authenticated non‑pairing flows.
 
hub_hooks.h
 Injected-capability callback aliases shared by the hub's collaborator objects.
 
hub_internal.h
 Internal helpers shared by the hub implementation .cpp files.
 
hub_operations.cpp
 High-level command execution and queued operation dispatch.
 
hub_pairing.cpp
 Thin hub wrapper delegating all pairing logic to PairingEngine.
 
hub_pairing.h
 Internal pairing-state model for hub‑owned discovery and key‑exchange flows.
 
hub_status.cpp
 Inbound status handling and passive receive-side state updates.
 
key_extraction_responder.cpp
 "Recover System Key" (key extraction) — device-role responder collaborator.
 
key_extraction_responder.h
 "Recover System Key" (key extraction) — device-role responder collaborator.
 
light.py
 ESPHome binary/dimmable light platform schema and code generation.
 
lock.py
 ESPHome lock platform schema and code generation.
 
log_frame.h
 Shared frame logging helpers for IO-Homecontrol.
 
lr1121_firmware.py
 Fetch, verify, and interpret a user-referenced LR1121 transceiver firmware image.
 
lr1121_firmware_decisions.h
 Pure decision logic for the LR1121 transceiver-firmware-update feature.
 
lr1121_firmware_update_controller.cpp
 
lr1121_firmware_update_controller.h
 LR1121 transceiver-firmware-update feature — orchestration collaborator.
 
management_actions.cpp
 Hub-level management actions such as device rename, identify, and force-open.
 
management_actions.h
 Hub-level management operations exposed as Home Assistant actions.
 
oneway_controller.cpp
 Controller identities for the one-way (1W) protocol.
 
oneway_controller.h
 Controller identities for the one-way (1W) protocol.
 
oneway_key_adoption.cpp
 Opt-in, receive-only adoption of a 1W installation's controller key.
 
oneway_key_adoption.h
 Opt-in, receive-only adoption of a 1W installation's controller key.
 
oneway_sequence_store.cpp
 Persistent rolling-sequence counters for one-way (1W) transmit.
 
oneway_sequence_store.h
 Persistent rolling-sequence counters for one-way (1W) transmit.
 
oneway_transmitter.cpp
 One-way (1W) transmit collaborator.
 
oneway_transmitter.h
 One-way (1W) transmit collaborator.
 
operation_queue.cpp
 OperationQueue implementation.
 
operation_queue.h
 Pending-operation queue with per-type coalescing and deduplication.
 
pairing_advisor.cpp
 Read-only advisor that turns PairingTelemetry into actionable diagnostics.
 
pairing_advisor.h
 Read-only advisor that turns PairingTelemetry into actionable diagnostics.
 
pairing_engine.cpp
 Device pairing orchestration — discovery, key exchange, and finalization.
 
pairing_engine.h
 Device discovery and key-exchange engine for IO-Homecontrol pairing.
 
pairing_responder.cpp
 Pure decision logic for the device-role key-extraction responder.
 
pairing_responder.h
 Pure decision logic for the device-role "Accept Foreign Pairing" (system-key extraction) responder.
 
pairing_telemetry.cpp
 Structured per-attempt telemetry recorder implementation.
 
pairing_telemetry.h
 Structured per-attempt telemetry recorder for the pairing flow.
 
platform_climate.cpp
 Experimental climate entity for IO-Homecontrol heating devices (CMD_WRITE_PRIVATE 0x20).
 
platform_climate.h
 Experimental climate entity for IO-Homecontrol heating devices (CMD_WRITE_PRIVATE 0x20).
 
platform_common.py
 Shared ESPHome codegen for IO-Homecontrol device-bound platforms.
 
platform_companion_sensors.cpp
 The seven auto-generated per-device diagnostic companion sensors.
 
platform_companion_sensors.h
 The seven auto-generated per-device diagnostic companion sensors.
 
platform_cover.cpp
 ESPHome cover entity for IO-Homecontrol devices.
 
platform_cover.h
 ESPHome cover entity for IO‑Homecontrol devices.
 
platform_cover_controls.cpp
 Generated per-cover auxiliary controls: command button and silent-operation toggle.
 
platform_cover_controls.h
 Generated per-cover auxiliary controls: the command button (favorite / ventilation) and the silent-operation toggle.
 
platform_entity_base.h
 Shared device-binding mixins for IO-Homecontrol entity platforms.
 
platform_hub_controls.cpp
 Hub-level control entities: arming switches and the pairing-result text sensor.
 
platform_hub_controls.h
 Hub-level control entities: the discovery button, the scan-paired-devices button, the two arming switches, and the pairing-result diagnostic text sensor.
 
platform_light.cpp
 Binary or dimmable light entity for IO-Homecontrol devices.
 
platform_light.h
 Binary or dimmable light entity for IO‑Homecontrol devices.
 
platform_lock.cpp
 Experimental lock entity for IO-Homecontrol lock devices.
 
platform_lock.h
 Experimental lock entity for IO-Homecontrol lock-capable devices.
 
platform_lr1121_controls.cpp
 Hub-level LR1121 firmware-update entities: out-of-line bodies for the bootloader-rewrite arming switch.
 
platform_lr1121_controls.h
 Hub-level LR1121 firmware-update entities: the transceiver-flash button and the bootloader-rewrite arming switch.
 
platform_oneway_entities.cpp
 The per-identity 1W entities: command buttons, enrollment button, last-command sensor.
 
platform_oneway_entities.h
 The per-identity 1W entities: command buttons, the enrollment button, and the "Last 1W Command" diagnostic text sensor.
 
platform_switch.cpp
 Experimental binary switch entity for IO-Homecontrol devices.
 
platform_switch.h
 Experimental binary switch entity for IO‑Homecontrol devices.
 
proto_codecs.cpp
 Device-name, address-classification and 1W-frame codec implementations.
 
proto_codecs.h
 Device-name, address-classification and 1W-frame codecs.
 
proto_commands.cpp
 Command builders for the IO-Homecontrol protocol.
 
proto_commands.h
 Command builders for the IO‑Homecontrol protocol.
 
proto_constants.cpp
 Name/description lookups for IO-Homecontrol commands, results and enumerations.
 
proto_constants.h
 IO-Homecontrol command IDs, result codes and protocol enumerations.
 
proto_crypto.cpp
 Cryptographic helpers for the IO-Homecontrol protocol.
 
proto_crypto.h
 Cryptographic helpers for the IO‑Homecontrol protocol.
 
proto_device_model.cpp
 Device-type capabilities, packed-metadata decoding and position reports.
 
proto_device_model.h
 IO-Homecontrol device-type model, capabilities and runtime device state.
 
proto_frame.cpp
 IO-Homecontrol 2W frame container implementation.
 
proto_frame.h
 IO-Homecontrol 2W frame container: control bytes, IoFrame and (de)serialization.
 
proto_heating.cpp
 Pure codec for IO-Homecontrol 2W heating/climate functions (CMD_WRITE_PRIVATE 0x20).
 
proto_heating.h
 Pure codec for IO-Homecontrol 2W heating/climate functions (CMD_WRITE_PRIVATE 0x20).
 
proto_sizes.h
 Fundamental IO-Homecontrol frame and crypto size constants.
 
proto_timing.h
 Physical-layer radio and timing parameters for the IO-Homecontrol protocol.
 
radio_interface.cpp
 Implementation of non-inline RadioDriver methods.
 
radio_interface.h
 Radio abstraction layer for IO-Homecontrol.
 
radio_lr1121.cpp
 LR1121 radio driver implementation for IO-Homecontrol.
 
radio_lr1121.h
 LR1121 radio driver for IO-Homecontrol.
 
radio_lr1121_firmware_updater.cpp
 LR1121 bootloader-mode SPI transport implementation.
 
radio_lr1121_firmware_updater.h
 LR1121 bootloader-mode-*and*-loader-mode SPI transport, standalone from the running RadioDriver.
 
radio_soft_phy.cpp
 Software PHY implementation for radios without IoHomeOn hardware framing.
 
radio_soft_phy.h
 Software PHY for radios without IoHomeOn hardware framing.
 
radio_soft_phy_driver_base.cpp
 Shared driver flow implementation for the software-PHY radios.
 
radio_soft_phy_driver_base.h
 Shared driver flow for radios using the software PHY (SX1262, LR1121).
 
radio_sx1262.cpp
 SX1262 radio driver implementation for IO-Homecontrol.
 
radio_sx1262.h
 SX1262 radio driver for IO-Homecontrol.
 
radio_sx1276.cpp
 SX1276 radio driver implementation for IO-Homecontrol.
 
radio_sx1276.h
 SX1276 radio driver for IO-Homecontrol.
 
redaction.h
 Key-material redaction helpers shared by every surface that can emit frame bytes or debug text (frame logging today; telemetry and diagnostic reports later).
 
status_poll_policy.cpp
 StatusPollPolicy implementation.
 
status_poll_policy.h
 Per-device poll scheduling, failure backoff, and follow-up-poll state machine.
 
switch.py
 ESPHome binary switch platform schema and code generation.
 
tuning.py
 ESPHome tuning schema and code generation for Home IO Control.
 
tuning_config.cpp
 Runtime tuning configuration helpers and snapshot formatting.
 
tuning_config.h
 Runtime tuning configuration for pairing and radio diagnostics.
 
tuning_entities.cpp
 Home Assistant number and select tuning entity implementations.
 
tuning_entities.h
 Home Assistant number and select entities that control runtime tuning parameters.
 
tuning_registry.cpp
 Parameter tables and lookup helpers for the tuning registry.
 
tuning_registry.h
 Table-driven registry of runtime tuning parameters.