Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Request Device Support] Aqara Curtain motor B1 #1654

Closed
cacherocks opened this issue Jul 4, 2019 · 84 comments
Closed

[Request Device Support] Aqara Curtain motor B1 #1654

cacherocks opened this issue Jul 4, 2019 · 84 comments

Comments

@cacherocks
Copy link

cacherocks commented Jul 4, 2019

Node Info
Снимок экрана 2019-07-04 в 21 01 44

Basic cluster 0000
Снимок экрана 2019-07-04 в 21 11 55

Identify cluster 0003
Снимок экрана 2019-07-04 в 20 48 32

Windows covering cluster 0102
Снимок экрана 2019-07-04 в 20 49 20
Снимок экрана 2019-07-04 в 21 15 03
Снимок экрана 2019-07-04 в 21 15 38

Analog Output (Basic) cluster 000D
Снимок экрана 2019-07-04 в 21 16 02

Multistate Output (Basic) cluster 0013
Снимок экрана 2019-07-04 в 20 52 13

Power Configuration cluster 0001
Снимок экрана 2019-07-04 в 21 16 29

Node
Снимок экрана 2019-07-04 в 20 53 30

Description
IMG_3987

Works both with the battery and from power supply. Review.

@ebaauw
Copy link
Collaborator

ebaauw commented Jul 4, 2019

It looks like the previous (mains powered) Aqara curtain controller (lumi.curtain), except that this is an end device instead of a router. The REST API plugin exposes a curtain controller as a /lights resource. We probably need to whitelist this device, because Receiver on when idle is false.

I'm a bit worried that the Windows Covering cluster doesn't provide Current Position Lift Percentage. It probably reports the position on the Analog Output cluster. The REST API plugin already picks that up (the lumi.curtain uses both Current Position Lift Percentage and the Analog Output cluster), but for controlling the curtain, only the Windows Covering cluster is used.

Can you check that the Present Value of the Analog Output cluster reports 0 when the curtains are closed and 100 when open?

Can you also check that it responds to the Open, Close, Stop and Go to lift percentage commands from the Windows Covering cluster? Can you set Reversed in Config/Status to change the direction for Open en Close (in case you installed the band to pull the curtains the other way round)?

I'm afraid we need for the API v2 /devices resource scheme to expose the battery percentage; config.battery is available only to /sensors resources.

@cacherocks
Copy link
Author

Ok, in the next 2-3 days I will check everything and write the result on all issues.

@cacherocks
Copy link
Author

  • If the curtains do not move, then the buttons from the cluster do not control them, but receive the answer "success".
  • If the curtains are in the process of closing or opening, then the buttons from the cluster control (Open, Close and Stop). Lift value and lift percentage buttons do not work, but they get the answer "success"
  • Present Value of the Analog Output cluster changes only from 0.00 to 1.00 during the opening of the curtains and returns to 0.00 again after opening. In the process of closing the curtains 0.00 does not change.
  • I can not set the Reversed in Config/Status because Record button is inactive, below is a screenshot. My curtains open from the center to the edges.

Снимок экрана 2019-07-09 в 20 14 58

- The values of open and closed are preserved from the aqara hub after binding to deconz.

@ebaauw
Copy link
Collaborator

ebaauw commented Jul 9, 2019

  • If the curtains do not move, then the buttons from the cluster do not control them, but receive the answer "success".
  • If the curtains are in the process of closing or opening, then the buttons from the cluster control (Open, Close and Stop). Lift value and lift percentage buttons do not work, but they get the answer "success"

Odd. Does the curtain controller connect to the RaspBee/ConBee directly, or did it select another parent node?

Present Value of the Analog Output cluster changes only from 0.00 to 1.00 during the opening of the curtains and returns to 0.00 again after opening. In the process of closing the curtains 0.00 does not change.

On the old controller, it changes from 0.00 (closed) to 100.00 (open), after calibrating the controller. Just like Current Position Life Percentage. Does the controller react when you try and write Present Value? Does the Multistate Output report anything?

I can not set the Reversed in Config/Status because Record button is inactive, below is a screenshot.

My bad, it's a read-only attribute. The setting is through Mode.

The values of open and closed are preserved from the aqara hub after binding to deconz.

Do you mean the calibration of the open and close position? Yes, that's handled by the motor itself, "behind" the ZigBee module. On the old model, you need to detach the ZigBee module to access the (other) reset button for the motor and make it re-calibrate.

@cacherocks
Copy link
Author

cacherocks commented Jul 9, 2019

Odd. Does the curtain controller connect to the RaspBee/ConBee directly, or did it select another parent node?

Directly, search and add through "add new light" via Phoscon.

My bad, it's a read-only attribute. The setting is through Mode.

I can set the checkbox and save the Reversed in Mode
Снимок экрана 2019-07-09 в 21 42 02

Do you mean the calibration of the open and close position?

Yes.

On the old controller, it changes from 0.00 (closed) to 100.00 (open), after calibrating the controller. Just like Current Position Life Percentage. Does the controller react when you try and write Present Value? Does the Multistate Output report anything?

No react, no report.

@deven2020
Copy link

Hi

Can you confirm if this works with deconz/conbee 2? I am planning to get one.

Appreciate your feedback.

@freenetwork
Copy link

Hello. This curtain is working?

@cacherocks
Copy link
Author

Hello. This curtain is working?

Hi
Can you confirm if this works with deconz/conbee 2? I am planning to get one.
Appreciate your feedback.

Hi, unfortunately not, I'm still waiting for B1 support to be added to the deconz. Maybe support will appear in 2.05.67. Like this issue to show the importance of adding support for B1.

@cacherocks
Copy link
Author

@ebaauw Should we expect support for Aqara B1 in Deconz 2.05.67?

@ebaauw
Copy link
Collaborator

ebaauw commented Aug 14, 2019

Should we expect support for Aqara B1 in Deconz 2.05.67?

I’m not the person to answer that question. I am just a deCONZ user, who on occasion contributes to this open source

Should we expect support for Aqara B1?

To support the B1, we first need to understand how to control it, i.e. what ZigBee commands make it open, close, and hold the curtains, and how it reports the current curtain position. If it’s not through the Window Covering nor through the Analog Output cluster, I wouldn’t know how.

@freenetwork
Copy link

freenetwork commented Aug 15, 2019

I test zigbee2mqtt and change config from aqara curtain for aqara curtain b1. It is working. But without battery state

I want to say that the control commands work with the previous non-battery version

One problem i cant get responce with current position

@cacherocks
Copy link
Author

I want to say that the control commands work with the previous non-battery version

So it will be enough to clone the settings from the old version of the "lumi.curtain" for the new version of the b1 "lumi.curtain.hagl04", good news.

@ebaauw
Copy link
Collaborator

ebaauw commented Aug 15, 2019

Not according to your own tests. We must understand how to control the B1 from the GUI, before we can support it in the API.

@freenetwork
Copy link

freenetwork commented Aug 20, 2019

https://github.com/freenetwork/ZNCLDJ12LM

I capture packets. Controls messages use previous

@ebaauw
Copy link
Collaborator

ebaauw commented Aug 20, 2019

Thanks. Very insightful.

  • While battery powered, the B1 seems to poll it's parent every second.
  • I see an attribute report for the Xiaomi special attribute with payload:
    01 21 b80b 04 21 9813 05 21 5d00 06 24 1ae108257c08 21 0c01 0a 21 0000 65 20 63 66 20 c3 67 20 0c 68 21 0202 64 20 00
    
  • I see an attribute report for the the Battery Level of the _Power Management cluster - that's a Xiaomi first;
  • Unfortunately, that's were adhering to the standard seems to stop. It looks like Xioami use a bunch of manufacturer specific boolean attributes on the Basic cluster to control the B1:
    • 0xff27 for store/clear position;
    • 0xff28 for enable/disable reverse curtain;
    • 0xff29 for enable/disable auto close.

Unfortunately, you didn't capture opening nor closing the B1. I bet they use special attributes for that as well. And for reporting the current position.

First order of business is defining these attributes in general.xml and see if the B1 can be controlled using the deCONZ GUI.

@freenetwork
Copy link

freenetwork commented Aug 21, 2019

Ok. I try today.

I did not capture the opening and closing since the motor was on the table. it is not calibrated and in packets it would not be possible to determine correctly the current position. I’ll try at home today when the motor is on the ledge and write there

@freenetwork
Copy link

freenetwork commented Aug 25, 2019

My radio broadcast is very full. For this status message is difficult to choose. I take screenshoots from wireshark. Control message work from old model.
I will try a new pairing at work, I hope the calibration from the motors will not disappear.
Unfortunately, I reset my gateway to get developer mode. And now the broadcast is very clogged with messages so that I catch a new key again

Open for 26 percent. It is current position response.
status message open 26 percent

Open for 46 percent. It is current position response.
status message open 46 percent

@cacherocks
Copy link
Author

cacherocks commented Aug 27, 2019

Working config Aqara B1 for Homebridge based on Xiaomi hub:
YinHangCode/homebridge-mi-aqara#272

@cacherocks
Copy link
Author

Working config Aqara B1 for Home Assistant based on Xiaomi hub:
home-assistant/core#25942

@ebaauw
Copy link
Collaborator

ebaauw commented Aug 29, 2019

@cacherocks, that won’t be of any help. These integrate with the API offered by the Xiaomi hub. For deCONZ support, we need to integrate with the B1 itself over ZigBee.

@cacherocks
Copy link
Author

@cacherocks, that won’t be of any help. These integrate with the API offered by the Xiaomi hub. For deCONZ support, we need to integrate with the B1 itself over ZigBee.

ok, what other data is needed, at least for the test addition of the motor to the deconz? Even without a battery, the main thing is motor control. The data that @freenetwork provided is not enough?

@cacherocks cacherocks changed the title Aqara Curtain B1 support [Request Device Support] Aqara Curtain motor B1 Oct 7, 2019
@cacherocks
Copy link
Author

@freenetwork says that the control commands for version B1 are the same as for the old version of the motor. It turns out that you just need to copy everything from lumi.curtain to lumi.curtain.hagl04. Obtaining data on the battery charge can be omitted, it is not as interesting as managing curtains. Please do a PR with a copy of the data from lumi.curtain to lumi.curtain.hagl04.

@ebaauw
Copy link
Collaborator

ebaauw commented Oct 7, 2019

Please do a PR with a copy of the data from lumi.curtain to lumi.curtain.hagl04.

The code checks if the model identifier starts with lumi.curtain, so it already matches lumi.curtain.hagl04.

@ArkadiuszNiemiec
Copy link

I have just tried to pair my new B1 but it did not want to connect to Deconz. @ebaauw how can I help? I have the dongle for sniffer.

@ebaauw
Copy link
Collaborator

ebaauw commented Oct 22, 2019

I’m afraid you need to sniff the ZigBee commands that the Aqara hub sends to the controller. As mentioned above, I suspect they use manufacturer-specific attributes to control and report the motor.

As for pairing: it should appear in the deCONZ GUI, see screenshots above.

@ArkadiuszNiemiec
Copy link

ArkadiuszNiemiec commented Oct 24, 2019

@ebaauw oh, ok. I was looking into Deconz web interface. I am away for two weeks so cannot do it now but I will update as soon as possible. Thank you for your great work 😄
Edit: I am still learning but I hope that I will be able to contribute soon.

@bkorda
Copy link

bkorda commented Dec 20, 2019

How is the progress guys?

@NMGAndy
Copy link

NMGAndy commented Oct 28, 2020

Hi! Is the motor supported now?

@krastek
Copy link

krastek commented Oct 29, 2020

Nothing has changed since my last reply - you can open/close/set position, but you don't get a status of the device.

@krastek
Copy link

krastek commented Oct 29, 2020

This topic has already been closed, but I'll post a reply to @ebaauw request to do GET on /lights.
Here's what I receive:
{
"etag": "a405b9b8ded0f0747f539b6fd08f214f",
"hascolor": false,
"lastannounced": "2020-10-29T15:19:00Z",
"lastseen": "2020-10-29T15:42Z",
"manufacturername": "LUMI",
"modelid": "lumi.curtain.hagl04",
"name": "Zasłony - Sypialnia",
"state": {
"bri": 25,
"lift": 10,
"on": true,
"open": true,
"reachable": true
},
"swversion": null,
"type": "Window covering device",
"uniqueid": "04:cf:8c:df:3c:75:46:c1-01"
}
"lift" doesn't reflect curtain's current postition unless I do a "read" of the "Present Value" in deconz firt.
"llift" resets to 100 every time I change curtain's position.

@ebaauw
Copy link
Collaborator

ebaauw commented Oct 29, 2020

