esphome-docs/components/remote_receiver.rst
Otto Winter fa685d106d
Merge branch 'updates' into next
# Conflicts:
#	components/binary_sensor/homeassistant.rst
#	components/sensor/dht.rst
#	components/uart.rst
#	cookbook/h801.rst
2019-02-16 23:26:32 +01:00

66 lines
2.6 KiB
ReStructuredText

Remote Receiver Component
=========================
.. seo::
:description: Instructions for setting up remote receivers in ESPHome.
:image: remote.png
:keywords: RF, infrared
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-block:: 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.
- **jvc**: Decode and dump JVC infrared codes.
- **samsung**: Decode and dump Samsung infrared codes.
- **sony**: Decode and dump Sony infrared codes.
- **rc_switch**: Decode and dump RCSwitch RF codes.
- **rc5**: Decode and dump RC5 IR 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 deviate 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
--------
- `RCSwitch <https://github.com/sui77/rc-switch>`__ by `Suat Özgür <https://github.com/sui77>`__
- `IRRemoteESP8266 <https://github.com/markszabo/IRremoteESP8266/>`__ by `Mark Szabo-Simon <https://github.com/markszabo>`__
- :apiref:`remote/remote_receiver.h`
- :ghedit:`Edit`
.. disqus::