Zemismart ZM25 Zigbee howto (Tubular roller blind/shade/cover motor)


I added this model via ZHA to my HA setup. The action (open/close) part is working fine. The only thing I wish I had is a sensor indicating the battery level of the tubular motor. I wonder if this is a ZHA issue.

Has anyone managed to get the battery status via Zigbee2MQTT or ZHA?

1 Like

I bought the Zemismart ZM25TQ without a remote control.
I tried using your code to set the upper and lower limit, but it says it is invalid.
I must be doing something wrong. :pensive:

If anyone can help me, I will be very grateful



I can sadly confirm that the battery status is not visible in ZHA for me either. Otherwise, it functionally works fine.

Edit: Battery info doesn’t show in Z2M either for me, and is also discussed here.

Edit 2: Battery info doesn’t show in the native Tuya cloud integration either (when using a Tuya Zigbee gateway). It only shows in the Tuya app in the settings for each device. Very strange way of hiding the battery info.


I have 5 of these and 2 of them, although saying connected in Z2M, will simply not respond when clicking up/down. They initially did all work fine, but one day, they simply stopped responding.

I can use the remote to open them, but cannot control them over MQTT,

The one I actually removed from Z2M, factory reset and then tried to join again and it won’t join again either.

UPDATE: I clicked reconfigure on the one that was still connected and now it is working again, however the other one will not join again…

UPDATE2: There is actually another one of the blinds that has stopped responding over MQTT. When I tried reconfigure again, I get:

Failed to configure 'study blinds', attempt 1 (Error: Read 0xb0c7defffefb0871/1 genBasic(["manufacturerName","zclVersion","appVersion","modelId","powerSource",65534], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (Timeout - 15870 - 1 - 30 - 0 - 1 after 10000ms) at Object.start (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/src/utils/waitress.ts:63:23) at EZSPAdapter.sendZclFrameToEndpointInternal (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/src/adapter/ezsp/adapter/ezspAdapter.ts:492:47) at Queue.execute (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/src/utils/queue.ts:35:20) at Request.send (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/src/controller/helpers/request.ts:79:20) at Endpoint.read (/opt/zigbee2mqtt/node_modules/zigbee-herdsman/src/controller/model/endpoint.ts:466:28) at Object.configureMagicPacket [as configure] (/opt/zigbee2mqtt/node_modules/zigbee-herdsman-converters/src/lib/tuya.ts:378:9) at Configure.configure (/opt/zigbee2mqtt/lib/extension/configure.ts:122:13) at Configure.onMQTTMessage (/opt/zigbee2mqtt/lib/extension/configure.ts:55:21) at EventEmitter.wrappedCallback (/opt/zigbee2mqtt/lib/eventBus.ts:174:17))

Any suggestions?


Hi there,

I also plan to use two of such motors. Did you have any clue if it will now work with ZHA?
There are also experiences with the quality especially the battery.

Thanks Micha


You should be able to check ZHA compatibility of most stuff from here.

Also here you can find most zigbee devices and what integration they use: