Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
esphome::home_io_control::pairing::PairingContext Struct Reference

Context object that lives for the duration of a single pairing attempt. More...

#include <hub_pairing.h>

Collaboration diagram for esphome::home_io_control::pairing::PairingContext:

Public Attributes

PairingState state {PairingState::IDLE}
 Current state machine state.
IoDevice device {}
 Resolved device metadata after discovery (node_id, type, subtype, etc.).
IoFrame req {}
 Outbound frame buffer (reused across all phases).
IoFrame resp {}
 Inbound frame buffer (holds key‑confirm response).
IoFrame rx {}
 Raw RX frame during waiting phases (discovery, challenge, confirm).
IoFrame key_init {}
 Key‑init frame retained for key‑transfer IV derivation.
RadioRxPacket packet {}
 Raw radio capture for the current phase.
std::string device_id
 Hex string representation of the paired node ID.
bool discovery_metadata_complete {false}
 True when discovery carried type/subtype bytes.
bool discovery_low_power {false}
 True when discovery reported POWER_SAVE_LOW_POWER.
uint8_t discovery_manufacturer {0}
 Manufacturer byte of the discovery reply; 0 when it carried none.
bool saw_key_challenge {false}
 True once the device challenged our key-init this attempt.
bool key_refused {false}
 True once the device answered the key step with CMD_ERROR_RESP.
uint8_t key_refusal_code {0}
 That CMD_ERROR_RESP byte; only meaningful if key_refused.
bool has_pulled_key {false}
 True once a pull produced a different key the device proved.
uint8_t pulled_key [AES_KEY_SIZE] {}
 That key. Key material: never logged outside the pull report.

Detailed Description

Context object that lives for the duration of a single pairing attempt.

Definition at line 70 of file hub_pairing.h.

Member Data Documentation

◆ device

IoDevice esphome::home_io_control::pairing::PairingContext::device {}

Resolved device metadata after discovery (node_id, type, subtype, etc.).

Definition at line 72 of file hub_pairing.h.

◆ device_id

std::string esphome::home_io_control::pairing::PairingContext::device_id

Hex string representation of the paired node ID.

Definition at line 78 of file hub_pairing.h.

◆ discovery_low_power

bool esphome::home_io_control::pairing::PairingContext::discovery_low_power {false}

True when discovery reported POWER_SAVE_LOW_POWER.

Definition at line 80 of file hub_pairing.h.

◆ discovery_manufacturer

uint8_t esphome::home_io_control::pairing::PairingContext::discovery_manufacturer {0}

Manufacturer byte of the discovery reply; 0 when it carried none.

Definition at line 81 of file hub_pairing.h.

◆ discovery_metadata_complete

bool esphome::home_io_control::pairing::PairingContext::discovery_metadata_complete {false}

True when discovery carried type/subtype bytes.

Definition at line 79 of file hub_pairing.h.

◆ has_pulled_key

bool esphome::home_io_control::pairing::PairingContext::has_pulled_key {false}

True once a pull produced a different key the device proved.

Definition at line 85 of file hub_pairing.h.

◆ key_init

IoFrame esphome::home_io_control::pairing::PairingContext::key_init {}

Key‑init frame retained for key‑transfer IV derivation.

Definition at line 76 of file hub_pairing.h.

◆ key_refusal_code

uint8_t esphome::home_io_control::pairing::PairingContext::key_refusal_code {0}

That CMD_ERROR_RESP byte; only meaningful if key_refused.

Definition at line 84 of file hub_pairing.h.

◆ key_refused

bool esphome::home_io_control::pairing::PairingContext::key_refused {false}

True once the device answered the key step with CMD_ERROR_RESP.

Definition at line 83 of file hub_pairing.h.

◆ packet

RadioRxPacket esphome::home_io_control::pairing::PairingContext::packet {}

Raw radio capture for the current phase.

Definition at line 77 of file hub_pairing.h.

◆ pulled_key

uint8_t esphome::home_io_control::pairing::PairingContext::pulled_key[AES_KEY_SIZE] {}

That key. Key material: never logged outside the pull report.

Definition at line 86 of file hub_pairing.h.

◆ req

IoFrame esphome::home_io_control::pairing::PairingContext::req {}

Outbound frame buffer (reused across all phases).

Definition at line 73 of file hub_pairing.h.

◆ resp

IoFrame esphome::home_io_control::pairing::PairingContext::resp {}

Inbound frame buffer (holds key‑confirm response).

Definition at line 74 of file hub_pairing.h.

◆ rx

IoFrame esphome::home_io_control::pairing::PairingContext::rx {}

Raw RX frame during waiting phases (discovery, challenge, confirm).

Definition at line 75 of file hub_pairing.h.

◆ saw_key_challenge

bool esphome::home_io_control::pairing::PairingContext::saw_key_challenge {false}

True once the device challenged our key-init this attempt.

Definition at line 82 of file hub_pairing.h.

◆ state

PairingState esphome::home_io_control::pairing::PairingContext::state {PairingState::IDLE}

Current state machine state.

Definition at line 71 of file hub_pairing.h.


The documentation for this struct was generated from the following file: