Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
diagnostic_probes.h File Reference

Opt-in diagnostic probes: single frames and bounded sweeps for protocol research. More...

#include "device_registry.h"
#include "exchange_engine.h"
#include "management_helpers.h"
#include "proto_constants.h"
#include "proto_frame.h"
#include <cstdint>
#include <functional>
#include <string>
Include dependency graph for diagnostic_probes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  esphome::home_io_control::DiagnosticProbesHub
 The only three things a probe needs from the hub, injected by ManagementActions. More...
class  esphome::home_io_control::DiagnosticProbes
 Sends diagnostic probe frames to already-paired devices and reports the raw replies. More...

Namespaces

namespace  esphome
namespace  esphome::home_io_control

Variables

constexpr const char * esphome::home_io_control::MANAGEMENT_ACTION_PROBE_DEVICE = "probe_device"
 Native API action names of the two probe actions, shared with ManagementActions' registration table.
constexpr const char * esphome::home_io_control::MANAGEMENT_ACTION_PROBE_SWEEP = "probe_sweep"

Detailed Description

Opt-in diagnostic probes: single frames and bounded sweeps for protocol research.

DiagnosticProbes owns probe_device(), probe_sweep() and the data-transport read behind the read_object probe, with the table of probe names and frame builders. ManagementActions owns one instance and registers the two native API actions that drive it; the actions exist only with diagnostic_probes: true (docs/diagnostic-probes.md, ADR 0024).

The class reaches the hub through DiagnosticProbesHub, three injected calls, and includes no hub header. None of the three applies a status to a device record, so a probe reply stays raw: it can never be misread as a position update.

Definition in file diagnostic_probes.h.