Got the ZNJLBL01LM (or lumi.curtain.acn002) integrated successfully to HA via Z2M. Open/Close/Stop works ok. Able to call “Cover: Set position” service and the blind go to the correct position. However, the position property never been updated, unless I had to press the refresh position button in the Z2M (see below). Any clue, and workaround? I can live with it if I can somehow call the position refresh function of Z2M from a HA script whenever I set a position. Is it possible?
Anyone has the same problem?
Ey, I have the same problem using a Combee II stick and the latest firmware on the blind motors
Fixed the issue by upgrading the firmware of the Combee II stick as described in the docs: Xiaomi ZNJLBL01LM control via MQTT | Zigbee2MQTT
Surprisingly I didn’t need to repair any device…
I have the exact same issue, but my controller (Sonoff USB 3.0 plus) has the latest firmware on (20230507)
Positron: 100 for me is open. The blind is currently close, so should be 0
As per the MQTT link above, if I publish a get message, the status does come back:
The automation I have set up to open it when it gets bright enough, and close it when it gets dark - I could just add a delay and an mqtt publish like above. But I shouldn’t have to surely?
I haven’t done a repair (not sure how), so could be that…
Also, regrettably, my device name has a space in, which comes through in the topic. Although it seems to work otherwise
Tried this. Updating the Conbee II firmware to the recent 2022-05-15 firmware, didn’t work for me. Any tips?
If it helps, I ended up putting in place a periodic check:
description: >-
A hardware button press does not call MQTT, so we have to check it
periodically. Have minimised check by only running if motion within that 5
mins.
mode: single
trigger:
- platform: time_pattern
minutes: /5
condition:
- condition: template
value_template: >-
{{ (as_timestamp(now()) -
as_timestamp(states.binary_sensor.hue_motion_kitchen_motion.last_changed))
<= 300 }}
action:
- service: mqtt.publish
data:
qos: "1"
topic: zigbee2mqtt/Kitchen Blind/get
payload: "{\"position\":\"\"}"
- service: mqtt.publish
data:
qos: "1"
topic: zigbee2mqtt/Kitchen Blind/get
payload: "{\"state\":\"\"}"
And i also have an automation which triggers when a SET happens, and then does a get on position/state, which keeps it in sync with a dashboard i have:
alias: Kitchen - Blinds - Update state when a SET happens
description: >-
Triggered on MQTT SET on the kitchen blind, and calls to update the
state/position after a delay. Simplifies a call to open/close the cover
(blind).
mode: single
trigger:
- platform: mqtt
topic: zigbee2mqtt/Kitchen Blind/set
action:
- delay:
hours: 0
minutes: 0
seconds: 22
milliseconds: 0
- service: mqtt.publish
data:
qos: "1"
topic: zigbee2mqtt/Kitchen Blind/get
payload: "{\"position\":\"\"}"
- service: mqtt.publish
data:
qos: "1"
topic: zigbee2mqtt/Kitchen Blind/get
payload: "{\"state\":\"\"}"
- delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
- service: mqtt.publish
data:
qos: "1"
topic: zigbee2mqtt/Kitchen Blind/get
payload: "{\"position\":\"\"}"
- service: mqtt.publish
data:
qos: "1"
topic: zigbee2mqtt/Kitchen Blind/get
payload: "{\"state\":\"\"}"
Shout if you need a hand with the MQTT stuff. I looked at the logs from the server to figure out which topic it was using etc
HTHs