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.
 
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_internal.h
 Internal helpers shared by the hub implementation .cpp files.
 
hub_key_extraction.cpp
 "Accept Foreign Pairing (Key Extraction)" — device-role responder hub wiring.
 
hub_lr1121_firmware_update.cpp
 
hub_management.cpp
 Thin hub wrapper delegating management actions to ManagementActions.
 
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.
 
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.
 
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.
 
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_accept_foreign_pairing_switch.cpp
 Hub-level "Accept Foreign Pairing (Key Extraction)" switch entity.
 
platform_accept_foreign_pairing_switch.h
 Hub-level switch that arms/disarms the "Accept Foreign Pairing" (key-extraction) responder.
 
platform_active_issue_text_sensor.cpp
 Diagnostic text sensor exposing a device's currently outstanding CMD_ERROR_RESP reason.
 
platform_active_issue_text_sensor.h
 Diagnostic text sensor exposing a device's currently outstanding CMD_ERROR_RESP reason.
 
platform_common.py
 Shared ESPHome codegen for IO-Homecontrol device-bound platforms.
 
platform_cover.cpp
 ESPHome cover entity for IO-Homecontrol devices.
 
platform_cover.h
 ESPHome cover entity for IO‑Homecontrol devices.
 
platform_cover_favorite_button.cpp
 Generated favorite-position button for position-capable cover entities.
 
platform_cover_favorite_button.h
 Generated favorite-position button for position-capable cover entities.
 
platform_cover_vent_button.cpp
 Generated ventilation-position button for window-type cover entities.
 
platform_cover_vent_button.h
 Generated ventilation-position button for window-type cover entities.
 
platform_device_name_text_sensor.cpp
 Diagnostic text sensor exposing the stored IO-Homecontrol device name.
 
platform_device_name_text_sensor.h
 Diagnostic text sensor exposing the stored IO-Homecontrol device name.
 
platform_discover_button.h
 Button entity that triggers device discovery and pairing.
 
platform_entity_base.h
 Shared device-binding mixins for IO-Homecontrol entity platforms.
 
platform_exchange_failures_sensor.cpp
 Diagnostic sensor exposing a device's cumulative exchange-timeout count.
 
platform_exchange_failures_sensor.h
 Diagnostic sensor exposing a device's cumulative exchange-timeout count.
 
platform_last_contact_sensor.cpp
 Diagnostic sensor exposing seconds elapsed since a device's last received frame.
 
platform_last_contact_sensor.h
 Diagnostic sensor exposing seconds elapsed since a device's last received frame.
 
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_bootloader_rewrite_switch.cpp
 Hub-level "Allow LR1121 Bootloader Rewrite (Irreversible)" switch entity.
 
platform_lr1121_bootloader_rewrite_switch.h
 Hub-level arming switch for the LR1121 bootloader-rewrite (three-stage) sequence.
 
platform_lr1121_firmware_update_button.h
 Hub-level button that triggers the LR1121 transceiver-firmware flash sequence.
 
platform_pairing_result_text_sensor.cpp
 Diagnostic text sensor exposing the "Last Pairing Result" string.
 
platform_pairing_result_text_sensor.h
 Diagnostic text sensor exposing the machine-readable "Last Pairing Result" string.
 
platform_rssi_sensor.cpp
 Diagnostic sensor exposing a device's smoothed RSSI.
 
platform_rssi_sensor.h
 Diagnostic sensor exposing a device's smoothed RSSI.
 
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_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.