Xiaomi ZNCLDJ11LM
Model | ZNCLDJ11LM |
Vendor | Xiaomi |
Description | Aqara curtain motor |
Exposes | cover (state, position), running, motor_state, linkquality |
Picture |
Notes
Pairing
Hold button for about 5 seconds until blue light turn on.
If you need to reset device first, hold button longer until red light turn on.
Configuration of device attributes
By publishing to zigbee2mqtt/FRIENDLY_NAME/set
various device attributes can be configured:
{
"options":{
"reverse_direction": xxx,
"hand_open": xxx,
"reset_limits": xxx
}
}
- reverse_direction: (
true
/false
, default:false
). Device can be configured to act in an opposite direction. - hand_open: (
true
/false
, default:true
). By default motor starts rotating when you pull the curtain by hand. You can disable this behaviour. - reset_limits: (
true
/false
, default:false
). Reset the motor. When a path was cleared from obstacles.
You can send a subset of options, all options that won’t be specified will be revered to default.
After changing reverse_direction
you will need to fully open and fully close the curtain so the motor will re-detect edges. reverse_direction
will get new state only after this recalibration.
Lost configuration on long power outage
If motor is used without battery it may lose configuration after long power outage. In that case you need to perform end stops calibration again publishing the following command sequence with topic zigbee2mqtt/FRIENDLY_NAME/set
:
{ "options": { "reset_limits": true } }
{ "state": "close" }
- Wait here for curtain closure.
{ "state": "open" }
Home Assistant automation example:
- alias: Calibrate curtain
trigger:
- platform: homeassistant
event: start
action:
- service: mqtt.publish
data:
topic: zigbee2mqtt/<FRIENDLY_NAME>/set
payload: "{ \"options\": { \"reset_limits\": true } }"
# note "" are escaped with \ else will not work if you want to send payload as json
- service: cover.close_cover
entity_id: cover.<COVER_ID>
- delay:
seconds: 13 #wait for closure complete
- service: cover.open_cover
entity_id: cover.<COVER_ID>
Motor leaves calibration mode automatically after it reaches the both open and close curtain position limits. Calibration is mandatory for proper position reporting and ability to set intermediate positions.
OTA updates
This device supports OTA updates, for more information see OTA updates.
Options
How to use device type specific configuration
invert_cover
: Inverts the cover position, false: open=100,close=0, true: open=0,close=100 (default false). The value must betrue
orfalse
Exposes
Cover
The current state of this cover is in the published state under the state
property (value is OPEN
or CLOSE
).
To control this cover publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set
with payload {"state": "OPEN"}
, {"state": "CLOSE"}
, {"state": "STOP"}
.
To read the current state of this cover publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get
with payload {"state": ""}
.
To change the position publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set
with payload {"position": VALUE}
where VALUE
is a number between 0
and 100
.
Running (binary)
Whether the motor is moving or not.
Value can be found in the published state on the running
property.
It’s not possible to read (/get
) or write (/set
) this value.
If value equals true
running is ON, if false
OFF.
Motor_state (enum)
Motor state.
Value can be found in the published state on the motor_state
property.
It’s not possible to read (/get
) or write (/set
) this value.
The possible values are: stopped
, opening
, closing
.
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
.