"lift" doesn't reflect curtain's current postition unless I do a "read" of the "Present Value" in deconz firt.

Does Present Value already reflect the actual position before the Read, or only after it?

"llift" resets to 100 every time I change curtain's position.

Can you check the value of the Current Position Lift Percentage in the _WIndow Covering cluster? What happens if you read this attribute (after you read the Present Value in the Analog Output cluster)?

My guess is:

  • either the B1 doesn't report Present Value, in which case we need to check whether binding and attribute reporting can be configured;
  • or the B1 reports Present Value, but also Current Position Lift Percentage, which doesn't reflect the current position. In this case, the REST API needs to ignore the report for Current Position Lift Percentage.

To figure out what's happening, we would need a sniffer log of the Zigbee traffic; alternatively, run deCONZ with --dbg-info=2 and look for the APS-DATA.indication messages from the B1 in the log.

@krastek
Copy link

krastek commented Oct 29, 2020

Does Present Value already reflect the actual position before the Read, or only after it?

Only after.

Can you check the value of the Current Position Lift Percentage in the _WIndow Covering cluster? What happens if you read this attribute (after you read the Present Value in the Analog Output cluster)?

Attribute unsupported.

To figure out what's happening, we would need a sniffer log of the Zigbee traffic; alternatively, run deCONZ with --dbg-info=2 and look for the APS-DATA.indication messages from the B1 in the log.

I'll need more time for that, so I hope I'll manage to do that this weekend.

@ebaauw
Copy link
Collaborator

ebaauw commented Oct 29, 2020

OK, so it looks like the B1 simply isn't reporting the Present Value. Could you try in the GUI to set up a binding from the Analog Output cluster to the coordinator, and to configure reporting for Present Value (values 1/300/1 should be OK). See the User Manual under Help how to do this. If this works, could you try the same for the Power Configuration cluster and the Battery Percentage Remaining attribute (with values 7200/7200/0).

@krastek
Copy link

krastek commented Oct 30, 2020

Should the binding be created to Home automation configuration tool or dresden elektronik configuration tool?
image

@SwoopX
Copy link
Collaborator

SwoopX commented Oct 30, 2020

@krastek
Copy link

krastek commented Oct 30, 2020

I did the binding and then tried to configure the reporting, but unfortunately the attribute is unreportable.

@ebaauw
Copy link
Collaborator

ebaauw commented Oct 30, 2020

Unfortunately, that doesn’t come as a big surprise for a Xiaomi device. I cannot imagine that the B1 doesn’t report the current position somehow, but without having access to the device it will be hard for me to find out how. Really need a sniffer log, or debug log from deCONZ.

I assume just creating the binding didn’t result in the position being reported?

@SwoopX
Copy link
Collaborator

SwoopX commented Oct 30, 2020

According to z2m, the binding should be sufficient and the device sends those attributes.

@krastek
Copy link

krastek commented Oct 31, 2020

According to z2m, the binding should be sufficient and the device sends those attributes.

I double checked that. The binding alone changes nothing: I don't see values udating in HA unless I do a "Read" in decons.

I run deconz with debug 2. Here are several entries starting with aps-data.indication. I was gathering data while making the curtain go to positions 0,10,20,50

