To contribute to this page, edit the following file

DIYRuZ DIYRuZ_FreePad #

Model DIYRuZ_FreePad
Vendor DIYRuZ
Description DiY 8/12/20 button keypad
Exposes battery, action, switch_type, switch_actions, linkquality
Picture DIYRuZ DIYRuZ_FreePad

Notes #

Firmware #

Open source firmware can be found here: Github

How to join: #

If device in FN(factory new) state: #

  1. Press and hold button (1) for 2-3 seconds, until device start flashing led
  2. Wait, in case of successful join, device will flash led 5 times
  3. If join failed, device will flash led 3 times

If device in a network: #

  1. Hold button (1) for 10 seconds, this will reset device to FN(factory new) status
  2. Go to step 1 for FN device
  1. Bring you remote near to TL device
  2. Hold button (2) for 5 seconds TL functionality can work without connecting to network

Exposes #

Battery (numeric) #

Remaining battery in %. Value can be found in the published state on the battery property. It’s not possible to read (/get) or write (/set) this value. The minimal value is 0 and the maximum value is 100. The unit of this value is %.

Action (enum) #

Triggered action (e.g. a button click). Value can be found in the published state on the action property. It’s not possible to read (/get) or write (/set) this value. The possible values are: *_single, *_double, *_triple, *_quadruple, *_release.

Switch_type (enum, button_1 endpoint) #

Value can be found in the published state on the switch_type_button_1 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_1": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_1": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_1 endpoint) #

Value can be found in the published state on the switch_actions_button_1 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_1": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_1": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_2 endpoint) #

Value can be found in the published state on the switch_type_button_2 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_2": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_2": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_2 endpoint) #

Value can be found in the published state on the switch_actions_button_2 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_2": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_2": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_3 endpoint) #

Value can be found in the published state on the switch_type_button_3 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_3": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_3": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_3 endpoint) #

Value can be found in the published state on the switch_actions_button_3 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_3": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_3": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_4 endpoint) #

Value can be found in the published state on the switch_type_button_4 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_4": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_4": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_4 endpoint) #

Value can be found in the published state on the switch_actions_button_4 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_4": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_4": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_5 endpoint) #

Value can be found in the published state on the switch_type_button_5 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_5": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_5": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_5 endpoint) #

Value can be found in the published state on the switch_actions_button_5 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_5": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_5": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_6 endpoint) #

Value can be found in the published state on the switch_type_button_6 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_6": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_6": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_6 endpoint) #

Value can be found in the published state on the switch_actions_button_6 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_6": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_6": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_7 endpoint) #

Value can be found in the published state on the switch_type_button_7 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_7": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_7": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_7 endpoint) #

Value can be found in the published state on the switch_actions_button_7 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_7": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_7": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_8 endpoint) #

Value can be found in the published state on the switch_type_button_8 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_8": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_8": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_8 endpoint) #

Value can be found in the published state on the switch_actions_button_8 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_8": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_8": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_9 endpoint) #

Value can be found in the published state on the switch_type_button_9 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_9": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_9": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_9 endpoint) #

Value can be found in the published state on the switch_actions_button_9 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_9": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_9": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_10 endpoint) #

Value can be found in the published state on the switch_type_button_10 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_10": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_10": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_10 endpoint) #

Value can be found in the published state on the switch_actions_button_10 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_10": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_10": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_11 endpoint) #

Value can be found in the published state on the switch_type_button_11 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_11": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_11": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_11 endpoint) #

Value can be found in the published state on the switch_actions_button_11 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_11": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_11": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_12 endpoint) #

Value can be found in the published state on the switch_type_button_12 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_12": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_12": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_12 endpoint) #

Value can be found in the published state on the switch_actions_button_12 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_12": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_12": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_13 endpoint) #

Value can be found in the published state on the switch_type_button_13 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_13": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_13": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_13 endpoint) #

Value can be found in the published state on the switch_actions_button_13 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_13": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_13": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_14 endpoint) #

Value can be found in the published state on the switch_type_button_14 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_14": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_14": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_14 endpoint) #

Value can be found in the published state on the switch_actions_button_14 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_14": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_14": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_15 endpoint) #

Value can be found in the published state on the switch_type_button_15 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_15": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_15": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_15 endpoint) #

Value can be found in the published state on the switch_actions_button_15 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_15": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_15": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_16 endpoint) #

Value can be found in the published state on the switch_type_button_16 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_16": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_16": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_16 endpoint) #

Value can be found in the published state on the switch_actions_button_16 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_16": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_16": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_17 endpoint) #

Value can be found in the published state on the switch_type_button_17 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_17": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_17": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_17 endpoint) #

Value can be found in the published state on the switch_actions_button_17 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_17": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_17": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_18 endpoint) #

Value can be found in the published state on the switch_type_button_18 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_18": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_18": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_18 endpoint) #

Value can be found in the published state on the switch_actions_button_18 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_18": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_18": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_19 endpoint) #

Value can be found in the published state on the switch_type_button_19 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_19": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_19": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_19 endpoint) #

Value can be found in the published state on the switch_actions_button_19 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_19": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_19": NEW_VALUE}. The possible values are: on, off, toggle.

Switch_type (enum, button_20 endpoint) #

Value can be found in the published state on the switch_type_button_20 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_type_button_20": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_type_button_20": NEW_VALUE}. The possible values are: toggle, momentary, multifunction.

Switch_actions (enum, button_20 endpoint) #

Value can be found in the published state on the switch_actions_button_20 property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"switch_actions_button_20": ""}. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_actions_button_20": NEW_VALUE}. The possible values are: on, off, toggle.

Linkquality (numeric) #

Link quality (signal strength). Value can be found in the published state on the linkquality property. It’s not possible to read (/get) or write (/set) this value. The minimal value is 0 and the maximum value is 255. The unit of this value is lqi.

Manual Home Assistant configuration #

Although Home Assistant integration through MQTT discovery is preferred, manual integration is possible with the following configuration:

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.battery }}"
    unit_of_measurement: "%"
    device_class: "battery"
    state_class: "measurement"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.action }}"
    enabled_by_default: true
    icon: "mdi:gesture-double-tap"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_1 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_1 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_1/set"
    command_topic_postfix: "switch_type_button_1"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_1 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_1 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_1/set"
    command_topic_postfix: "switch_actions_button_1"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_2 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_2 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_2/set"
    command_topic_postfix: "switch_type_button_2"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_2 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_2 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_2/set"
    command_topic_postfix: "switch_actions_button_2"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_3 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_3 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_3/set"
    command_topic_postfix: "switch_type_button_3"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_3 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_3 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_3/set"
    command_topic_postfix: "switch_actions_button_3"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_4 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_4 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_4/set"
    command_topic_postfix: "switch_type_button_4"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_4 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_4 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_4/set"
    command_topic_postfix: "switch_actions_button_4"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_5 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_5 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_5/set"
    command_topic_postfix: "switch_type_button_5"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_5 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_5 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_5/set"
    command_topic_postfix: "switch_actions_button_5"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_6 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_6 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_6/set"
    command_topic_postfix: "switch_type_button_6"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_6 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_6 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_6/set"
    command_topic_postfix: "switch_actions_button_6"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_7 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_7 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_7/set"
    command_topic_postfix: "switch_type_button_7"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_7 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_7 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_7/set"
    command_topic_postfix: "switch_actions_button_7"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_8 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_8 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_8/set"
    command_topic_postfix: "switch_type_button_8"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_8 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_8 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_8/set"
    command_topic_postfix: "switch_actions_button_8"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_9 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_9 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_9/set"
    command_topic_postfix: "switch_type_button_9"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_9 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_9 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_9/set"
    command_topic_postfix: "switch_actions_button_9"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_10 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_10 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_10/set"
    command_topic_postfix: "switch_type_button_10"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_10 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_10 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_10/set"
    command_topic_postfix: "switch_actions_button_10"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_11 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_11 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_11/set"
    command_topic_postfix: "switch_type_button_11"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_11 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_11 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_11/set"
    command_topic_postfix: "switch_actions_button_11"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_12 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_12 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_12/set"
    command_topic_postfix: "switch_type_button_12"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_12 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_12 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_12/set"
    command_topic_postfix: "switch_actions_button_12"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_13 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_13 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_13/set"
    command_topic_postfix: "switch_type_button_13"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_13 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_13 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_13/set"
    command_topic_postfix: "switch_actions_button_13"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_14 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_14 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_14/set"
    command_topic_postfix: "switch_type_button_14"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_14 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_14 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_14/set"
    command_topic_postfix: "switch_actions_button_14"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_15 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_15 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_15/set"
    command_topic_postfix: "switch_type_button_15"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_15 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_15 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_15/set"
    command_topic_postfix: "switch_actions_button_15"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_16 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_16 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_16/set"
    command_topic_postfix: "switch_type_button_16"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_16 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_16 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_16/set"
    command_topic_postfix: "switch_actions_button_16"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_17 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_17 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_17/set"
    command_topic_postfix: "switch_type_button_17"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_17 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_17 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_17/set"
    command_topic_postfix: "switch_actions_button_17"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_18 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_18 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_18/set"
    command_topic_postfix: "switch_type_button_18"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_18 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_18 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_18/set"
    command_topic_postfix: "switch_actions_button_18"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_19 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_19 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_19/set"
    command_topic_postfix: "switch_type_button_19"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_19 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_19 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_19/set"
    command_topic_postfix: "switch_actions_button_19"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_20 }}"
    enabled_by_default: false
    icon: "mdi:tune"

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_type_button_20 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_20/set"
    command_topic_postfix: "switch_type_button_20"
    options: 
      - "toggle"
      - "momentary"
      - "multifunction"
    enabled_by_default: false
    icon: "mdi:tune"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_20 }}"
    enabled_by_default: false

select:
  - platform: "mqtt"
    state_topic: true
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.switch_actions_button_20 }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/button_20/set"
    command_topic_postfix: "switch_actions_button_20"
    options: 
      - "on"
      - "off"
      - "toggle"

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.linkquality }}"
    unit_of_measurement: "lqi"
    enabled_by_default: false
    icon: "mdi:signal"
    state_class: "measurement"