Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
esphome::home_io_control::IOHomeOneWayEnrollButton Class Reference

Button entity that registers a configured controller identity as a 1W controller. More...

#include <platform_oneway_entities.h>

Inheritance diagram for esphome::home_io_control::IOHomeOneWayEnrollButton:
Collaboration diagram for esphome::home_io_control::IOHomeOneWayEnrollButton:

Public Member Functions

void setup () override
void dump_config () override
float get_setup_priority () const override
 Get setup priority so the parent hub is available first.
Public Member Functions inherited from esphome::home_io_control::OneWayControllerBound
void set_controller_id (const std::string &id)
 Set the controller identity this entity acts as / reports on.
Public Member Functions inherited from esphome::home_io_control::HubBoundEntity
void set_parent (IOHomeControlComponent *parent)
 Set the parent controller component.

Protected Member Functions

void press_action () override
 Queue the enrollment.

Additional Inherited Members

Protected Attributes inherited from esphome::home_io_control::OneWayControllerBound
std::string controller_id_
Protected Attributes inherited from esphome::home_io_control::HubBoundEntity
IOHomeControlComponent * parent_ {nullptr}

Detailed Description

Button entity that registers a configured controller identity as a 1W controller.

A press sends the gesture its manufacturer expects (OneWayTransmitter::send_enrollment(), ADR 0032). The receiver's half of enrollment is a physical gesture on the receiver side — a multi-second PROG hold on the actuator (Somfy), or a ~1 s Gear press on an already-registered control followed by the product's ready sequence (VELUX); that physical requirement is the real interlock against a stray or unintended enrollment, not a software arming switch — see ADR 0026.

Definition at line 70 of file platform_oneway_entities.h.

Member Function Documentation

◆ dump_config()

void esphome::home_io_control::IOHomeOneWayEnrollButton::dump_config ( )
override

Definition at line 34 of file platform_oneway_entities.cpp.

◆ get_setup_priority()

float esphome::home_io_control::IOHomeOneWayEnrollButton::get_setup_priority ( ) const
inlinenodiscardoverride

Get setup priority so the parent hub is available first.

Returns
setup_priority::DATA.

Definition at line 77 of file platform_oneway_entities.h.

◆ press_action()

void esphome::home_io_control::IOHomeOneWayEnrollButton::press_action ( )
inlineoverrideprotected

Queue the enrollment.

It goes through the operation queue like all radio work, so it cannot interleave with a 2W exchange (ADR 0013).

Definition at line 82 of file platform_oneway_entities.h.

Here is the call graph for this function:

◆ setup()

void esphome::home_io_control::IOHomeOneWayEnrollButton::setup ( )
inlineoverride

Definition at line 72 of file platform_oneway_entities.h.


The documentation for this class was generated from the following files: