deconz-rest-plugin: Aqara Motor B1 does not report anymore

Describe the bug

Related to #3508.

When this issue was originally closed all was working well. But something has changed during the last few versions. If deCONZ is started sending commands do not get a response on the device anymore. When the Analog Output cluster is read once after starting deCONZ REST API commands start to get response from the Aqara motor. Mainly "lift"=nn commands are sent. But the REST API does not return any updates of the commands back:

After sending a "lift"=0:

100 lift

After sending a "lift"=100:

0 lift

Note that only “lastseen” is changed here. So it looks like reporting is not active anymore.

Steps to reproduce the behavior

Expected behavior

Reporting back in REST API

Screenshots

basic

Environment

  • Host system: PC
  • Running method: Windows
  • Firmware version: 26650700
  • deCONZ version: 2.09.01
  • Device: ConBee II
  • Do you use an USB extension cable: no – only relevant for ConBee I/II
  • Is there any other USB or serial devices connected to the host system? none

deCONZ Logs

Additional context

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 67 (4 by maintainers)

Most upvoted comments

Hi, thanks we can schedule a live session after Xmas, 27.12 or later would work for me

I think I might have found the issue. Symptoms:

  • The B1 can no longer be controlled from the API, but can still be controlled from the GUI. The API actually returns a gateway busy error, but I suppose not all clients check nor report that;
  • The B1 has another parent router than the coordinator.

I’ll include a fix for this issue in my PR.

The issue is that writeAttribute() refuses to write to sleepy devices (Receiver on When Idle is false) unless it’s seen a message from the device within the last 3 seconds. This is under the assumption that the device is asleep, and we dont want to fill the queues with messages that cannot be delivered. When the device has the coordinator as parent, the poll requests count as incoming messages. However, the gateway doesn’t see the poll requests to another parent router. Saw a similar issue quite a while back, when trying to read the Time cluster attributes. Will provide the same workaround: whitelist the Analog Output, Multistate Output, and Lumi Specific clusters to skip the check.

Hi everyone, sorry I missed to update here. Unfortunately the motor controller shipped was not the Aqara B1 but the “X Gear”. Looking forward, the issue gets added to the v2.14.x milestone. If possible it would be great if somebody could send us the device for testing, or join for live session in Discord to create a DDF, after the v2.13 stable release.

Hi, big thanks for your contribution folks, I’ll happy to help with life session, just ping me in this issue.

Because the bot keeps everyone active. You just got the notified of the issue and so am i , so now i can (again) message Manuel about it.

I’m happy to put a label on it that doesn’t auto close (and not notify anyone), but than it probably gets forgotten more easily.

I’ve (once again) messaged Manuel.