`
16:58:37:948 APS-DATA.indication from child 0x0100
16:58:37:949 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
16:58:37:949 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
16:58:37:950 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
16:58:37:950 payload: 5500390000004000f02300000200

16:58:37:954 APS-DATA.indication from child 0x0100
16:58:37:955 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
16:58:37:955 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
16:58:37:956 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
16:58:37:956 payload: 5500390000000000f02300000200
16:58:37:956 Websocket 172.30.32.1:33290 send message: {"e":"changed","id":"3","r":"lights","state":{"bri":254,"lift":100,"on":true,"open":false,"reachable":true},"t":"event","uniqueid":"04:cf:8c:df:3c:75:46:c1-01"} (ret = 160)
16:58:37:961 Websocket 172.30.32.1:33290 send message: {"e":"changed","id":"3","r":"lights","state":{"bri":254,"lift":100,"on":true,"open":false,"reachable":true},"t":"event","uniqueid":"04:cf:8c:df:3c:75:46:c1-01"} (ret = 160)
16:58:37:962 discard light state push for 3: state/bri (already pushed)

17:01:16:259 APS-DATA.indication from child 0x0100
17:01:16:259 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
17:01:16:260 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
17:01:16:260 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
17:01:16:260 payload: 5500390000004000f02300000200

17:04:34:158 APS-DATA.indication from child 0x0100
17:04:34:158 verify 0x04cf8cdf3c7546c1 is child node after 865072 s
17:04:34:158 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
17:04:34:159 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
17:04:34:165 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
17:04:34:165 payload: 5500390000004000f02300000200
17:04:34:170 Websocket 172.30.32.1:33290 send message: {"e":"changed","id":"3","r":"lights","state":{"bri":248,"lift":98,"on":true,"open":true,"reachable":true},"t":"event","uniqueid":"04:cf:8c:df:3c:75:46:c1-01"} (ret = 158)
17:04:34:171 verify neighbor status: APP_SUCCESS (0x00)
17:04:34:172 discard light state push for 3: state/open (already pushed)
17:04:34:173 discard light state push for 3: state/bri (already pushed)
1
7:04:34:175 APS-DATA.indication from child 0x0100
17:04:34:175 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
17:04:34:176 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
17:04:34:185 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
17:04:34:185 payload: 5500390000000000f02300000200
17:04:34:191 Websocket 172.30.32.1:33290 send message: {"e":"changed","id":"3","r":"lights","state":{"bri":254,"lift":100,"on":true,"open":false,"reachable":true},"t":"event","uniqueid":"04:cf:8c:df:3c:75:46:c1-01"} (ret = 160)
17:04:34:193 discard light state push for 3: state/open (already pushed)

postion: 20
17:09:11:342 APS-DATA.indication from child 0x0100
17:09:11:342 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
17:09:11:343 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
17:09:11:349 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
17:09:11:349 payload: 5500390000004000f02300000200

postion: 0
17:11:10:942 APS-DATA.indication from child 0x0100
17:11:10:943 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
17:11:10:943 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
17:11:10:948 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
17:11:10:948 payload: 5500390000000000f02300000200

postion: 50
17:13:41:565 APS-DATA.indication from child 0x0100
17:13:41:565 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
17:13:41:566 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
17:13:41:570 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
17:13:41:570 payload: 5500390000004000f02300000200
17:13:41:572 Websocket 172.30.32.1:33290 send message: {"e":"changed","id":"3","r":"lights","state":{"bri":248,"lift":98,"on":true,"open":true,"reachable":true},"t":"event","uniqueid":"04:cf:8c:df:3c:75:46:c1-01"} (ret = 158)
17:13:41:573 APS-DATA.indication from child 0x0100
17:13:41:573 Node data 0x04cf8cdf3c7546c1 profileId: 0x0104, clusterId: 0x000D
17:13:41:574 0x04CF8CDF3C7546C1: update ZCL value 0x01/0x000D/0x0055 after 0 s
17:13:41:577 ZCL attribute report 0x04CF8CDF3C7546C1 for cluster: 0x000D, ep: 0x01, frame control: 0x18, mfcode: 0x0000
17:13:41:577 payload: 5500390000000000f02300000200
17:13:41:580 Websocket 172.30.32.1:33290 send message: {"e":"changed","id":"3","r":"lights","state":{"bri":254,"lift":100,"on":true,"open":false,"reachable":true},"t":"event","uniqueid":"04:cf:8c:df:3c:75:46:c1-01"} (ret = 160)
17:13:41:582 discard light state push for 3: state/bri (already pushed)
17:13:41:584 discard light state push for 3: state/lift (already pushed)
17:13:41:585 discard light state push for 3: state/open (already pushed)
17:13:41:586 discard light state push for 3: state/bri (already pushed)
`

BTW: can I access deconz log file somehow? Right now the only way to access log is throughs HA's GUI which is not very convenient.

@ebaauw
Copy link
Collaborator

ebaauw commented Oct 31, 2020

So the B1 does send attribute reports for 0x0055 and 0x00F0. I’m not good at manually deciphering float values, but I’m seeing two different values, corresponding to a lift value of 98 and 100. Oddly the second report arrives within 10ms of the first, overwriting the 98.

@krastek
Copy link

krastek commented Oct 31, 2020

Is it a good thing? Given the fact that the reported values are incorrect? I mean in some cases 100 was truly what was requested, but most of the time I asked for 90, 80, 50 (in HA it will be 10, 20, 50), so even 98 that occurs in the reports from time to time is incorrect.

