2018-05-13 11:37:02 +02:00
|
|
|
Binary Sensor
|
|
|
|
=============
|
|
|
|
|
|
|
|
.. cpp:namespace:: binary_sensor
|
|
|
|
|
|
|
|
In esphomelib, every component that exposes a binary state, is a :cpp:class:`BinarySensor`.
|
|
|
|
|
|
|
|
To create your own binary sensor, simply subclass :cpp:class:`BinarySensor` and call
|
|
|
|
:cpp:func:`BinarySensor::publish_state` to tell the frontend that you have a new state.
|
|
|
|
Inversion is automatically done for you when publishing state and can be changed by the
|
|
|
|
user with :cpp:func:`BinarySensor::set_inverted`.
|
|
|
|
|
|
|
|
Supported Binary Sensors
|
|
|
|
------------------------
|
|
|
|
|
|
|
|
.. toctree::
|
|
|
|
|
|
|
|
GPIO Binary Sensor <gpio>
|
|
|
|
Node Status Binary Sensor <status>
|
|
|
|
ESP32 Touch Binary Sensor <esp32_touch>
|
|
|
|
|
|
|
|
Example Usage
|
|
|
|
-------------
|
|
|
|
|
|
|
|
.. code-block:: cpp
|
|
|
|
|
|
|
|
// Basic
|
|
|
|
App.register_binary_sensor(custom_binary_sensor);
|
|
|
|
// GPIO Binary Sensor
|
|
|
|
App.make_gpio_binary_sensor("Window Open", 36);
|
|
|
|
|
|
|
|
|
2018-05-14 21:15:49 +02:00
|
|
|
.. cpp:namespace:: nullptr
|
2018-05-13 11:37:02 +02:00
|
|
|
|
|
|
|
See :cpp:func:`Application::register_binary_sensor` and :cpp:func:`Application::make_gpio_binary_sensor`.
|
|
|
|
|
|
|
|
API Reference
|
|
|
|
-------------
|
|
|
|
|
|
|
|
.. cpp:namespace:: nullptr
|
|
|
|
|
|
|
|
BinarySensor
|
|
|
|
************
|
|
|
|
|
|
|
|
.. doxygenclass:: binary_sensor::BinarySensor
|
|
|
|
:members:
|
|
|
|
:protected-members:
|
|
|
|
:undoc-members:
|
|
|
|
|
|
|
|
MQTTBinarySensorComponent
|
|
|
|
*************************
|
|
|
|
|
|
|
|
.. doxygenclass:: binary_sensor::MQTTBinarySensorComponent
|
|
|
|
:members:
|
|
|
|
:protected-members:
|
|
|
|
:undoc-members:
|