home-assistant.io/source/_components/switch.raspyrfm.markdown
Markus Ressel 4523aa2826 RaspyRFM platform documentation (#7779)
* added documentation

* added logo

* review fixes

* review fixes

* added ha_iot_class

* review fix

* ✏️ Spelling & Grammar tweaks

* review fixes
2019-01-01 13:41:20 +01:00

4.0 KiB

layout, title, description, date, sidebar, comments, sharing, footer, logo, ha_category, ha_release, ha_iot_class
layout title description date sidebar comments sharing footer logo ha_category ha_release ha_iot_class
page RaspyRFM Switch Instructions on how to integrate RaspyRFM switches into Home Assistant. 2018-12-08 true false true true seegelsysteme.png Switch 0.85 Assumed State

The raspyrfm component adds support for cheap RC 433 MHz outlets via one of the supported gateways.

Initially, this component was created to support the Simple Solutions ConnAir gateway which has been discontinued. There are custom alternatives that reimplemented the protocol used by the ConnAir though like this ConnAir emulator which can be used in conjunction with the RaspyRFM-II RC module for a Raspberry Pi.

Other vendors of 433 MHz RC outlets have also created gateways that use a very similar protocol and can also be used with this component like the Intertechno ITGW-433 LAN Gateway

# Example configuration.yaml entry
switch:
  platform: raspyrfm
  switches:
    - controlunit_manufacturer: Intertechno
      controlunit_model: CMR 1000
      channel_config:  # Note that keys used here vary between control units
        master: A
        slave: 1

{% configuration %} gateway_manufacturer: description: Manufacturer of the gateway. required: false default: Seegel Systeme type: string gateway_model: description: Model of the gateway. required: false default: RaspyRFM type: string host: description: Host of the gateway. required: false default: 127.0.0.1 type: string host: description: Port of the gateway. required: false default: depends on the gateway model type: integer switches: description: List of switches that can be controlled with this gateway. required: true type: list keys: name: description: Name for the device. required: false default: Unnamed Device type: string controlunit_manufacturer: description: Manufacturer of the control unit. required: true type: string controlunit_model: description: Model of the control unit. required: true type: string channel_config: description: Channel configuration of the control unit. The exact keys needed depend on the control unit manufacturer and model. required: true type: dict {% endconfiguration %}

{% linkable_title Device support %}

Have a look at the underlying library raspyrfm-client to check what gateways and control units (outlets) are supported.

{% linkable_title Channel configuration %}

Depending on the control unit the channel config can have varying formats. Have a look at the underlying library raspyrfm-client to find out about a specific model.

{% linkable_title Switch state %}

Initially, the state of a switch is unknown. When the switch is turned on or off (via frontend) the state is known and will be shown in the frontend.

Note that due to the way those cheap RC units work it is **not possible to query their current state**. Therefore the only way to preserve a consistent state within Home Assistant is to only use Home Assistant as the controller.

{% linkable_title Full example %}

switch:
  platform: raspyrfm
  gateway_manufacturer: Seegel Systeme
  gateway_model: RaspyRFM
  host: 127.0.0.1              # Optional
  port: 49880                  # Optional
  switches:
    - name: My Switch
      controlunit_manufacturer: Intertechno
      controlunit_model: CMR 1000
      channel_config:
        master: A
        slave: 1
    - name: My other Switch
      controlunit_manufacturer: Brennenstuhl
      controlunit_model: RCS 1000 N Comfort
      channel_config:
        1: 1
        2: 1
        3: 1
        4: 1
        5: 1
        CH: A