1.7.0 docs
7
Makefile
@ -9,7 +9,7 @@ SOURCEDIR = .
|
||||
BUILDDIR = _build
|
||||
ESPHOMELIB_PATH = ../esphomelib
|
||||
|
||||
.PHONY: html cleanhtml minifyhtml doxyg cleandoxyg deploy help webserver Makefile
|
||||
.PHONY: html cleanhtml doxyg cleandoxyg deploy help webserver Makefile
|
||||
|
||||
html: _doxyxml
|
||||
$(SPHINXBUILD) -M html "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
|
||||
@ -17,9 +17,6 @@ html: _doxyxml
|
||||
cleanhtml: cleandoxyg
|
||||
rm -rf "$(BUILDDIR)/html/*"
|
||||
|
||||
minifyhtml: html
|
||||
./minify.sh
|
||||
|
||||
doxyg: cleandoxyg _doxyxml
|
||||
|
||||
cleandoxyg:
|
||||
@ -28,7 +25,7 @@ cleandoxyg:
|
||||
_doxyxml:
|
||||
ESPHOMELIB_PATH=$(ESPHOMELIB_PATH) doxygen Doxygen
|
||||
|
||||
deploy: cleanhtml doxyg html minifyhtml
|
||||
deploy: cleanhtml doxyg html
|
||||
touch "$(BUILDDIR)/html/.nojekyll"
|
||||
echo "esphomelib.com" >"$(BUILDDIR)/html/CNAME"
|
||||
cd "$(BUILDDIR)/html" && git add --all && git commit -m "Deploy to gh-pages"
|
||||
|
@ -19,3 +19,30 @@ img.component-image {
|
||||
table.docutils {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.blink-tag {
|
||||
-webkit-animation: 2s linear infinite blink_effect;
|
||||
animation: 2s linear infinite blink_effect;
|
||||
}
|
||||
@-webkit-keyframes blink_effect {
|
||||
0% {
|
||||
visibility: hidden;
|
||||
}
|
||||
50% {
|
||||
visibility: hidden;
|
||||
}
|
||||
100% {
|
||||
visibility: visible;
|
||||
}
|
||||
}
|
||||
@keyframes blink_effect {
|
||||
0% {
|
||||
visibility: hidden;
|
||||
}
|
||||
50% {
|
||||
visibility: hidden;
|
||||
}
|
||||
100% {
|
||||
visibility: visible;
|
||||
}
|
||||
}
|
@ -19,6 +19,7 @@ Supported Binary Sensors
|
||||
status
|
||||
esp32_touch
|
||||
template
|
||||
remote_receiver
|
||||
|
||||
Example Usage
|
||||
-------------
|
||||
|
76
api/binary_sensor/remote_receiver.rst
Normal file
@ -0,0 +1,76 @@
|
||||
Remote Receiver
|
||||
===============
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
See :cpp:func:`Application::make_remote_receiver_component` and
|
||||
:cpp:func:`Application::register_binary_sensor`.
|
||||
|
||||
API Reference
|
||||
-------------
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
.. doxygenclass:: remote::RemoteReceiverComponent
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::RemoteReceiver
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::RemoteReceiveDumper
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::LGReceiver
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenclass:: remote::LGDumper
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenfunction:: remote::decode_lg
|
||||
|
||||
.. doxygenclass:: remote::NECReceiver
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenclass:: remote::NECDumper
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenfunction:: remote::decode_nec
|
||||
|
||||
.. doxygenclass:: remote::PanasonicReceiver
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenclass:: remote::PanasonicDumper
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenfunction:: remote::decode_panasonic
|
||||
|
||||
.. doxygenclass:: remote::SonyReceiver
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenclass:: remote::SonyDumper
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenfunction:: remote::decode_sony
|
||||
|
||||
.. doxygenclass:: remote::RawReceiver
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
.. doxygenclass:: remote::RawDumper
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
16
api/misc/esp32_ble_beacon.rst
Normal file
@ -0,0 +1,16 @@
|
||||
ESP32 Bluetooth Low Energy Beacon
|
||||
=================================
|
||||
|
||||
See :cpp:func:`Application::make_esp32_ble_beacon`.
|
||||
|
||||
API Reference
|
||||
-------------
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
.. doxygenclass:: ESP32BLEBeacon
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenvariable:: global_esp32_ble_beacon
|
@ -21,8 +21,6 @@ API Reference
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
.. doxygenenum:: PCF8574GPIOMode
|
||||
|
||||
.. doxygenclass:: ESP32BLETracker
|
||||
:members:
|
||||
:protected-members:
|
||||
|
@ -2,6 +2,9 @@ Miscellaneous Components
|
||||
========================
|
||||
|
||||
.. toctree::
|
||||
PCF8574 <pcf8574>
|
||||
ESP32 Bluetooth Low Energy Tracker <esp32_ble_tracker>
|
||||
Debug Component <debug>
|
||||
|
||||
pcf8574
|
||||
esp32_ble_tracker
|
||||
debug
|
||||
status_led
|
||||
esp32_ble_beacon
|
||||
|
16
api/misc/status_led.rst
Normal file
@ -0,0 +1,16 @@
|
||||
Status LED
|
||||
==========
|
||||
|
||||
See :cpp:func:`Application::make_status_led`.
|
||||
|
||||
API Reference
|
||||
-------------
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
.. doxygenclass:: StatusLEDComponent
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenvariable:: global_status_led
|
16
api/sensor/duty_cycle.rst
Normal file
@ -0,0 +1,16 @@
|
||||
Duty Cycle Sensor
|
||||
=================
|
||||
|
||||
See :cpp:func:`Application::make_duty_cycle_sensor`.
|
||||
|
||||
API Reference
|
||||
-------------
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
.. doxygenclass:: sensor::DutyCycleSensor
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenvariable:: sensor::duty_cycle_sensors
|
@ -29,6 +29,8 @@ See :cpp:func:`Application::register_sensor`.
|
||||
max6675.rst
|
||||
rotary_encoder.rst
|
||||
template.rst
|
||||
duty_cycle.rst
|
||||
wifi_signal.rst
|
||||
|
||||
|
||||
API Reference
|
||||
|
@ -5,7 +5,7 @@ The `switch_` namespace contains all switch helpers.
|
||||
|
||||
.. toctree::
|
||||
|
||||
ir-transmitter
|
||||
remote_transmitter
|
||||
restart
|
||||
shutdown
|
||||
template
|
||||
|
@ -1,44 +0,0 @@
|
||||
IR Transmitter
|
||||
==============
|
||||
|
||||
Example Usage
|
||||
-------------
|
||||
|
||||
.. code-block:: cpp
|
||||
|
||||
// at the top of your file:
|
||||
using namespace switch_::ir_;
|
||||
|
||||
// Create the hub
|
||||
auto *ir = App.make_ir_transmitter(32);
|
||||
// Create switches
|
||||
auto *panasonic_on = ir->create_transmitter("Panasonic TV On", SendData::from_panasonic(0x4004, 0x100BCBD).repeat(25));
|
||||
App.register_switch(panasonic_on);
|
||||
App.register_switch(ir->create_transmitter("Panasonic TV Volume Up", SendData::from_panasonic(0x4004, 0x1000405)));
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
See :cpp:func:`Application::make_ir_transmitter` and :cpp:func:`Application::register_switch`.
|
||||
|
||||
API Reference
|
||||
-------------
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
IRTransmitterComponent
|
||||
**********************
|
||||
|
||||
.. doxygenclass:: switch_::IRTransmitterComponent
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenvariable:: switch_::next_rmt_channel
|
||||
|
||||
SendData
|
||||
********
|
||||
|
||||
.. doxygennamespace:: switch_::ir
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
57
api/switch/remote_transmitter.rst
Normal file
@ -0,0 +1,57 @@
|
||||
Remote Transmitter
|
||||
==================
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
See :cpp:func:`Application::make_remote_transmitter_component` and
|
||||
:cpp:func:`Application::register_switch`.
|
||||
|
||||
API Reference
|
||||
-------------
|
||||
|
||||
.. cpp:namespace:: nullptr
|
||||
|
||||
.. doxygenclass:: remote::RemoteTransmitterComponent
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::RemoteTransmitter
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::RemoteTransmitData
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::RemoteControlComponentBase
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::LGTransmitter
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::NECTransmitter
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::PanasonicTransmitter
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::RawTransmitter
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
||||
|
||||
.. doxygenclass:: remote::SonyTransmitter
|
||||
:members:
|
||||
:protected-members:
|
||||
:undoc-members:
|
@ -1,6 +1,7 @@
|
||||
Binary Sensor Core, components/binary_sensor/index, folder-open.svg
|
||||
GPIO, components/binary_sensor/gpio, pin.svg
|
||||
Status, components/binary_sensor/status, server-network.svg
|
||||
ESP32 BLE Device, components/binary_sensor/esp32_ble, bluetooth.svg
|
||||
ESP32 BLE Device, components/binary_sensor/esp32_ble_tracker, bluetooth.svg
|
||||
ESP32 Touch Pad, components/binary_sensor/esp32_touch, touch.svg
|
||||
Template Binary Sensor, components/binary_sensor/template, description.svg
|
||||
Remote Receiver, components/binary_sensor/remote_receiver, remote.svg
|
||||
|
|
@ -1,12 +1,12 @@
|
||||
ESP32 Bluetooth Low Energy Device
|
||||
=================================
|
||||
|
||||
The ``esp32_ble`` binary sensor platform lets you track the presence of a
|
||||
The ``esp32_ble_tracker`` binary sensor platform lets you track the presence of a
|
||||
bluetooth low energy device.
|
||||
|
||||
.. note::
|
||||
|
||||
See the :doc:`ESP32 BLE Hub Page </esphomeyaml/components/esp32_ble>` for
|
||||
See the :doc:`ESP32 BLE Hub Page </esphomeyaml/components/esp32_ble_tracker>` for
|
||||
current limitations of this platform
|
||||
|
||||
.. figure:: images/esp32_ble-ui.png
|
||||
@ -16,11 +16,11 @@ bluetooth low energy device.
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
esp32_ble:
|
||||
esp32_ble_tracker:
|
||||
scan_interval: 300s
|
||||
|
||||
binary_sensor:
|
||||
- platform: esp32_ble
|
||||
- platform: esp32_ble_tracker
|
||||
mac_address: AC:37:43:77:5F:4C
|
||||
name: "ESP32 BLE Tracker Google Home Mini"
|
||||
|
||||
@ -40,7 +40,7 @@ Setting Up Devices
|
||||
|
||||
To set up binary sensors for specific BLE beacons you first have to know which MAC address
|
||||
to track. Most devices show this screen in some setting menu. If you don't know the MAC address,
|
||||
however, you can use the ``esp32_ble`` hub without any binary sensors attached and read through
|
||||
however, you can use the ``esp32_ble_tracker`` hub without any binary sensors attached and read through
|
||||
the logs to see discovered Bluetooth Low Energy devices.
|
||||
|
||||
.. code:: yaml
|
||||
@ -60,8 +60,8 @@ tracking, since their MAC-address periodically changes.
|
||||
See Also
|
||||
^^^^^^^^
|
||||
|
||||
- :doc:`/esphomeyaml/components/esp32_ble`
|
||||
- :doc:`/esphomeyaml/components/esp32_ble_tracker`
|
||||
- :doc:`/esphomeyaml/components/binary_sensor/index`
|
||||
- :doc:`API Reference </api/misc/esp32_ble_tracker>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/binary_sensor/esp32_ble.rst>`__
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/binary_sensor/esp32_ble_tracker.rst>`__
|
||||
|
@ -26,6 +26,66 @@ Configuration variables:
|
||||
- All other options from :ref:`Binary Sensor <config-binary_sensor>`
|
||||
and :ref:`MQTT Component <config-mqtt-component>`.
|
||||
|
||||
.. note::
|
||||
|
||||
For some applications such as reed switches you need to set the pin mode to ``INPUT_PULLUP``
|
||||
like this:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin:
|
||||
number: D2
|
||||
mode: INPUT_PULLUP
|
||||
name: ...
|
||||
|
||||
Inverting Values
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
Use the ``inverted`` property of the :ref:`Pin Schema <config-pin_schema>` to invert the binary
|
||||
sensor:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin:
|
||||
number: D2
|
||||
inverted: True
|
||||
name: ...
|
||||
|
||||
Debouncing Values
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
Some binary sensors are a bit unstable and quickly transition between the ON and OFF state while
|
||||
they're pressed. To fix this and debounce the signal, use the :ref:`binary sensor filters <binary_sensor-filters>`:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin: D2
|
||||
name: ...
|
||||
filters:
|
||||
- delayed_on: 10ms
|
||||
|
||||
Above example will only make the signal go high if the button has stayed high for more than 10ms.
|
||||
Alternatively, below configuration will make the binary sensor publish an ON value immediately, but
|
||||
will wait 10ms before publishing an OFF value:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
binary_sensor:
|
||||
- platform: gpio
|
||||
pin: D2
|
||||
name: ...
|
||||
filters:
|
||||
- delayed_off: 10ms
|
||||
|
||||
See Also
|
||||
^^^^^^^^
|
||||
|
||||
|
@ -26,9 +26,11 @@ Configuration variables:
|
||||
- **device_class** (*Optional*, string): The device class for the
|
||||
sensor. See https://www.home-assistant.io/components/binary_sensor/
|
||||
for a list of available options.
|
||||
- **inverted** (*Optional*, boolean): Whether to invert the binary
|
||||
sensor output, i.e. report ON states as OFF and vice versa. Defaults
|
||||
to ``False``.
|
||||
- **filters** (*Optional*, list): A list of filters to apply on the binary sensor values such as
|
||||
inverting signals. See :ref:`binary_sensor-filters`.
|
||||
|
||||
Automations:
|
||||
|
||||
- **on_press** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the button is pressed. See :ref:`binary_sensor-on_press`.
|
||||
- **on_release** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
@ -36,13 +38,52 @@ Configuration variables:
|
||||
- **on_click** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the button is held down for a specified period of time.
|
||||
See :ref:`binary_sensor-on_click`.
|
||||
- **on_click** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
- **on_double_click** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the button is pressed twice for specified periods of time.
|
||||
See :ref:`binary_sensor-on_double_click`.
|
||||
- All other options from :ref:`MQTT Component <config-mqtt-component>`.
|
||||
|
||||
.. _binary_sensor-filters:
|
||||
|
||||
Binary Sensor Filters
|
||||
---------------------
|
||||
|
||||
With binary sensor filters you can customize how esphomelib handles your binary sensor values even more.
|
||||
They are similar to :ref:`Sensor Filters <sensor-filters>`.
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
binary_sensor:
|
||||
- platform: ...
|
||||
# ...
|
||||
filters:
|
||||
- invert:
|
||||
- delayed_on: 100ms
|
||||
- delay_off: 100ms
|
||||
- lambda: >-
|
||||
if (id(other_binary_sensor).value) {
|
||||
return x;
|
||||
} else {
|
||||
return {};
|
||||
}
|
||||
|
||||
Supported filters:
|
||||
|
||||
- **invert**: Simple filter that just inverts every value from the binary sensor.
|
||||
- **delayed_on**: When a signal ON is received, wait for the specified time period until publishing
|
||||
an ON state. If an OFF value is received while waiting, the ON action is discarded. Or in other words:
|
||||
Only send an ON value if the binary sensor has stayed ON for at least the specified time period.
|
||||
**Useful for debouncing push buttons**.
|
||||
- **delayed_on**: When a signal OFF is received, wait for the specified time period until publishing
|
||||
an OFF state. If an ON value is received while waiting, the OFF action is discarded. Or in other words:
|
||||
Only send an OFF value if the binary sensor has stayed OFF for at least the specified time period.
|
||||
**Useful for debouncing push buttons**.
|
||||
- **lambda**: Specify any :ref:`lambda <config-lambda>` for more complex filters. The input value from
|
||||
the binary sensor is ``x`` and you can return ``true`` for ON, ``false`` for OFF, and ``{}`` to stop
|
||||
the filter chain.
|
||||
|
||||
Binary Sensor Automation
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
------------------------
|
||||
|
||||
The triggers for binary sensors in esphomeyaml use the lingo from computer mouses. This naming might not
|
||||
perfectly fit every use case, but at least makes the naming consistent. For example, a ``press`` is triggered
|
||||
@ -190,6 +231,7 @@ See Also
|
||||
|
||||
gpio.rst
|
||||
status.rst
|
||||
esp32_ble.rst
|
||||
esp32_ble_tracker.rst
|
||||
esp32_touch.rst
|
||||
template.rst
|
||||
remote_receiver.rst
|
||||
|
45
esphomeyaml/components/binary_sensor/remote_receiver.rst
Normal file
@ -0,0 +1,45 @@
|
||||
Remote Receiver Binary Sensor
|
||||
=============================
|
||||
|
||||
The ``remote_receiver`` binary sensor lets you track when a button on a remote control is pressed.
|
||||
|
||||
Each time the pre-defined signal is received, the binary sensor will briefly go ON and
|
||||
then immediately OFF.
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
remote_receiver:
|
||||
pin: GPIO32
|
||||
dump: all
|
||||
|
||||
binary_sensor:
|
||||
- platform: remote_receiver
|
||||
panasonic:
|
||||
address: 0x4004
|
||||
command: 0x100BCBD
|
||||
|
||||
Configuration variables:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
- **name** (**Required**, string): The name for the binary sensor.
|
||||
- The remote code, see :ref:`remote_transmitter-codes`. Only one
|
||||
of them can be specified per binary sensor.
|
||||
- **remote_receiver_id** (*Optional*, :ref:`config-id`): The id of the :doc:`/esphomeyaml/components/remote_receiver`.
|
||||
Defaults to the first hub in your configuration.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
- All other options from :ref:`Binary Sensor <config-binary_sensor>`
|
||||
and :ref:`MQTT Component <config-mqtt-component>`.
|
||||
|
||||
.. note::
|
||||
|
||||
See :ref:`finding_remote_codes` for a guide for setting this up.
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`index`
|
||||
- :doc:`/esphomeyaml/components/remote_receiver`
|
||||
- :doc:`/esphomeyaml/components/remote_transmitter`
|
||||
- :doc:`API Reference </api/binary_sensor/remote_receiver>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/binary_sensor/remote_receiver.rst>`__
|
@ -43,7 +43,7 @@ Configuration variables:
|
||||
|
||||
.. note::
|
||||
|
||||
The :ref:`availability feature <mqtt-last_will_birth>`__ of the MQTT client will cause all values
|
||||
The :ref:`availability feature <mqtt-last_will_birth>` of the MQTT client will cause all values
|
||||
from the node to be displayed as "unavailable" while the node is in deep sleep mode. To disable availability
|
||||
reporting and not have any "unavailable" values, set ``availability`` to an empty value:
|
||||
|
||||
|
75
esphomeyaml/components/esp32_ble_beacon.rst
Normal file
@ -0,0 +1,75 @@
|
||||
ESP32 Bluetooth Low Energy Beacon
|
||||
=================================
|
||||
|
||||
The ``esp32_ble_beacon`` component creates a Bluetooth Low Energy Beacon with your ESP32 device.
|
||||
Beacons are BLE devices that repeatedly just send out a pre-defined packet of data. This packet
|
||||
can then be received by devices like smartphones and can then be used to track a phone's location.
|
||||
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
esp32_ble_beacon:
|
||||
type: iBeacon
|
||||
uuid: 'c29ce823-e67a-4e71-bff2-abaa32e77a98'
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **type** (**Required**): The type of beacon to create, currently only supports ``iBeacon``.
|
||||
- **uuid** (**Required**): The `universally unique identifier <https://en.wikipedia.org/wiki/Universally_unique_identifier>`__
|
||||
to identify the beacon.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID for code generation.
|
||||
|
||||
Advanced options:
|
||||
|
||||
- **major** (*Optional*, integer): The iBeacon major identifier of this beacon. Usually used to
|
||||
group beacons, for example for grouping all beacons in the same building, but has no effect if
|
||||
the BLE receiver doesn't use it. Defaults to ``10167``.
|
||||
- **minor** (*Optional*, integer): The iBeacon minor identifier of this beacon. Usually used to
|
||||
identify beacons within an iBeacon group. Defaults to ``61958``.
|
||||
|
||||
Setting Up
|
||||
----------
|
||||
|
||||
First, you'll need to set up the configuration for esphomeyaml. Just copy above configuration and
|
||||
change the UUID to something unique. For example, you can copy below randomly generated UUID:
|
||||
|
||||
.. raw:: html
|
||||
|
||||
<input type="text" id="ble-uuid" style="width: 240px;" readonly="readonly">
|
||||
<script>
|
||||
// https://stackoverflow.com/a/105074/8924614
|
||||
function guid() {
|
||||
function s4() {
|
||||
return Math.floor((1 + Math.random()) * 0x10000)
|
||||
.toString(16)
|
||||
.substring(1);
|
||||
}
|
||||
return s4() + s4() + '-' + s4() + '-' + s4() + '-' + s4() + '-' + s4() + s4() + s4();
|
||||
}
|
||||
document.getElementById("ble-uuid").value = guid();
|
||||
</script>
|
||||
|
||||
Then, just compile and flash the ESP32. Note that esphomeyaml needs to increase the size of the code
|
||||
partitions of the ESP32 because BLE can take up a lot of space. It does this automatically, but you need
|
||||
to flash the ESP32 via USB when enabling or disabling this component.
|
||||
|
||||
When everything is set up correctly, you should see a show up using your iBeacon scanner of choice. On iPhones,
|
||||
this should already work from the bluetooth screen (not tested), on Android, you will need to use an app like
|
||||
`"Beacon Scanner" <https://play.google.com/store/apps/details?id=com.bridou_n.beaconscanner>`__ by Nicolas Bridoux.
|
||||
|
||||
For using these beacons to track the location of your phone, you will need to use another app. For example, I used
|
||||
`this guide by the owntracks <https://owntracks.org/booklet/features/beacons/>`__ app to let my Home Automation system
|
||||
know when I'm home or away.
|
||||
|
||||
.. figure:: images/esp32_ble_beacon-ibeacon.png
|
||||
:align: center
|
||||
:width: 75.0%
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`binary_sensor/esp32_ble_tracker`
|
||||
- :doc:`API Reference </api/misc/esp32_ble_beacon>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/esp32_ble_beacon.rst>`__
|
@ -1,7 +1,7 @@
|
||||
ESP32 Bluetooth Low Energy Hub
|
||||
==============================
|
||||
ESP32 Bluetooth Low Energy Tracker Hub
|
||||
======================================
|
||||
|
||||
The ``esp32_ble`` component creates a global hub so that you can track bluetooth low
|
||||
The ``esp32_ble_tracker`` component creates a global hub so that you can track bluetooth low
|
||||
energy devices using your ESP32 node.
|
||||
|
||||
Currently this component only works with few supported bluetooth devices (most of them
|
||||
@ -23,11 +23,11 @@ for information on how you can find out the MAC address of a device and track it
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
esp32_ble:
|
||||
esp32_ble_tracker:
|
||||
scan_interval: 300s
|
||||
|
||||
binary_sensor:
|
||||
- platform: esp32_ble
|
||||
- platform: esp32_ble_tracker
|
||||
mac_address: AC:37:43:77:5F:4C
|
||||
name: "ESP32 BLE Tracker Google Home Mini"
|
||||
|
||||
@ -41,6 +41,6 @@ Configuration variables:
|
||||
See Also
|
||||
^^^^^^^^
|
||||
|
||||
- :doc:`binary_sensor/esp32_ble`
|
||||
- :doc:`binary_sensor/esp32_ble_tracker`
|
||||
- :doc:`API Reference </api/misc/esp32_ble_tracker>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/esp32_ble.rst>`__
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/esp32_ble_tracker.rst>`__
|
@ -28,6 +28,9 @@ Configuration variables:
|
||||
from `this list <http://docs.platformio.org/en/latest/platforms/espressif32.html#boards>`__
|
||||
and use `this list <http://docs.platformio.org/en/latest/platforms/espressif8266.html#boards>`__
|
||||
for ESP8266-based boards.
|
||||
|
||||
Advanced options:
|
||||
|
||||
- **library_uri** (*Optional*, string): You can manually specify the
|
||||
`version of esphomelib <https://github.com/OttoWinter/esphomelib/releases>`__ to
|
||||
use here. Accepts all parameters of `platformio lib
|
||||
@ -41,6 +44,12 @@ Configuration variables:
|
||||
build flags that specifically set what should be included in the binary. Most of
|
||||
this is already done automatically by the linker but this option can help with
|
||||
shrinking the firmware size while slowing down compilation. Defaults to ``true``.
|
||||
- **build_path** (*Optional*, string): Customize where esphomeyaml will store the build files
|
||||
for your node. By default, esphomeyaml puts all platformio project files under a folder ``<NODE_NAME>/``,
|
||||
but you can customize this behavior using this option.
|
||||
|
||||
Automations:
|
||||
|
||||
- **on_boot** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when the node starts. See :ref:`esphomeyaml-on_boot`.
|
||||
- **on_shutdown** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
|
@ -26,8 +26,6 @@ Configuration variables:
|
||||
Note that this can slow down startup and is only recommended for when setting up new sensors. Defaults to
|
||||
``False``.
|
||||
- **frequency** (*Optional*, float): Set the frequency the i²c bus should operate on. Defaults to “100kHz”.
|
||||
- **receive_timeout** (*Optional*, :ref:`config-time`): Advanced: Set a timeout
|
||||
for operations on the i2c bus. Defaults to 100ms.
|
||||
|
||||
.. note::
|
||||
|
||||
|
BIN
esphomeyaml/components/images/esp32_ble_beacon-ibeacon.png
Normal file
After Width: | Height: | Size: 20 KiB |
@ -14,11 +14,12 @@ Components
|
||||
dallas
|
||||
debug
|
||||
deep_sleep
|
||||
esp32_ble
|
||||
esp32_ble_tracker
|
||||
esp32_touch
|
||||
esphomeyaml
|
||||
i2c
|
||||
ir_transmitter
|
||||
remote_transmitter
|
||||
remote_receiver
|
||||
logger
|
||||
mqtt
|
||||
ota
|
||||
@ -27,3 +28,5 @@ Components
|
||||
power_supply
|
||||
web_server
|
||||
wifi
|
||||
esp32_ble_beacon
|
||||
status_led
|
||||
|
@ -1,46 +0,0 @@
|
||||
IR Transmitter Component
|
||||
========================
|
||||
|
||||
The IR transmitter component lets you send infrared messages to control devices in your home.
|
||||
First, you need to setup a global hub that specifies which pin your IR
|
||||
led is connected to. Afterwards you can create :doc:`individual
|
||||
switches </esphomeyaml/components/switch/ir_transmitter>` that
|
||||
each send a pre-defined IR code to a device.
|
||||
|
||||
.. note::
|
||||
|
||||
This component is *much* more accurate on the ESP32, since that chipset has a dedicated
|
||||
peripheral for sending exact signal sequences.
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
ir_transmitter:
|
||||
- id: 'ir_hub1'
|
||||
pin: 32
|
||||
|
||||
# Individual switches
|
||||
switch:
|
||||
- platform: ir_transmitter
|
||||
ir_transmitter_id: 'ir_hub1'
|
||||
name: "Panasonic TV Off"
|
||||
panasonic:
|
||||
address: 0x4004
|
||||
command: 0x100BCBD
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **pin** (**Required**, :ref:`config-pin`): The pin of the IR LED.
|
||||
- **carrier_duty_percent** (*Optional*, int): The duty percentage of
|
||||
the carrier. 50 for example means that the LED will be on 50% of the
|
||||
time. Must be in range from 1 to 100. Defaults to 50.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify
|
||||
the ID used for code generation. Use this if you have multiple IR
|
||||
transmitters.
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`API Reference </api/switch/ir-transmitter>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/ir_transmitter.rst>`__
|
@ -46,6 +46,8 @@ Configuration variables:
|
||||
- **ssl_fingerprints** (*Optional*, list): Only on ESP8266. A list of SHA1 hashes used
|
||||
for verifying SSL connections. See :ref:`mqtt-ssl_fingerprints`
|
||||
for more information.
|
||||
- **reboot_timeout** (*Optional*, :ref:`time <config-time>`): The amount of time to wait before rebooting when no
|
||||
MQTT connection exists. Can be disabled by setting this to ``0s``. Defaults to ``60s``.
|
||||
- **keepalive** (*Optional*, :ref:`config-time`): The time
|
||||
to keep the MQTT socket alive, decreasing this can help with overall stability due to more
|
||||
WiFi traffic with more pings. Defaults to 15 seconds.
|
||||
@ -250,6 +252,9 @@ Configuration variables:
|
||||
- **command_topic** (*Optional*, string): The topic to subscribe to for
|
||||
commands from the remote. Defaults to
|
||||
``<TOPIC_PREFIX>/<COMPONENT_TYPE>/<COMPONENT_NAME>/command``.
|
||||
- **internal** (*Optional*, boolean): Mark this component as internal. Internal components will
|
||||
not send any MQTT messages and can be used for :ref:`on-device automations <automation>`. Only
|
||||
specifying an ``id`` without a ``name`` will implicitly set this to true.
|
||||
|
||||
.. warning::
|
||||
|
||||
|
52
esphomeyaml/components/remote_receiver.rst
Normal file
@ -0,0 +1,52 @@
|
||||
Remote Receiver Component
|
||||
=========================
|
||||
|
||||
The ``remote_receiver`` component lets you receive and decode any remote signal, these can
|
||||
for example be infrared remotes or 433MHz signals.
|
||||
|
||||
The component is split up into two parts: the remote receiver hub which can be used to
|
||||
receive, decode and dump all remote codes, and individual
|
||||
:doc:`remote receiver binary sensors <binary_sensor/remote_receiver>` which will trigger when they
|
||||
hear their own configured signal.
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
remote_receiver:
|
||||
pin: GPIO32
|
||||
dump: all
|
||||
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **pin** (**Required**, :ref:`config-pin`): The pin to receive the remote signal on.
|
||||
- **dump** (*Optional*, list): Decode and dump these remote codes in the logs. Set to ``all`` to
|
||||
dump all available codecs:
|
||||
|
||||
- **lg**: Decode and dump LG infrared codes.
|
||||
- **nec**: Decode and dump NEC infrared codes.
|
||||
- **panasonic**: Decode and dump Panasonic infrared codes.
|
||||
- **sony**: Decode and dump Sony infrared codes.
|
||||
- **raw**: Print all remote codes in their raw form. Useful for using arbitrary protocols.
|
||||
|
||||
- **tolerance** (*Optional*, int): The percentage that the remote signal lengths can devicate in the
|
||||
decoding process. Defaults to ``25%``.
|
||||
- **buffer_size** (*Optional*, int): The size of the internal buffer for storing the remote codes. Defaults to ``10kb``
|
||||
on the ESP32 and ``1kb`` on the ESP8266.
|
||||
- **filter** (*Optional*, :ref:`time <config-time>`): Filter any pulses that are shorter than this. Useful for removing
|
||||
glitches from noisy signals. Defaults to ``10us``.
|
||||
- **idle** (*Optional*, :ref:`time <config-time>`): The amount of time that a signal should remain stable (i.e. not
|
||||
change) for it to be considered complete. Defaults to ``10ms``.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation. Use this if you have
|
||||
multiple remote transmitters.
|
||||
|
||||
.. note::
|
||||
|
||||
See :ref:`finding_remote_codes` for a guide for setting this up.
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`API Reference </api/switch/remote_transmitter>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/remote_transmitter.rst>`__
|
49
esphomeyaml/components/remote_transmitter.rst
Normal file
@ -0,0 +1,49 @@
|
||||
Remote Transmitter Component
|
||||
============================
|
||||
|
||||
The ``remote_transmitter`` component lets you send infrared messages to control
|
||||
devices in your home. First, you need to setup a global hub that specifies which pin your remote
|
||||
sender is connected to. Afterwards you can create :doc:`individual
|
||||
switches </esphomeyaml/components/switch/remote_transmitter>` that each send a pre-defined remote signal to a device.
|
||||
|
||||
Use-cases are for example infrared remotes or 433MHz signals.
|
||||
|
||||
.. note::
|
||||
|
||||
This component is *much* more accurate on the ESP32, since that chipset has a dedicated
|
||||
peripheral for sending exact signal sequences.
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
remote_transmitter:
|
||||
pin: GPIO32
|
||||
carrier_duty_percent: 50%
|
||||
|
||||
# Individual switches
|
||||
switch:
|
||||
- platform: remote_transmitter
|
||||
name: "Panasonic TV Off"
|
||||
panasonic:
|
||||
address: 0x4004
|
||||
command: 0x100BCBD
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **pin** (**Required**, :ref:`config-pin`): The pin to transmit the remote signal on.
|
||||
- **carrier_duty_percent** (*Optional*, int): How much of the time the remote is on. For example, infrared
|
||||
protocols modulate the signal using a carrier signal. Set this is ``50%`` if you're working with IR leds and to
|
||||
``100%`` if working with a other things like 433MHz transmitters.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify
|
||||
the ID used for code generation. Use this if you have multiple remote transmitters.
|
||||
|
||||
.. note::
|
||||
|
||||
See :ref:`finding_remote_codes` for a guide for setting this up.
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`API Reference </api/switch/remote_transmitter>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/remote_transmitter.rst>`__
|
28
esphomeyaml/components/sensor/duty_cycle.rst
Normal file
@ -0,0 +1,28 @@
|
||||
Duty Cycle Sensor
|
||||
=================
|
||||
|
||||
The duty cycle sensor allows you to measure for what percentage of time a signal
|
||||
on a GPIO pin is HIGH or LOW.
|
||||
|
||||
For example, you can measure if a status LED of a pool controller is permanently active
|
||||
(indicating that the pump is on) or blinking.
|
||||
|
||||
.. figure:: images/duty_cycle-ui.png
|
||||
:align: center
|
||||
:width: 80.0%
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
sensor:
|
||||
- platform: duty_cycle
|
||||
pin: D0
|
||||
name: Duty Cycle Sensor
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **pin** (*Optional*, :ref:`Pin Schema <config-pin_schema>`): The pin to observe for the duty
|
||||
cycle.
|
||||
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the sensor. Defaults to ``15s``.
|
||||
See :ref:`sensor-default_filter`.
|
BIN
esphomeyaml/components/sensor/images/duty_cycle-ui.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
@ -43,6 +43,9 @@ Configuration variables:
|
||||
- **filters** (*Optional*): Specify filters to use for some basic
|
||||
transforming of values. Defaults to a basic sliding window moving
|
||||
average over the last few values. See :ref:`Sensor Filters <sensor-filters>` for more information.
|
||||
|
||||
Automations:
|
||||
|
||||
- **on_value** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
when a new value is published. See :ref:`sensor-on_value`.
|
||||
- **on_value_range** (*Optional*, :ref:`Automation <automation>`): An automation to perform
|
||||
@ -322,3 +325,5 @@ See Also
|
||||
max6675.rst
|
||||
esp32_hall.rst
|
||||
custom.rst
|
||||
duty_cycle.rst
|
||||
wifi_signal.rst
|
||||
|
@ -1,8 +1,10 @@
|
||||
ESP32 Pulse Counter Sensor
|
||||
==========================
|
||||
Pulse Counter Sensor
|
||||
====================
|
||||
|
||||
The pulse counter sensor allows you to count the number of pulses on a
|
||||
specific pin using the `pulse counter
|
||||
The pulse counter sensor allows you to count the number of pulses and the frequency of a signal
|
||||
on any pin.
|
||||
|
||||
On the ESP32, this sensor is even highly accurate because it's using the hardware `pulse counter
|
||||
peripheral <https://esp-idf.readthedocs.io/en/latest/api-reference/peripherals/pcnt.html>`__
|
||||
on the ESP32.
|
||||
|
||||
@ -23,10 +25,6 @@ Configuration variables:
|
||||
|
||||
- **pin** (**Required**, :ref:`config-pin`): The pin to count pulses on.
|
||||
- **name** (**Required**, string): The name of the sensor.
|
||||
- **pull_mode** (*Optional*): The `pull
|
||||
mode <https://esp-idf.readthedocs.io/en/latest/api-reference/peripherals/gpio.html#_CPPv218gpio_set_pull_mode10gpio_num_t16gpio_pull_mode_t>`__
|
||||
of the pin. One of ``PULLUP``, ``PULLDOWN``, ``PULLUP_PULLDOWN``,
|
||||
``FLOATING``. Defaults to ``FLOATING``.
|
||||
- **count_mode** (*Optional*): Configure how the counter should behave
|
||||
on a detected rising edge/falling edge.
|
||||
|
||||
|
43
esphomeyaml/components/status_led.rst
Normal file
@ -0,0 +1,43 @@
|
||||
Status LED
|
||||
==========
|
||||
|
||||
The ``status_led`` hooks into all esphomelib components and can indicate the status of
|
||||
the device. Specifically, it will:
|
||||
|
||||
- Blink slowly (about every second) when a **warning** is active. Warnings are active when for
|
||||
example reading a sensor value fails temporarily or the WiFi/MQTT connections are disrupted.
|
||||
- Blink quickly (multiple times per second) when an **error** is active. Errors indicate that
|
||||
esphomelib has found an error while setting up. In most cases, esphomelib will still try to
|
||||
recover from the error and continue with all other operations.
|
||||
- Stay off otherwise.
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
status_led:
|
||||
pin: GPIO2
|
||||
|
||||
Configuration variables:
|
||||
------------------------
|
||||
|
||||
- **pin** (**Required**, :ref:`Pin Schema <config-pin_schema>`): The
|
||||
GPIO pin to operate the status LED on.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
|
||||
.. note::
|
||||
|
||||
If your LED is in an active-LOW mode (when it's on if the output is enabled), use the
|
||||
``inverted`` option of the :ref:`Pin Schema <config-pin_schema>`:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
status_led:
|
||||
pin:
|
||||
number: D0
|
||||
inverted: True
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`API Reference </api/misc/status_led>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/status_led.rst>`__
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
BIN
esphomeyaml/components/switch/images/rf_receiver-log_raw.png
Normal file
After Width: | Height: | Size: 28 KiB |
@ -117,6 +117,6 @@ See Also
|
||||
gpio.rst
|
||||
shutdown.rst
|
||||
output.rst
|
||||
ir_transmitter.rst
|
||||
remote_transmitter.rst
|
||||
restart.rst
|
||||
template.rst
|
||||
|
@ -1,114 +0,0 @@
|
||||
IR Transmitter Switch
|
||||
=====================
|
||||
|
||||
The ``ir_transmitter`` switch platform allows you to create switches
|
||||
that send an IR code using the :doc:`/esphomeyaml/components/ir_transmitter`. Every time
|
||||
the switch is turned on, the IR signal with the provided IR code is sent
|
||||
out.
|
||||
|
||||
Theoretically this platform can also be used to create arbitrary output
|
||||
signals on any pin by using the ``raw:`` option.
|
||||
|
||||
.. figure:: images/ir_transmitter-ui.png
|
||||
:align: center
|
||||
:width: 80.0%
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
ir_transmitter:
|
||||
pin: 32
|
||||
|
||||
# Individual switches
|
||||
switch:
|
||||
- platform: ir_transmitter
|
||||
name: "Panasonic TV Off"
|
||||
panasonic:
|
||||
address: 0x4004
|
||||
command: 0x100BCBD
|
||||
repeat: 25
|
||||
|
||||
Configuration variables:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
- **name** (**Required**, string): The name for the switch.
|
||||
- The IR code, see :ref:`ir_transmitter-ir_codes`. Only one
|
||||
of them can be specified per switch.
|
||||
- **repeat** (*Optional*, int): How often the command should be
|
||||
repeated. Additionally, an ``wait_time`` option can be specified in the ``repeat`` section
|
||||
to set how long to wait in between repeats. Defaults to 1 (code is
|
||||
sent once). Example: ``repeat\: \{times\: 10, wait_time\: 20us\}``
|
||||
- **ir_transmitter_id** (*Optional*, :ref:`config-id`): The id of the :doc:`/esphomeyaml/components/ir_transmitter`.
|
||||
Defaults to the first hub specified.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
- All other options from :ref:`Switch <config-switch>` and :ref:`MQTT Component <config-mqtt-component>`.
|
||||
|
||||
.. _ir_transmitter-ir_codes:
|
||||
|
||||
Defining IR Codes
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
To get the IR codes, first use an Arduino or similar device with an IR
|
||||
Receiver and upload the `Aruino-IRRemote IRRecvDump
|
||||
sketch <https://github.com/z3t0/Arduino-IRremote/blob/master/examples/IRrecvDumpV2/IRrecvDumpV2.ino>`__.
|
||||
Then press the buttons on the remote and observe the serial monitor. It
|
||||
should include all the information needed to setup these IR codes.
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
nec:
|
||||
address: 0x4242
|
||||
command: 0x8484
|
||||
lg:
|
||||
data: 0x01234567890ABC
|
||||
nbits: 28
|
||||
sony:
|
||||
data: 0xABCDEF
|
||||
nbits: 12
|
||||
panasonic:
|
||||
address: 0x4004
|
||||
command: 0x1000BCD
|
||||
raw:
|
||||
carrier_frequency: 35kHz
|
||||
data:
|
||||
- 1000
|
||||
- -1000
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **nec**: Send a NEC IR code.
|
||||
|
||||
- **address**: The address of the device.
|
||||
- **command**: The command to send.
|
||||
|
||||
- **lg**: Send an LG IR code.
|
||||
|
||||
- **data**: The data bytes to send.
|
||||
- **nbits**: The number of bits to send, defaults to 28.
|
||||
|
||||
- **sony**: Send an Sony IR code.
|
||||
|
||||
- **data**: The data bytes to send.
|
||||
- **nbits**: The number of bits to send, defaults to 12.
|
||||
|
||||
- **panasonic**: Send an Panasonic IR code.
|
||||
|
||||
- **address**: The address of the device.
|
||||
- **command**: The command to send.
|
||||
|
||||
- **raw**: Send an arbitrary signal.
|
||||
|
||||
- **carrier_frequency**: The frequency to use for the carrier. A lot
|
||||
of IR sensors only respond to a very specific frequency.
|
||||
- **data**: List containing integers describing the signal to send.
|
||||
Each value is a time in µs declaring how long the carrier should
|
||||
be switched on or off. Positive values mean ON, negative values
|
||||
mean OFF.
|
||||
|
||||
See Also
|
||||
^^^^^^^^
|
||||
|
||||
- :doc:`index`
|
||||
- :doc:`/esphomeyaml/components/ir_transmitter`
|
||||
- :doc:`API Reference </api/switch/ir-transmitter>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/switch/ir_transmitter.rst>`__
|
167
esphomeyaml/components/switch/remote_transmitter.rst
Normal file
@ -0,0 +1,167 @@
|
||||
Remote Transmitter Switch
|
||||
=========================
|
||||
|
||||
The ``remote_transmitter`` switch platform allows you to create switches
|
||||
that send a pre-defined remote control sequence
|
||||
using the :doc:`/esphomeyaml/components/remote_transmitter`. Every time
|
||||
the switch is turned on, the configured remote signal is sent.
|
||||
|
||||
Use cases include, but are not limited to, infrared remotes, 433MHz signals and so on.
|
||||
|
||||
.. figure:: images/remote_transmitter-ui.png
|
||||
:align: center
|
||||
:width: 80.0%
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
# Example configuration entry
|
||||
remote_transmitter:
|
||||
pin: 32
|
||||
|
||||
# Individual switches
|
||||
switch:
|
||||
- platform: remote_transmitter
|
||||
name: "Panasonic TV Off"
|
||||
panasonic:
|
||||
address: 0x4004
|
||||
command: 0x100BCBD
|
||||
repeat: 25
|
||||
|
||||
Configuration variables:
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
- **name** (**Required**, string): The name for the switch.
|
||||
- The remote code, see :ref:`remote_transmitter-codes`. Only one
|
||||
of them can be specified per switch.
|
||||
- **repeat** (*Optional*, int): How often the command should be sent.
|
||||
|
||||
- **times** (int): The number of times the code should be sent. Defaults to ``1``.
|
||||
- **wait_time** (:ref:`time <config-time>`): The time to wait between repeats.
|
||||
|
||||
- **remote_transmitter_id** (*Optional*, :ref:`config-id`): The id of the :doc:`/esphomeyaml/components/remote_transmitter`.
|
||||
Defaults to the first hub specified.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
- All other options from :ref:`Switch <config-switch>` and :ref:`MQTT Component <config-mqtt-component>`.
|
||||
|
||||
.. _remote_transmitter-codes:
|
||||
|
||||
Remote Codes
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Supported remote codes:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
nec:
|
||||
address: 0x4242
|
||||
command: 0x8484
|
||||
lg:
|
||||
data: 0x01234567890ABC
|
||||
nbits: 28
|
||||
sony:
|
||||
data: 0xABCDEF
|
||||
nbits: 12
|
||||
panasonic:
|
||||
address: 0x4004
|
||||
command: 0x1000BCD
|
||||
raw:
|
||||
carrier_frequency: 35kHz
|
||||
data:
|
||||
- 1000
|
||||
- -1000
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **nec**: Send a NEC IR code.
|
||||
|
||||
- **address**: The address of the device.
|
||||
- **command**: The command to send.
|
||||
|
||||
- **lg**: Send an LG IR code.
|
||||
|
||||
- **data**: The data bytes to send.
|
||||
- **nbits**: The number of bits to send, defaults to 28.
|
||||
|
||||
- **sony**: Send an Sony IR code.
|
||||
|
||||
- **data**: The data bytes to send.
|
||||
- **nbits**: The number of bits to send, defaults to 12.
|
||||
|
||||
- **panasonic**: Send an Panasonic IR code.
|
||||
|
||||
- **address**: The address of the device.
|
||||
- **command**: The command to send.
|
||||
|
||||
- **raw**: Send an arbitrary signal.
|
||||
|
||||
- **carrier_frequency**: The frequency to use for the carrier. A lot
|
||||
of IR sensors only respond to a very specific frequency.
|
||||
- **data**: List containing integers describing the signal to send.
|
||||
Each value is a time in µs declaring how long the carrier should
|
||||
be switched on or off. Positive values mean ON, negative values
|
||||
mean OFF.
|
||||
|
||||
.. _finding_remote_codes:
|
||||
|
||||
Finding Remote Codes
|
||||
--------------------
|
||||
|
||||
Each remote transmitter uses a different protocol to send its information. So to replicate an infrared or 433MHz
|
||||
remote you will first need to "learn" these codes. You will first need to hook up a receiver and sniff the codes
|
||||
using the :doc:`remote receiver component </esphomeyaml/components/remote_receiver>` like this:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
remote_receiver:
|
||||
pin: GPIO34
|
||||
# dump all signals we find
|
||||
dump: all
|
||||
|
||||
And then activate the remote control you want to have in esphomelib. you will see a log output like this:
|
||||
|
||||
.. figure:: images/rf_receiver-log_raw.png
|
||||
:align: center
|
||||
|
||||
Example log output for a 433MHz proprietary remote control.
|
||||
|
||||
If esphomelib has a decoder set up for the code, it will spit out the decoded code in the logs. In this case,
|
||||
it's however a propietary protocol which would be difficult to reverse engineer. Fortunately, we can just
|
||||
do a "replay attack" by repeating the signal we just saw for our own purposes. The output you see in above image
|
||||
is encoded in microseconds: A negative value represents the output being LOW for x microseconds and a positive
|
||||
value denotes the output being HIGH for the specified number of microseconds.
|
||||
|
||||
Now you only need to set up the remote transmitter (which well *send* the code) like this:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
remote_transmitter:
|
||||
pin: GPIO23
|
||||
# Set to 100% when working with RF signals, and 50% if working with IR leds
|
||||
carrier_duty_percent: 100%
|
||||
|
||||
And lastly, we need to set up the switch that, when turned on, will send our pre-defined remote code:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
switch:
|
||||
- platform: remote_transmitter
|
||||
name: "My awesome RF switch"
|
||||
raw: [4088, -1542, 1019, -510, 513, -1019, 510, -509, 511, -510, 1020,
|
||||
-1020, 1022, -1019, 510, -509, 511, -510, 511, -509, 511, -510,
|
||||
1020, -1019, 510, -511, 1020, -510, 512, -508, 510, -1020, 1022,
|
||||
-1021, 1019, -1019, 511, -510, 510, -510, 1022, -1020, 1019,
|
||||
-1020, 511, -511, 1018, -1022, 1020, -1019, 1021, -1019, 1020,
|
||||
-511, 510, -1019, 1023, -1019, 1019, -510, 512, -508, 510, -511,
|
||||
512, -1019, 510, -509]
|
||||
|
||||
Note that you don't need to include the leading ``32519`` here, as it denotes a final space at the end of
|
||||
a transmission.
|
||||
|
||||
See Also
|
||||
--------
|
||||
|
||||
- :doc:`index`
|
||||
- :doc:`/esphomeyaml/components/remote_transmitter`
|
||||
- :doc:`/esphomeyaml/components/remote_receiver`
|
||||
- :doc:`API Reference </api/switch/remote_transmitter>`
|
||||
- `Edit this page on GitHub <https://github.com/OttoWinter/esphomedocs/blob/current/esphomeyaml/components/switch/remote_transmitter.rst>`__
|
@ -53,6 +53,9 @@ Configuration variables:
|
||||
- **domain** (*Optional*, string): Set the domain of the node hostname used for uploading.
|
||||
For example, if it's set to ``.local``, all uploads will be sent to ``<HOSTNAME>.local``.
|
||||
Defaults to ``.local``.
|
||||
- **reboot_timeout** (*Optional*, :ref:`time <config-time>`): The amount of time to wait before rebooting when no
|
||||
WiFi connection exists. Can be disabled by setting this to ``0s``, but note that the low level IP stack currently
|
||||
seems to have issues with WiFi where a full reboot is required to get the interface back working. Defaults to ``60s``.
|
||||
- **id** (*Optional*, :ref:`config-id`): Manually specify the ID used for code generation.
|
||||
|
||||
Access Point Mode
|
||||
|
@ -319,6 +319,20 @@ This action executes an arbitrary piece of C++ code (see :ref:`Lambda <config-la
|
||||
id(some_binary_sensor).publish_state(false);
|
||||
|
||||
|
||||
Automation Conditions
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Additionally, you can have a condition ``if:`` block in the automation. This will cause esphomelib
|
||||
to only execute the ``then`` block if the ``if:`` block succeeds:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
on_...:
|
||||
if:
|
||||
lambda: 'return id(some_binary_sensor).value;'
|
||||
then:
|
||||
# do something
|
||||
|
||||
See Also
|
||||
~~~~~~~~
|
||||
|
||||
|
@ -4,16 +4,191 @@ Changelog
|
||||
Version 1.7.0
|
||||
-------------
|
||||
|
||||
================================================== ================================================== ==================================================
|
||||
|ESP32 BLE Beacon|_ |Status LED|_ |WiFi Signal Strength|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`ESP32 BLE Beacon`_ `Status LED`_ `WiFi Signal Strength`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Duty Cycle Sensor|_ |Pulse Counter for ESP8266|_ |Remote Transmitter|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Duty Cycle Sensor`_ `Pulse Counter for ESP8266`_ `Remote Transmitter`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Remote Receiver|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Remote Receiver`_
|
||||
================================================== ================================================== ==================================================
|
||||
|
||||
.. |ESP32 BLE Beacon| image:: /esphomeyaml/images/bluetooth.svg
|
||||
:class: component-image
|
||||
.. _ESP32 BLE Beacon: /esphomeyaml/components/esp32_ble_beacon.html
|
||||
.. |Status LED| image:: /esphomeyaml/images/led-on.svg
|
||||
:class: component-image
|
||||
.. _Status LED: /esphomeyaml/components/status_led.html
|
||||
.. |WiFi Signal Strength| image:: /esphomeyaml/images/network-wifi.svg
|
||||
:class: component-image
|
||||
.. _WiFi Signal Strength: /esphomeyaml/components/sensor/wifi_signal.html
|
||||
.. |Duty Cycle Sensor| image:: /esphomeyaml/images/percent.svg
|
||||
:class: component-image
|
||||
.. _Duty Cycle Sensor: /esphomeyaml/components/sensor/duty_cycle.html
|
||||
.. |Pulse Counter for ESP8266| image:: /esphomeyaml/images/pulse.svg
|
||||
:class: component-image
|
||||
.. _Pulse Counter for ESP8266: /esphomeyaml/components/sensor/pulse_counter.html
|
||||
.. |Remote Transmitter| image:: /esphomeyaml/images/remote.svg
|
||||
:class: component-image
|
||||
.. _Remote Transmitter: /esphomeyaml/components/switch/remote_transmitter.html
|
||||
.. |Remote Receiver| image:: /esphomeyaml/images/remote.svg
|
||||
:class: component-image
|
||||
.. _Remote Receiver: /esphomeyaml/components/binary_sensor/remote_receiver.html
|
||||
|
||||
New Components
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
- New :doc:`WiFi signal strength sensor </esphomeyaml/components/sensor/wifi_signal>` by
|
||||
`@brandond <https://github.com/brandond>`__. So now you can monitor how strong the WiFi signal is for your node 📶
|
||||
|
||||
- You can now create a BLE iBeacon with your ESP32s using the new
|
||||
:doc:`BLE Beacon component </esphomeyaml/components/esp32_ble_beacon>`.
|
||||
|
||||
- esphomelib has finally gained support for a :doc:`status LED </esphomeyaml/components/status_led>`. Now
|
||||
you can quickly identify if everything is OK with your ESP with a quick look at this LED. Happy |blinking|!
|
||||
|
||||
.. |blinking| raw:: html
|
||||
|
||||
<span class="blink-tag">blinking</span>
|
||||
|
||||
- The :doc:`pulse counter sensor </esphomeyaml/components/sensor/pulse_counter>` has been backported to the
|
||||
ESP8266, so now you can observe the number of pulses and frequency on any pin 🔢
|
||||
|
||||
- A new :doc:`duty cycle sensor </esphomeyaml/components/sensor/duty_cycle>` has been added, allowing you to
|
||||
measure how much of the time a specific pin is HIGH or LOW. Can for example be used to detect if a status LED
|
||||
on an external device is blinking or permanently on.
|
||||
|
||||
- The new :doc:`remote receiver </esphomeyaml/components/remote_transmitter>` and
|
||||
:doc:`remote transmitter </esphomeyaml/components/remote_receiver>` components now allows you to use any 433MHz
|
||||
receivers and senders with esphomelib. Currently, you will need to use the ``raw`` data as described in
|
||||
:ref:`this guide <finding_remote_codes>`, but in the future more protocols will be supported out of the box.
|
||||
|
||||
New Features
|
||||
~~~~~~~~~~~~
|
||||
|
||||
- The HassIO add-on now has a new ``password`` option with which you can secure your installation. See
|
||||
:doc:`/esphomeyaml/guides/getting_started_hassio`. 🔒
|
||||
|
||||
- Binary Sensors now have filters too. They can now be used to debounce any binary sensor and do some more
|
||||
complicated actions using lambdas. See :ref:`binary_sensor-filters`. ⛹️
|
||||
|
||||
- All components can now be flagged ``internal``. Doing so will prevent them from being represented in the front-end
|
||||
(like MQTT). Useful for :ref:`on-device automations <automation>`. See 😎
|
||||
|
||||
- The :doc:`/esphomeyaml/components/deep_sleep` now has a ``wakeup_pin_mode`` option for the ESP32. This option
|
||||
can be used to tell esphomelib what to do if the wakeup pin is already in the wakeup level when attempting
|
||||
to enter deep sleep.
|
||||
to enter deep sleep. 🛌
|
||||
|
||||
- There are two new triggers available now: :ref:`esphomeyaml.on_boot <esphomeyaml-on_boot>` and
|
||||
:ref:`esphomeyaml.on_shutdown <esphomeyaml-on_shutdown>` with which you can do some advanced cleanup/setup
|
||||
on boot and shutdown of the node.
|
||||
|
||||
- All HassIO add-on builds have now been more or less completely automated using a private Gitlab server. You
|
||||
can find all the new docker files `here <https://github.com/OttoWinter/esphomeyaml/tree/master/docker>`__.
|
||||
|
||||
- Added a new ``build_path`` option in the ``esphomeyaml`` section with which you can customize where
|
||||
esphomeyaml stores the platformio project files. See :doc:`/esphomeyaml/components/esphomeyaml`.
|
||||
|
||||
Breaking Changes
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
- Fixed the :doc:`SHT3x-D </esphomeyaml/component/sensor/sht3xd>` component and removed the ``accuracy``
|
||||
- Fixed the :doc:`SHT3x-D </esphomeyaml/components/sensor/sht3xd>` component and removed the ``accuracy``
|
||||
parameter. The accuracy now defaults to ``HIGH``.
|
||||
- The ``inverted`` option of binary sensors has been moved into the ``filters:`` section. So instead of
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
binary_sensor:
|
||||
- platform: ...
|
||||
# ...
|
||||
inverted: True
|
||||
|
||||
you would now write:
|
||||
|
||||
.. code:: yaml
|
||||
|
||||
binary_sensor:
|
||||
- platform: ...
|
||||
# ...
|
||||
filters:
|
||||
- invert:
|
||||
|
||||
- The ``esp32_ble`` component and platform have been renamed to :doc:`esp32_ble_tracker
|
||||
</esphomeyaml/components/esp32_ble_tracker>` in order to make the naming clearer with the new :doc:`esp32_ble_beacon
|
||||
</esphomeyaml/components/esp32_ble_beacon>` component.
|
||||
|
||||
- The ``receive_timeout`` option has been removed from the :doc:`i2c component </esphomeyaml/components/i2c>` as it
|
||||
turns out it didn't actually do anything.
|
||||
|
||||
- The ``ir_transmitter`` component has been renamed to :doc:`remote_transmitter </esphomeyaml/components/remote_transmitter>`
|
||||
as it now works with all kinds of protocols, not just infrared-based ones.
|
||||
|
||||
- The ``pull_mode`` option of the :doc:`Pulse Counter </esphomeyaml/components/sensor/pulse_counter>` has been removed, please
|
||||
use the :ref:`Pin Schema <config-pin_schema>` now instead. Additionally, the ``internal_filter`` option now only accepts
|
||||
:ref:`time <config-time>` units.
|
||||
|
||||
Other Contributions
|
||||
~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
(Not in any order and probably missed some, still figuring this changelog stuff out...)
|
||||
|
||||
- Make sure logs after upload works when using explicit OTA. (`esphomeyaml/#42`_) by `@aequitas`_
|
||||
- Fix deprecation of board_flash_mode parameter (`esphomeyaml/#41`_) by `@aequitas`_
|
||||
- Support specifying hostname/ip as --upload-port (`esphomeyaml/#36`_) by `@aequitas`_
|
||||
|
||||
- DHT11 sensor doesn't work with esphomelib (`esphomelib/#88`_) by `@ayavilevich`_
|
||||
- tsl2561: wrong i2c function for channel 1 (`esphomelib/#81`_) by `@schumar`_
|
||||
- No need to wait after Wire.requestFrom(). (`esphomelib/#80`_) by `@Koepel`_
|
||||
- I2CComponent::write_byte_16 writes 0 words (`esphomelib/#78`_) by `@schumar`_
|
||||
- Minor update to the feature section (`esphomelib/#71`_) by `@fabaff`_
|
||||
- Fix pin number (`esphomelib/#70`_) by `@fabaff`_
|
||||
- Fix #55 - Action._next not initialized to nullptr (`esphomelib/#57`_) by `@brandond`_
|
||||
|
||||
- Add workaround for out of space esp8266 ota update. (`esphomedocs/#12`_) by `@aequitas`_
|
||||
- Add cookbook for dual relay cover (`esphomedocs/#10`_) by `@r-jordan`_
|
||||
- Correct output pin declaration in S20 device guide example. (`esphomedocs/#9`_) by `@r-jordan`_
|
||||
- Remove BMP280 (doesn't work) (`esphomedocs/#8`_) by `@fabaff`_
|
||||
- Passing inverted to output should be valid, but does not work, use … (`esphomedocs/#7`_) by `@aequitas`_
|
||||
- Make the example configuration entry copy&paste-friendly (`esphomedocs/#6`_) by `@fabaff`_
|
||||
- Minor formatting tweaks. (`esphomedocs/#4`_) by `@Landradsh`_
|
||||
- Details about Sonoff basic (`esphomedocs/#3`_) by `@fabaff`_
|
||||
- Add missing module (`esphomedocs/#2`_) by `@fabaff`_
|
||||
- Fix unit name (`esphomedocs/#1`_) by `@fabaff`_
|
||||
|
||||
|
||||
.. _esphomeyaml/#36: https://github.com/OttoWinter/esphomeyaml/pull/36
|
||||
.. _esphomeyaml/#42: https://github.com/OttoWinter/esphomeyaml/pull/42
|
||||
.. _esphomeyaml/#41: https://github.com/OttoWinter/esphomeyaml/pull/41
|
||||
|
||||
.. _esphomelib/#88: https://github.com/OttoWinter/esphomeyaml/pull/88
|
||||
.. _esphomelib/#81: https://github.com/OttoWinter/esphomeyaml/pull/81
|
||||
.. _esphomelib/#80: https://github.com/OttoWinter/esphomeyaml/pull/80
|
||||
.. _esphomelib/#78: https://github.com/OttoWinter/esphomeyaml/pull/78
|
||||
.. _esphomelib/#71: https://github.com/OttoWinter/esphomeyaml/pull/71
|
||||
.. _esphomelib/#70: https://github.com/OttoWinter/esphomeyaml/pull/70
|
||||
.. _esphomelib/#57: https://github.com/OttoWinter/esphomeyaml/pull/57
|
||||
|
||||
.. _esphomedocs/#12: https://github.com/OttoWinter/esphomeyaml/pull/12
|
||||
.. _esphomedocs/#10: https://github.com/OttoWinter/esphomeyaml/pull/10
|
||||
.. _esphomedocs/#9: https://github.com/OttoWinter/esphomeyaml/pull/9
|
||||
.. _esphomedocs/#8: https://github.com/OttoWinter/esphomeyaml/pull/8
|
||||
.. _esphomedocs/#7: https://github.com/OttoWinter/esphomeyaml/pull/7
|
||||
.. _esphomedocs/#6: https://github.com/OttoWinter/esphomeyaml/pull/6
|
||||
.. _esphomedocs/#4: https://github.com/OttoWinter/esphomeyaml/pull/4
|
||||
.. _esphomedocs/#3: https://github.com/OttoWinter/esphomeyaml/pull/3
|
||||
.. _esphomedocs/#2: https://github.com/OttoWinter/esphomeyaml/pull/2
|
||||
.. _esphomedocs/#1: https://github.com/OttoWinter/esphomeyaml/pull/1
|
||||
|
||||
.. _@aequitas: https://github.com/aequitas
|
||||
.. _@ayavilevich: https://github.com/ayavilevich
|
||||
.. _@schumar: https://github.com/schumar
|
||||
.. _@Koepel: https://github.com/Koepel
|
||||
.. _@fabaff: https://github.com/fabaff
|
||||
.. _@brandond: https://github.com/brandond
|
||||
.. _@r-jordan: https://github.com/r-jordan
|
||||
.. _@Landradsh: https://github.com/Landradsh
|
||||
|
@ -85,6 +85,14 @@ upload button.
|
||||
Currently the build toolchain for the ESP32 does not work on RPis. If you need to compile
|
||||
software for ESP32 (**not** ESP8266) boards, please install esphomeyaml on your computer.
|
||||
|
||||
HassIO add-on options
|
||||
~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Since version 1.7.0, you can optionally specify a password to use for all traffic to esphomeyaml
|
||||
using the ``password`` option in the HassIO add-on page. By default, this is an empty string
|
||||
(which means no password), but you can enter any string in there to set your password.
|
||||
|
||||
|
||||
Adding some (basic) features
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
@ -12,3 +12,4 @@ Guides
|
||||
migrate_espurna
|
||||
migrate_sonoff_tasmota
|
||||
contributing
|
||||
changelog
|
||||
|
1
esphomeyaml/images/led-on.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" viewBox="0 0 24 24"><path d="M11,0V4H13V0H11M18.3,2.29L15.24,5.29L16.64,6.71L19.7,3.71L18.3,2.29M5.71,2.29L4.29,3.71L7.29,6.71L8.71,5.29L5.71,2.29M12,6A4,4 0 0,0 8,10V16H6V18H9V23H11V18H13V23H15V18H18V16H16V10A4,4 0 0,0 12,6M2,9V11H6V9H2M18,9V11H22V9H18Z" /></svg>
|
After Width: | Height: | Size: 520 B |
1
esphomeyaml/images/percent.svg
Normal file
@ -0,0 +1 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" viewBox="0 0 24 24"><path d="M18.5,3.5L3.5,18.5L5.5,20.5L20.5,5.5M7,4A3,3 0 0,0 4,7A3,3 0 0,0 7,10A3,3 0 0,0 10,7A3,3 0 0,0 7,4M17,14A3,3 0 0,0 14,17A3,3 0 0,0 17,20A3,3 0 0,0 20,17A3,3 0 0,0 17,14Z" /></svg>
|
After Width: | Height: | Size: 464 B |
@ -192,25 +192,25 @@ Sensor Components
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`BMP085`_ `Dallas`_ `DHT`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|DHT12|_ |ESP32 Hall Sensor|_ |HDC1080|_
|
||||
|DHT12|_ |Duty Cycle|_ |ESP32 Hall Sensor|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`DHT12`_ `ESP32 Hall Sensor`_ `HDC1080`_
|
||||
`DHT12`_ `Duty Cycle`_ `ESP32 Hall Sensor`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|HTU21D|_ |MAX6675|_ |MPU6050|_
|
||||
|HDC1080|_ |HTU21D|_ |MAX6675|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`HTU21D`_ `MAX6675`_ `MPU6050`_
|
||||
`HDC1080`_ `HTU21D`_ `MAX6675`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Pulse Counter|_ |Rotary Encoder|_ |SHT3X-D|_
|
||||
|MPU6050|_ |Pulse Counter|_ |Rotary Encoder|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Pulse Counter`_ `Rotary Encoder`_ `SHT3X-D`_
|
||||
`MPU6050`_ `Pulse Counter`_ `Rotary Encoder`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Template Sensor|_ |TSL2561|_ |Ultrasonic Sensor|_
|
||||
|SHT3X-D|_ |Template Sensor|_ |TSL2561|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Template Sensor`_ `TSL2561`_ `Ultrasonic Sensor`_
|
||||
`SHT3X-D`_ `Template Sensor`_ `TSL2561`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Custom Sensor|_
|
||||
|Ultrasonic Sensor|_ |WiFi Signal Strength|_ |Custom Sensor|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Custom Sensor`_
|
||||
`Ultrasonic Sensor`_ `WiFi Signal Strength`_ `Custom Sensor`_
|
||||
================================================== ================================================== ==================================================
|
||||
|
||||
.. |Sensor Core| image:: /esphomeyaml/images/folder-open.svg
|
||||
@ -243,6 +243,9 @@ Sensor Components
|
||||
.. |DHT12| image:: /esphomeyaml/images/dht12.jpg
|
||||
:class: component-image
|
||||
.. _DHT12: /esphomeyaml/components/sensor/dht12.html
|
||||
.. |Duty Cycle| image:: /esphomeyaml/images/percent.svg
|
||||
:class: component-image
|
||||
.. _Duty Cycle: /esphomeyaml/components/sensor/duty_cycle.html
|
||||
.. |ESP32 Hall Sensor| image:: /esphomeyaml/images/magnet.svg
|
||||
:class: component-image
|
||||
.. _ESP32 Hall Sensor: /esphomeyaml/components/sensor/esp32_hall.html
|
||||
@ -276,23 +279,34 @@ Sensor Components
|
||||
.. |Ultrasonic Sensor| image:: /esphomeyaml/images/ultrasonic.jpg
|
||||
:class: component-image
|
||||
.. _Ultrasonic Sensor: /esphomeyaml/components/sensor/ultrasonic.html
|
||||
.. |WiFi Signal Strength| image:: /esphomeyaml/images/network-wifi.svg
|
||||
:class: component-image
|
||||
.. _WiFi Signal Strength: /esphomeyaml/components/sensor/wifi_signal.html
|
||||
.. |Custom Sensor| image:: /esphomeyaml/images/language-cpp.svg
|
||||
:class: component-image
|
||||
.. _Custom Sensor: /esphomeyaml/components/sensor/custom.html
|
||||
|
||||
Looking for a sensor that outputs its values as an analog voltage? Have a look at the
|
||||
:doc:`ADC Sensor <components/sensor/adc>` together with a formula like in the :doc:`TEMT6000
|
||||
example </esphomeyaml/cookbook/temt6000>`.
|
||||
|
||||
|
||||
Binary Sensor Components
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
============================== ============================== ==============================
|
||||
|Binary Sensor Core|_ |GPIO|_ |Status|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
`Binary Sensor Core`_ `GPIO`_ `Status`_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
|ESP32 BLE Device|_ |ESP32 Touch Pad|_ |Template Binary Sensor|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
`ESP32 BLE Device`_ `ESP32 Touch Pad`_ `Template Binary Sensor`_
|
||||
============================== ============================== ==============================
|
||||
================================================== ================================================== ==================================================
|
||||
|Binary Sensor Core|_ |GPIO|_ |Status|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Binary Sensor Core`_ `GPIO`_ `Status`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|ESP32 BLE Device|_ |ESP32 Touch Pad|_ |Template Binary Sensor|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`ESP32 BLE Device`_ `ESP32 Touch Pad`_ `Template Binary Sensor`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Remote Receiver|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Remote Receiver`_
|
||||
================================================== ================================================== ==================================================
|
||||
|
||||
.. |Binary Sensor Core| image:: /esphomeyaml/images/folder-open.svg
|
||||
:class: component-image
|
||||
@ -305,13 +319,16 @@ Binary Sensor Components
|
||||
.. _Status: /esphomeyaml/components/binary_sensor/status.html
|
||||
.. |ESP32 BLE Device| image:: /esphomeyaml/images/bluetooth.svg
|
||||
:class: component-image
|
||||
.. _ESP32 BLE Device: /esphomeyaml/components/binary_sensor/esp32_ble.html
|
||||
.. _ESP32 BLE Device: /esphomeyaml/components/binary_sensor/esp32_ble_tracker.html
|
||||
.. |ESP32 Touch Pad| image:: /esphomeyaml/images/touch.svg
|
||||
:class: component-image
|
||||
.. _ESP32 Touch Pad: /esphomeyaml/components/binary_sensor/esp32_touch.html
|
||||
.. |Template Binary Sensor| image:: /esphomeyaml/images/description.svg
|
||||
:class: component-image
|
||||
.. _Template Binary Sensor: /esphomeyaml/components/binary_sensor/template.html
|
||||
.. |Remote Receiver| image:: /esphomeyaml/images/remote.svg
|
||||
:class: component-image
|
||||
.. _Remote Receiver: /esphomeyaml/components/binary_sensor/remote_receiver.html
|
||||
|
||||
|
||||
|
||||
@ -385,22 +402,25 @@ Light Components
|
||||
.. _FastLED SPI Light: /esphomeyaml/components/light/fastled_spi.html
|
||||
|
||||
|
||||
Looking for WS2811 and similar individually addressable lights? Have a look at the
|
||||
:doc:`FastLED Clockless Light <components/light/fastled_clockless>`.
|
||||
|
||||
Switch Components
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
============================== ============================== ==============================
|
||||
|Switch Core|_ |GPIO Switch|_ |IR Transmitter|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
`Switch Core`_ `GPIO Switch`_ `IR Transmitter`_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
|Restart Switch|_ |Shutdown Switch|_ |Generic Output Switch|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
`Restart Switch`_ `Shutdown Switch`_ `Generic Output Switch`_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
================================================== ================================================== ==================================================
|
||||
|Switch Core|_ |GPIO Switch|_ |Remote Transmitter|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Switch Core`_ `GPIO Switch`_ `Remote Transmitter`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Restart Switch|_ |Shutdown Switch|_ |Generic Output Switch|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Restart Switch`_ `Shutdown Switch`_ `Generic Output Switch`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|Template Switch|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Template Switch`_
|
||||
============================== ============================== ==============================
|
||||
================================================== ================================================== ==================================================
|
||||
|
||||
.. |Switch Core| image:: /esphomeyaml/images/folder-open.svg
|
||||
:class: component-image
|
||||
@ -408,9 +428,9 @@ Switch Components
|
||||
.. |GPIO Switch| image:: /esphomeyaml/images/pin.svg
|
||||
:class: component-image
|
||||
.. _GPIO Switch: /esphomeyaml/components/switch/gpio.html
|
||||
.. |IR Transmitter| image:: /esphomeyaml/images/remote.svg
|
||||
.. |Remote Transmitter| image:: /esphomeyaml/images/remote.svg
|
||||
:class: component-image
|
||||
.. _IR Transmitter: /esphomeyaml/components/switch/ir_transmitter.html
|
||||
.. _Remote Transmitter: /esphomeyaml/components/switch/remote_transmitter.html
|
||||
.. |Restart Switch| image:: /esphomeyaml/images/restart.svg
|
||||
:class: component-image
|
||||
.. _Restart Switch: /esphomeyaml/components/switch/restart.html
|
||||
@ -426,7 +446,6 @@ Switch Components
|
||||
|
||||
|
||||
|
||||
|
||||
Fan Components
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
@ -467,26 +486,33 @@ Cover Components
|
||||
Misc Components
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
============================== ============================== ==============================
|
||||
|Dallas Hub|_ |IR Transmitter Hub|_ |PCA9685 Hub|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
`Dallas Hub`_ `IR Transmitter Hub`_ `PCA9685 Hub`_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
|ADS1115 Hub|_ |Debug Component|_ |PCF8574 I/O Expander|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
`ADS1115 Hub`_ `Debug Component`_ `PCF8574 I/O Expander`_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
|ESP32 BLE Hub|_ |ESP32 Touch Hub|_
|
||||
------------------------------ ------------------------------ ------------------------------
|
||||
`ESP32 BLE Hub`_ `ESP32 Touch Hub`_
|
||||
============================== ============================== ==============================
|
||||
================================================== ================================================== ==================================================
|
||||
|Dallas Hub|_ |Remote Transmitter Hub|_ |Remote Receiver Hub|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`Dallas Hub`_ `Remote Transmitter Hub`_ `Remote Receiver Hub`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|PCA9685 Hub|_ |ADS1115 Hub|_ |Debug Component|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`PCA9685 Hub`_ `ADS1115 Hub`_ `Debug Component`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|PCF8574 I/O Expander|_ |ESP32 BLE Tracker|_ |ESP32 BLE Beacon|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`PCF8574 I/O Expander`_ `ESP32 BLE Tracker`_ `ESP32 BLE Beacon`_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
|ESP32 Touch Hub|_ |Status LED|_
|
||||
-------------------------------------------------- -------------------------------------------------- --------------------------------------------------
|
||||
`ESP32 Touch Hub`_ `Status LED`_
|
||||
================================================== ================================================== ==================================================
|
||||
|
||||
.. |Dallas Hub| image:: /esphomeyaml/images/dallas.jpg
|
||||
:class: component-image
|
||||
.. _Dallas Hub: /esphomeyaml/components/dallas.html
|
||||
.. |IR Transmitter Hub| image:: /esphomeyaml/images/remote.svg
|
||||
.. |Remote Transmitter Hub| image:: /esphomeyaml/images/remote.svg
|
||||
:class: component-image
|
||||
.. _IR Transmitter Hub: /esphomeyaml/components/ir_transmitter.html
|
||||
.. _Remote Transmitter Hub: /esphomeyaml/components/remote_transmitter.html
|
||||
.. |Remote Receiver Hub| image:: /esphomeyaml/images/remote.svg
|
||||
:class: component-image
|
||||
.. _Remote Receiver Hub: /esphomeyaml/components/remote_receiver.html
|
||||
.. |PCA9685 Hub| image:: /esphomeyaml/images/pca9685.jpg
|
||||
:class: component-image
|
||||
.. _PCA9685 Hub: /esphomeyaml/components/pca9685.html
|
||||
@ -499,12 +525,18 @@ Misc Components
|
||||
.. |PCF8574 I/O Expander| image:: /esphomeyaml/images/pcf8574.jpg
|
||||
:class: component-image
|
||||
.. _PCF8574 I/O Expander: /esphomeyaml/components/pcf8574.html
|
||||
.. |ESP32 BLE Hub| image:: /esphomeyaml/images/bluetooth.svg
|
||||
.. |ESP32 BLE Tracker| image:: /esphomeyaml/images/bluetooth.svg
|
||||
:class: component-image
|
||||
.. _ESP32 BLE Hub: /esphomeyaml/components/esp32_ble.html
|
||||
.. _ESP32 BLE Tracker: /esphomeyaml/components/esp32_ble_tracker.html
|
||||
.. |ESP32 BLE Beacon| image:: /esphomeyaml/images/bluetooth.svg
|
||||
:class: component-image
|
||||
.. _ESP32 BLE Beacon: /esphomeyaml/components/esp32_ble_beacon.html
|
||||
.. |ESP32 Touch Hub| image:: /esphomeyaml/images/touch.svg
|
||||
:class: component-image
|
||||
.. _ESP32 Touch Hub: /esphomeyaml/components/esp32_touch.html
|
||||
.. |Status LED| image:: /esphomeyaml/images/led-on.svg
|
||||
:class: component-image
|
||||
.. _Status LED: /esphomeyaml/components/status_led.html
|
||||
|
||||
|
||||
Cookbook
|
||||
|
@ -1,8 +1,11 @@
|
||||
Dallas Hub, components/dallas, ds18b20.jpg
|
||||
IR Transmitter Hub, components/ir_transmitter, remote.svg
|
||||
Dallas Hub, components/dallas, dallas.jpg
|
||||
Remote Transmitter Hub, components/remote_transmitter, remote.svg
|
||||
Remote Receiver Hub, components/remote_receiver, remote.svg
|
||||
PCA9685 Hub, components/pca9685, pca9685.jpg
|
||||
ADS1115 Hub, components/ads1115, ads1115.jpg
|
||||
Debug Component, components/debug, bug-report.svg
|
||||
PCF8574 I/O Expander, components/pcf8574, pcf8574.jpg
|
||||
ESP32 BLE Hub, components/esp32_ble, bluetooth.svg
|
||||
ESP32 BLE Tracker, components/esp32_ble_tracker, bluetooth.svg
|
||||
ESP32 BLE Beacon, components/esp32_ble_beacon, bluetooth.svg
|
||||
ESP32 Touch Hub, components/esp32_touch, touch.svg
|
||||
Status LED, components/status_led, led-on.svg
|
||||
|
|
@ -8,6 +8,7 @@ BMP085, components/sensor/bmp085, bmp180.jpg
|
||||
Dallas, components/sensor/dallas, dallas.jpg
|
||||
DHT, components/sensor/dht, dht22.jpg
|
||||
DHT12, components/sensor/dht12, dht12.jpg
|
||||
Duty Cycle, components/sensor/duty_cycle, percent.svg
|
||||
ESP32 Hall Sensor, components/sensor/esp32_hall, magnet.svg
|
||||
HDC1080, components/sensor/hdc1080, hdc1080.jpg
|
||||
HTU21D, components/sensor/htu21d, htu21d.jpg
|
||||
@ -19,4 +20,5 @@ SHT3X-D, components/sensor/sht3xd, sht3xd.jpg
|
||||
Template Sensor, components/sensor/template, description.svg
|
||||
TSL2561, components/sensor/tsl2561, tsl2561.jpg
|
||||
Ultrasonic Sensor, components/sensor/ultrasonic, ultrasonic.jpg
|
||||
Custom Sensor, components/sensor/custom, build.svg
|
||||
WiFi Signal Strength, components/sensor/wifi_signal, network-wifi.svg
|
||||
Custom Sensor, components/sensor/custom, language-cpp.svg
|
||||
|
|
@ -1,6 +1,6 @@
|
||||
Switch Core, components/switch/index, folder-open.svg
|
||||
GPIO Switch, components/switch/gpio, pin.svg
|
||||
IR Transmitter, components/switch/ir_transmitter, remote.svg
|
||||
Remote Transmitter, components/switch/remote_transmitter, remote.svg
|
||||
Restart Switch, components/switch/restart, restart.svg
|
||||
Shutdown Switch, components/switch/shutdown, power_settings.svg
|
||||
Generic Output Switch, components/switch/output, upload.svg
|
||||
|
|
7
esphomeyaml/v1.7.0.csv
Normal file
@ -0,0 +1,7 @@
|
||||
ESP32 BLE Beacon, components/esp32_ble_beacon, bluetooth.svg
|
||||
Status LED, components/status_led, led-on.svg
|
||||
WiFi Signal Strength, components/sensor/wifi_signal, network-wifi.svg
|
||||
Duty Cycle Sensor, components/sensor/duty_cycle, percent.svg
|
||||
Pulse Counter for ESP8266, components/sensor/pulse_counter, pulse.svg
|
||||
Remote Transmitter, components/switch/remote_transmitter, remote.svg
|
||||
Remote Receiver, components/remote_receiver, remote.svg
|
|