Add ABB-Welcome / Busch-Welcome Door Intercom Protocol (#2844)
Co-authored-by: H. Árkosi Róbert <robreg@zsurob.hu>
This commit is contained in:
parent
b9666b2e30
commit
8b13ddc3e7
|
@ -30,6 +30,7 @@ Configuration variables:
|
||||||
- **dump** (*Optional*, list): Decode and dump these remote codes in the logs (at log.level=DEBUG).
|
- **dump** (*Optional*, list): Decode and dump these remote codes in the logs (at log.level=DEBUG).
|
||||||
Set to ``all`` to dump all available codecs:
|
Set to ``all`` to dump all available codecs:
|
||||||
|
|
||||||
|
- **abbwelcome**: Decode and dump ABB-Welcome codes. Messages are sent via copper wires. See :ref:`remote_transmitter-transmit_abbwelcome`
|
||||||
- **aeha**: Decode and dump AEHA infrared codes.
|
- **aeha**: Decode and dump AEHA infrared codes.
|
||||||
- **byronsx**: Decode and dump Byron SX doorbell RF codes.
|
- **byronsx**: Decode and dump Byron SX doorbell RF codes.
|
||||||
- **canalsat**: Decode and dump CanalSat infrared codes.
|
- **canalsat**: Decode and dump CanalSat infrared codes.
|
||||||
|
@ -79,6 +80,9 @@ Configuration variables:
|
||||||
Automations:
|
Automations:
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
- **on_abbwelcome** (*Optional*, :ref:`Automation <automation>`): An automation to perform when a
|
||||||
|
ABB-Welcome code has been decoded. A variable ``x`` of type :apiclass:`remote_base::ABBWelcomeData`
|
||||||
|
is passed to the automation for use in lambdas.
|
||||||
- **on_aeha** (*Optional*, :ref:`Automation <automation>`): An automation to perform when a
|
- **on_aeha** (*Optional*, :ref:`Automation <automation>`): An automation to perform when a
|
||||||
AEHA remote code has been decoded. A variable ``x`` of type :apiclass:`remote_base::AEHAData`
|
AEHA remote code has been decoded. A variable ``x`` of type :apiclass:`remote_base::AEHAData`
|
||||||
is passed to the automation for use in lambdas.
|
is passed to the automation for use in lambdas.
|
||||||
|
@ -207,6 +211,21 @@ Configuration variables:
|
||||||
|
|
||||||
Remote code selection (exactly one of these has to be included):
|
Remote code selection (exactly one of these has to be included):
|
||||||
|
|
||||||
|
- **abbwelcome**: Trigger on a decoded ABB-Welcome code with the given data.
|
||||||
|
|
||||||
|
- **source_address** (**Required**, int): The source address to trigger on, see :ref:`remote_transmitter-transmit_abbwelcome`
|
||||||
|
for more info.
|
||||||
|
- **destination_address** (**Required**, int): The destination address to trigger on, see
|
||||||
|
:ref:`remote_transmitter-transmit_abbwelcome` for more info.
|
||||||
|
- **three_byte_address** (**Optional**, boolean): The length of the source and destination address. ``false`` means two bytes
|
||||||
|
and ``true`` means three bytes. Defaults to ``false``.
|
||||||
|
- **retransmission** (**Optional**, boolean): ``true`` if the message was re-transmitted. Defaults to ``false``.
|
||||||
|
- **message_type** (**Required**, int): The message type to trigger on, see :ref:`remote_transmitter-transmit_abbwelcome`
|
||||||
|
for more info.
|
||||||
|
- **message_id** (**Optional**, int): The random message ID to trigger on, see dumper output for more info. Defaults to any ID.
|
||||||
|
- **data** (**Optional**, 0-7 bytes list): The code to listen for. Usually you only need to copy this directly from the
|
||||||
|
dumper output. Defaults to ``[]``
|
||||||
|
|
||||||
- **aeha**: Trigger on a decoded AEHA remote code with the given data.
|
- **aeha**: Trigger on a decoded AEHA remote code with the given data.
|
||||||
|
|
||||||
- **address** (**Required**, int): The address to trigger on, see dumper output for more info.
|
- **address** (**Required**, int): The address to trigger on, see dumper output for more info.
|
||||||
|
|
|
@ -78,6 +78,56 @@ Configuration variables:
|
||||||
If you're looking for the same functionality as is default in the ``rpi_rf`` integration in
|
If you're looking for the same functionality as is default in the ``rpi_rf`` integration in
|
||||||
Home Assistant, you'll want to set the **times** to 10 and the **wait_time** to 0s.
|
Home Assistant, you'll want to set the **times** to 10 and the **wait_time** to 0s.
|
||||||
|
|
||||||
|
.. _remote_transmitter-transmit_abbwelcome:
|
||||||
|
|
||||||
|
``remote_transmitter.transmit_abbwelcome`` Action
|
||||||
|
*************************************************
|
||||||
|
|
||||||
|
This :ref:`action <config-action>` sends a ABB-Welcome message to the intercom bus. The
|
||||||
|
message type, addresses, address length and data can vary a lot between ABB-Welcome
|
||||||
|
systems. Please refer to the received messages while performing actions like ringing a
|
||||||
|
doorbell or opening a door.
|
||||||
|
|
||||||
|
.. code-block:: yaml
|
||||||
|
|
||||||
|
on_...:
|
||||||
|
- remote_transmitter.transmit_abbwelcome:
|
||||||
|
source_address: 0x1001 # your indoor station address
|
||||||
|
destination_address: 0x4001 # door address
|
||||||
|
three_byte_address: false # address length of your system
|
||||||
|
message_type: 0x0d # unlock door, on some systems 0x0e is used instead
|
||||||
|
data: [0xab, 0xcd, 0xef] # message data, see receiver dump
|
||||||
|
|
||||||
|
Configuration variables:
|
||||||
|
|
||||||
|
- **source_address** (**Required**, int):The source address to send the command from,
|
||||||
|
see received messages for more info. For indoor stations the last byte of the address
|
||||||
|
represents the apartment number set by the dials on the back of the indoor station and is
|
||||||
|
transmitted in hexadecimal format.
|
||||||
|
- **destination_address** (**Required**, int): The destination address to send the command to,
|
||||||
|
see received messages for more info.
|
||||||
|
- **three_byte_address** (**Required**, int): The destination address to send the command to,
|
||||||
|
see received messages for more info.
|
||||||
|
- **three_byte_address** (**Optional**, boolean): The length of the source and destination address. ``false``
|
||||||
|
means two bytes and ``true`` means three bytes. Please check the received messages to see which address length
|
||||||
|
is used by your system. For example, ``[XXXX > XXXX]`` appears in the receiver log for two byte addresses and
|
||||||
|
``[XXXXXX > XXXXXX]`` for three byte addresses. Defaults to ``false``.
|
||||||
|
- **retransmission** (**Optional**, boolean): Should only be ``true`` if this message has been transmitted
|
||||||
|
before with the same ``message_id``. Typically, messages are transmitted up to three times with a 1 second
|
||||||
|
interval if no reply is received. Defaults to ``false``.
|
||||||
|
- **message_type** (**Required**, int): The message type, see dumper output for more info.
|
||||||
|
The highest bit indicates a reply.
|
||||||
|
- **message_id** (**Optional**, int): The message ID, see dumper output for more info.
|
||||||
|
Defaults to a randomly generated ID if this message is not a reply or retransmission.
|
||||||
|
- **data** (**Optional**, 0-7 bytes list): The code to send.
|
||||||
|
Usually you only need to copy this directly from the dumper output. Defaults to ``[]``
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
ABB-Welcome messages are sent over the two-wire bus of your intercom system.
|
||||||
|
A custom receiver and transmitter circuit is required.
|
||||||
|
`More info <https://github.com/Mat931/esp32-doorbell-bus-interface>`__
|
||||||
|
|
||||||
.. _remote_transmitter-transmit_aeha:
|
.. _remote_transmitter-transmit_aeha:
|
||||||
|
|
||||||
``remote_transmitter.transmit_aeha`` Action
|
``remote_transmitter.transmit_aeha`` Action
|
||||||
|
|
Loading…
Reference in New Issue