@ebaauw
Copy link
Collaborator

ebaauw commented Oct 31, 2020

It's a good thing that the B1 is reporting something; it's a bad thing that it's reporting nonsense. I'd try a full reset, not just of the Zigbee module, but also of the motor, and a recalibration of the open and close positions. I don't have a B1 myself and I'm at a loss what's happening otherwise.

@dnamat88
Copy link

so, any kind of use? i have conbee II and home assistant and i can't set up automation because home assistant can't receive open/closed status :( .. any kind of workaround?

@TheBigBelgianBastard
Copy link

Is there any news on this? I can't really do anything with the Aqara B1 motor with ConBee II stick on HomeAssistant as the stick doesn't know the position of the curtains.

Is there anything we can do to help move this forward?

@Mimiix
Copy link
Collaborator

Mimiix commented Mar 23, 2021

@ebaauw Can you answer the above?

@ebaauw
Copy link
Collaborator

ebaauw commented Mar 23, 2021

No

@TheBigBelgianBastard
Copy link

Sorry - is that a:
"No I can't answer the above"
"No there isn't any news on this"
"No there is nothing you can do to move this forward?"

I'm keen to help out in any way I can. If there's testing that needs doing or information that needs collecting, etc.

@ebaauw
Copy link
Collaborator

ebaauw commented Mar 23, 2021

No, there isn’t any news on this. I don’t have the B1. I tried to add support based on the mains-powered curtain controller (which I do have). I understand controlling the B1 works, but it doesn’t send notifications when its state is updated. As I’ve mentioned before, we need a sniffer log of the Mi gateway setting up the B1, configuring it to send notifications. Even with that info, it might be challenging to mimic that setup without having the device at hand.

@SwoopX
Copy link
Collaborator

SwoopX commented Mar 23, 2021

@ebaauw How about polling it?

@ebaauw
Copy link
Collaborator

ebaauw commented Mar 23, 2021

No fan of polling end-devices. If the Mi gateway turns out to be polling the B1, I suppose we have no alternative, but otherwise, I won't go there.

@TheBigBelgianBastard
Copy link

Hi ebaauw. I have boght a Mi gateway and it happily controls the Aqara B1. What do I need to do to sniff the messages beteen the gateway and the curtain motor? Can I use my ConBee II stick to do this? Or do I need some special Zigbee hardware?

@ebaauw
Copy link
Collaborator

ebaauw commented Apr 12, 2021

I use ZShark to sniff the traffic and Wireshark to analyse it, but ZShark still doesn’t support the ConBee II nor RaspBee II.

I understand controlling the B1 is not the issue, but getting the B1 to report its state to deCONZ.

@oktay89
Copy link

oktay89 commented Jun 1, 2021

Can someone help me with this?
[ernal.handler.DeconzBaseThingHandler] - Sending command DOWN to channel deconz:windowcovering:e283a68dbd:04cf8cdf3c74b5e901:position failed: 400 - [{"error":{"address":"/lights/4/state","description":"parameter, ontime, not available","type":6}}]
I can close the curtains, but can't open them, because of this error message.
I guess it has something to do with the curtain track length, but dont know how to reset it

@fantasynite
Copy link

fantasynite commented Dec 4, 2022

Hi, just checking in if someone had managed to get this to work? I had tried pairing through the phoscon GUI, and wasn’t able to detect the motor.

@Smanar
Copy link
Collaborator

Smanar commented Dec 4, 2022

You need to use phoscon "add new light" for the device be included in the API
In deconz (The GUI) you need to see at least the node with a name like 0xXXXX.

If it's your first device, can be a setting issue, else your procedure for reset the device is perhaps bad.

@fantasynite
Copy link

I had used “Add New Lights” from the phoscon GUI. Then hold the button on the B1 motor for 5 seconds until it blinks. No feedback from the GUI.
The motor is currently paired to an Aqara Hub, not sure if need to switch off the hub when pairing. Anyway, I will try again tonight.
Thank you!

@Smanar
Copy link
Collaborator

Smanar commented Dec 4, 2022

A device can't be paired to 2 network.
If it' still paired with the aqara HUb it mean the pairing procedure with the deconz network haven't worked.
And the reset procedure ofc, else it need to have leave the old network or the device have a "auto-pairing" feature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests