To contribute to this page, edit the following file

Xiaomi ZNCJMB14LM #

Model ZNCJMB14LM
Vendor Xiaomi
Description Aqara S1 smart touch panel
Exposes switch (state), standby_enabled, theme, beep_volume, lcd_brightness, language, screen_saver_style, standby_time, font_size, lcd_auto_brightness_enabled, homepage, screen_saver_enabled, standby_lcd_brightness, available_switches, switch_1_text_icon, switch_2_text_icon, switch_3_text_icon, linkquality
Picture Xiaomi ZNCJMB14LM

Notes #

Pairing #

On initial boot, the device will display a message “Waiting for accessing the network” permit join and the device will be added.

If the device is already part of a network, swipe down from the top of the screen to access the Settings panel (password may be required), navigate to “Advanced”, navigate to “Access New Gateway” and confirm with “Ok”. Once confirmed, proceed as per initial boot.

Exposes #

Switch (left endpoint) #

The current state of this switch is in the published state under the state_left property (value is ON or OFF). To control this switch publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"state_left": "ON"}, {"state_left": "OFF"} or {"state_left": "TOGGLE"}. To read the current state of this switch publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"state_left": ""}.

Switch (center endpoint) #

The current state of this switch is in the published state under the state_center property (value is ON or OFF). To control this switch publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"state_center": "ON"}, {"state_center": "OFF"} or {"state_center": "TOGGLE"}. To read the current state of this switch publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"state_center": ""}.

Switch (right endpoint) #

The current state of this switch is in the published state under the state_right property (value is ON or OFF). To control this switch publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"state_right": "ON"}, {"state_right": "OFF"} or {"state_right": "TOGGLE"}. To read the current state of this switch publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"state_right": ""}.

Standby_enabled (binary) #

Enable standby. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"standby_enabled": NEW_VALUE}. If value equals true standby_enabled is ON, if false OFF.

Theme (enum) #

Display theme. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"theme": NEW_VALUE}. The possible values are: classic, concise.

Beep_volume (enum) #

Beep volume. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"beep_volume": NEW_VALUE}. The possible values are: mute, low, medium, high.

Lcd_brightness (numeric) #

LCD brightness (will not persist if auto-brightness is enabled). Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"lcd_brightness": NEW_VALUE}. The minimal value is 1 and the maximum value is 100. The unit of this value is %.

Language (enum) #

Interface language. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"language": NEW_VALUE}. The possible values are: chinese, english.

Screen_saver_style (enum) #

Screen saver style. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"screen_saver_style": NEW_VALUE}. The possible values are: classic, analog clock.

Standby_time (numeric) #

Display standby time. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"standby_time": NEW_VALUE}. The minimal value is 0 and the maximum value is 65534. The unit of this value is s.

Font_size (enum) #

Display font size. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"font_size": NEW_VALUE}. The possible values are: small, medium, large.

Lcd_auto_brightness_enabled (binary) #

Enable LCD auto brightness. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"lcd_auto_brightness_enabled": NEW_VALUE}. If value equals true lcd_auto_brightness_enabled is ON, if false OFF.

Homepage (enum) #

Default display homepage. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"homepage": NEW_VALUE}. The possible values are: scene, feel, thermostat, switch.

Screen_saver_enabled (binary) #

Enable screen saver. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"screen_saver_enabled": NEW_VALUE}. If value equals true screen_saver_enabled is ON, if false OFF.

Standby_lcd_brightness (numeric) #

Standby LCD brightness. Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"standby_lcd_brightness": NEW_VALUE}. The minimal value is 1 and the maximum value is 100. The unit of this value is %.

Available_switches (enum) #

Control which switches are available in the switches screen (none disables switches screen). Value will not be published in the state. It’s not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"available_switches": NEW_VALUE}. The possible values are: none, 1, 2, 3, 1 and 2, 1 and 3, 2 and 3, all.

Switch_1_text_icon (composite) #

Can be set by publishing to zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_1_text_icon": {"switch_1_icon": VALUE, "switch_1_text": VALUE}}

Switch_2_text_icon (composite) #

Can be set by publishing to zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_2_text_icon": {"switch_2_icon": VALUE, "switch_2_text": VALUE}}

Switch_3_text_icon (composite) #

Can be set by publishing to zigbee2mqtt/FRIENDLY_NAME/set with payload {"switch_3_text_icon": {"switch_3_icon": VALUE, "switch_3_text": VALUE}}

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:

switch:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    payload_off: "OFF"
    payload_on: "ON"
    value_template: "{{ value_json.state_left }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/left/set"

switch:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    payload_off: "OFF"
    payload_on: "ON"
    value_template: "{{ value_json.state_center }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/center/set"

switch:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    payload_off: "OFF"
    payload_on: "ON"
    value_template: "{{ value_json.state_right }}"
    command_topic: "zigbee2mqtt/<FRIENDLY_NAME>/right/set"

binary_sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.standby_enabled }}"
    payload_on: true
    payload_off: false

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

sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.standby_time }}"
    unit_of_measurement: "s"

binary_sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.lcd_auto_brightness_enabled }}"
    payload_on: true
    payload_off: false

binary_sensor:
  - platform: "mqtt"
    state_topic: "zigbee2mqtt/<FRIENDLY_NAME>"
    availability_topic: "zigbee2mqtt/bridge/state"
    value_template: "{{ value_json.screen_saver_enabled }}"
    payload_on: true
    payload_off: false

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

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