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

Hub-level control entities: the discovery button, the scan-paired-devices button, the two arming switches, and the pairing-result diagnostic text sensor. More...

#include <functional>
#include <utility>
#include "esphome/components/button/button.h"
#include "esphome/components/switch/switch.h"
#include "esphome/components/text_sensor/text_sensor.h"
#include "esphome/core/component.h"
#include "hub_core.h"
#include "platform_entity_base.h"
Include dependency graph for platform_hub_controls.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  esphome::home_io_control::HubArmingSwitch
 Shared body for the hub-level arming switches. More...
class  esphome::home_io_control::IOHomeAcceptForeignPairingSwitch
 Hub-level switch entity: ON arms the key-extraction responder for 10 minutes, OFF disarms it immediately. More...
class  esphome::home_io_control::IOHomeRecoverOneWayKeySwitch
 Hub-level switch entity: ON arms the 1W key-recovery listener, OFF disarms it immediately. More...
class  esphome::home_io_control::IOHomeDiscoverButton
 Button entity that triggers device discovery and pairing when pressed in Home Assistant. More...
class  esphome::home_io_control::IOHomeScanPairedDevicesButton
 Button entity that runs the scan_paired_devices roll-call when pressed. More...
class  esphome::home_io_control::IOHomePairingResultTextSensor
 Diagnostic text sensor that publishes PairingTelemetry::result_sensor_string() after every pairing attempt. More...

Namespaces

namespace  esphome
namespace  esphome::home_io_control

Detailed Description

Hub-level control entities: the discovery button, the scan-paired-devices button, the two arming switches, and the pairing-result diagnostic text sensor.

These act on the hub as a whole and have no device to bind to (HubBoundEntity), and are created from the home_io_control: block or a dedicated button: entry rather than a device-bound platform entry — for the shared reason, see HubBoundEntity in platform_entity_base.h. They are created dynamically the same way tuning: {ui_controls: true} creates its number/select entities, and set_parent() is called with the very hub instance being built.

Definition in file platform_hub_controls.h.