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

Hub orchestration, exchange state machines, pairing, and runtime operations. More...

Collaboration diagram for Controller Layer:

Topics

 Pairing/Radio Diagnostics Tuning
 Runtime-tunable pairing and radio diagnostics layer and its Home Assistant entities.

Files

file  device_registry.cpp
 DeviceRegistry implementation.
file  device_registry.h
 Per-hub device table, update-callback fan-out, and linked-remote map.
file  exchange_engine.cpp
 Authenticated exchange engine — outbound and inbound protocol flows.
file  exchange_engine.h
 Self-contained authenticated exchange engine for IO-Homecontrol 2W.
file  hub_core.cpp
 Component lifecycle and main-loop scheduling.
file  hub_core.h
 IO-Homecontrol ESPHome component — protocol controller.
file  hub_decisions.h
 Pure transition helpers for hub-owned exchange and pairing frame decisions.
file  hub_exchange.h
 Internal exchange-state model for hub-owned authenticated non‑pairing flows.
file  hub_hooks.h
 Injected-capability callback aliases shared by the hub's collaborator objects.
file  hub_internal.h
 Internal helpers shared by the hub implementation .cpp files.
file  hub_operations.cpp
 High-level command execution and queued operation dispatch.
file  hub_pairing.cpp
 Thin hub wrapper delegating all pairing logic to PairingEngine.
file  hub_pairing.h
 Internal pairing-state model for hub‑owned discovery and key‑exchange flows.
file  hub_status.cpp
 Inbound status handling and passive receive-side state updates.
file  key_extraction_responder.cpp
 "Recover System Key" (key extraction) — device-role responder collaborator.
file  key_extraction_responder.h
 "Recover System Key" (key extraction) — device-role responder collaborator.
file  lr1121_firmware_update_controller.h
 LR1121 transceiver-firmware-update feature — orchestration collaborator.
file  management_actions.cpp
 Hub-level management actions such as device rename, identify, and force-open.
file  management_actions.h
 Hub-level management operations exposed as Home Assistant actions.
file  oneway_key_adoption.cpp
 Opt-in, receive-only adoption of a 1W installation's controller key.
file  oneway_key_adoption.h
 Opt-in, receive-only adoption of a 1W installation's controller key.
file  oneway_sequence_store.cpp
 Persistent rolling-sequence counters for one-way (1W) transmit.
file  oneway_sequence_store.h
 Persistent rolling-sequence counters for one-way (1W) transmit.
file  oneway_transmitter.cpp
 One-way (1W) transmit collaborator.
file  oneway_transmitter.h
 One-way (1W) transmit collaborator.
file  operation_queue.cpp
 OperationQueue implementation.
file  operation_queue.h
 Pending-operation queue with per-type coalescing and deduplication.
file  pairing_advisor.cpp
 Read-only advisor that turns PairingTelemetry into actionable diagnostics.
file  pairing_advisor.h
 Read-only advisor that turns PairingTelemetry into actionable diagnostics.
file  pairing_engine.cpp
 Device pairing orchestration — discovery, key exchange, and finalization.
file  pairing_engine.h
 Device discovery and key-exchange engine for IO-Homecontrol pairing.
file  pairing_responder.cpp
 Pure decision logic for the device-role key-extraction responder.
file  pairing_responder.h
 Pure decision logic for the device-role "Accept Foreign Pairing" (system-key extraction) responder.
file  pairing_telemetry.cpp
 Structured per-attempt telemetry recorder implementation.
file  pairing_telemetry.h
 Structured per-attempt telemetry recorder for the pairing flow.
file  status_poll_policy.cpp
 StatusPollPolicy implementation.
file  status_poll_policy.h
 Per-device poll scheduling, failure backoff, and follow-up-poll state machine.

Classes

class  esphome::home_io_control::DeviceRegistry
 Owns the per-hub device table, update callbacks, and linked-remote associations. More...
class  esphome::home_io_control::IOHomeControlComponent
 The main IO-Homecontrol component. More...
class  esphome::home_io_control::KeyExtractionResponder
 Device-role responder for the "Recover System Key" feature. More...
class  esphome::home_io_control::ManagementActions
 Encapsulates hub-level management operations exposed as Home Assistant actions. More...
class  esphome::home_io_control::OnewayKeyAdoption
 Opt-in, receive-only listener that adopts an overheard 1W controller key. More...
class  esphome::home_io_control::OneWaySequenceStore
 Per-controller-identity rolling sequence counters, persisted across reboots. More...
struct  esphome::home_io_control::OneWayCommandReport
 What a 1W command attempt did — the only feedback this feature can ever produce. More...
class  esphome::home_io_control::OneWayTransmitter
 Sends 1W commands as the repeated bursts real remotes send. More...
class  esphome::home_io_control::PairingEngine
 Owns and drives all three phases of the IO-Homecontrol device pairing flow. More...
class  esphome::home_io_control::PairingTelemetry
 Fixed-size per-attempt telemetry recorder for the pairing flow. More...

Detailed Description

Hub orchestration, exchange state machines, pairing, and runtime operations.