dresden-elektronik / deconz-rest-plugin

deCONZ REST-API plugin to control ZigBee devices
BSD 3-Clause "New" or "Revised" License
1.89k stars 496 forks source link

New device Request Xiaomi Aqara Smart Home Switch D1 Wall Plug Triple Gang #3182

Closed pawellygan closed 3 years ago

pawellygan commented 4 years ago

DEVICE:

Name: Xiaomi Aqara Smart Home Switch D1 Wall Plug Triple Gang Manufacturer: Xiaomi Model Code: QBKG26LM Device type: In-Wall Switch 3 Gang

SCREENSHOTS:

Screenshot 2020-08-22 at 13 15 07 Screenshot 2020-08-22 at 13 17 12 Screenshot 2020-08-22 at 13 17 57 Screenshot 2020-08-22 at 13 18 15 Screenshot 2020-08-22 at 13 18 37 Screenshot 2020-08-22 at 13 19 01 Screenshot 2020-08-22 at 13 19 29 Screenshot 2020-08-22 at 13 20 05 Screenshot 2020-08-22 at 13 20 58 Screenshot 2020-08-22 at 13 21 27
Smanar commented 4 years ago

Hello, this device don't work natively ? It s a "light", not a "switch".

pawellygan commented 4 years ago

Hello, this device don't work natively ? It s a "light", not a "switch".

It is a light switch and this is how it has been recognised by Deconz. It is new 2020 model and even Z2M doesn't have support for it (yet)

Screenshot 2020-08-22 at 13 37 17
Smanar commented 4 years ago

But where you checking to see if the device is included ?

I don't see something exotic that can prevent the device be included in tha API.

Realy nothing in the API ?

pawellygan commented 4 years ago

But where you checking to see if the device is included ?

I don't see something exotic that can prevent the device be included in tha API.

Realy nothing in the API ?

Go to compatible devices list. And believe me,you will not find this switch and you won't be able to add this switch to the list

Smanar commented 4 years ago

"Go to compatible devices list" the list on the wiki ? You can't see it in phoscon / light ? You haven't a json for it in the api ? http://IP:PORT/api/KEY/lights

pawellygan commented 4 years ago

Wow! I just found this switch as 3 separate lights! Thx for this!

SwoopX commented 4 years ago

Please leave it open, theres some functionality missing yet. Apparently power and consumption measuring.

pawellygan commented 4 years ago

Please leave it open, theres some functionality missing yet. Apparently power and consumption measuring.

also, no feedback to deconz when the switch has been pressed by hand

Smanar commented 4 years ago

also, no feedback to deconz when the switch has been pressed by hand

But reporting are enabled by defaut on xiaomi too ...

I have added the device in whitelist, so you will have some more entries created. Some of them will be useless, and Some of them will probably don't work. (Alarm cluster ???)

To try the code, the procedure is on github homepage, just replace the step 1 by git clone --branch divers https://github.com/Smanar/deconz-rest-plugin.git

And can skip " git checkout -b mybranch HEAD"

BTW I m doing more than 1 device on this branch, so the code move a lot, if you have an error during compilation, you can stop directly.

pawellygan commented 4 years ago

also, no feedback to deconz when the switch has been pressed by hand

Ha ?

I meant using node red I can toggle on/off but when I press the button (like a finger press) there is no info going back to plugin that button has been pressed and changed its state

Smanar commented 4 years ago

Yep, but I m looking the code, the bind and the reporting seem to be activated. On cluster 0x0006 "on / off", look at the attribute 0x0000, it need to change when you use manualy the switch (not the same thing, but can work with or without pressing the "read" button)

pawellygan commented 4 years ago

Awesome - let me finish one thing and I will check it again. Will report you back

-- Pawel Lygan Freelance Video Technician

m: +44 07481255870 e: contact@pawellygan.co.uk

pawellygan.co.uk

The content of this email is confidential and intended for the recipient specified in message only. It is strictly forbidden to share any part of this message with any third party, without the written consent of the sender. If you received this message by mistake, please reply to this message and follow with its deletion, so that we can ensure such a mistake does not occur in the future. On 23 Aug 2020, 13:12 +0100, Smanar notifications@github.com, wrote:

Yep, but I m looking the code, the bind and the reporting seem to be activated. On cluster 0x0006 "on / off", look at the attribute 0x0000, it need to change when you use manualy the switch (not the same thing, but can work with or without pressing the "read" button) — You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub, or unsubscribe.

pawellygan commented 4 years ago

lygi@homeassistant:~/deconz-rest-plugin$ qmake --version QMake version 3.1 Using Qt version 5.12.8 in /usr/lib/x86_64-linux-gnu lygi@homeassistant:~/deconz-rest-plugin$ qmake && make -j2 Project ERROR: Unknown module(s) in QT: serialport lygi@homeassistant:~/deconz-rest-plugin$

oh well :\

Is there a way to install dev package for Docker? So far having some problem to do it

Mimiix commented 4 years ago

@pawellygan On a moderation note: Please use the template next time. You added the correct screens, so no worries. But that template also adds the label :) Saving me some work 😉 Thanks!

pawellygan commented 4 years ago

@pawellygan On a moderation note: Please use the template next time. You added the correct screens, so no worries. But that template also adds the label :) Saving me some work 😉 Thanks!

Oh! Believe me I tried! No labels available for me or I don't know how to do it but I did my best

Mimiix commented 4 years ago

@pawellygan When you create a issue and select the "device request" template, it automatically assigns the label after creating.

No worries! It's okay :)

Smanar commented 4 years ago

I think it s possible on docker, but not on hassio, hassio is not a real OS. You haven't another Unix machine ?

pawellygan commented 4 years ago

I think it s possible on docker, but not on hassio, hassio is not a real OS. You haven't another Unix machine ?

I'm running Ubuntu Server 20.04 and HA from docker

pawellygan commented 4 years ago

Ok finally I compiled everything - last step left - to swap the plugins. But have no idea where to start. Running Supervised HA from docker , official Deconz plugin, Ubuntu 20.04 server

Smanar commented 4 years ago

IDK how o use HA with not local running deconz, but

If you haven't api key on this machine, can use curl curl http://127.0.0.1:80/api/ -X POST -d '{"devicetype": "TestKey"}'

Edit: I think I haven't understand, you are using an HA OS ? If yes, it s useless, you need a real OS (Ubuntu is ok).

pawellygan commented 4 years ago

Unfortunately, I can't make it work with Docker, and HA - I will have to wait for an official release and green light for this device. At this point, I can turn on or off all three gangs together - but there is no cooperation with the switch for NodeRed and switch is not reporting back about its state (when pressed by hand) Also, none of them work for scenes, you can add them but when the scene is called - there is no action for the switch. Because its running from docker I can't call http://IP_DECONZ:PORT/api/API_KEY/sensors - I know my API key but link just doesn't work for docker's IP

Smanar commented 4 years ago

Ok, so waiting for someone with the device and an Real Unix machine.

pawellygan commented 4 years ago

actually got a question - IF I will unplug conbee and use it for a different machine - when I plug it back to my HA host - will everything work like before? I can set a separate Ubuntu machine and test it - got a spare computer here ;)

Smanar commented 4 years ago

Yes. Device are memorised on the host, network configuration on the key, so nothing will change.

No. Xiaomi battery device don't like to be without parent too long time (>>> 1h) and can leave the network without gateway, so need to be fast ^^.

ebaauw commented 4 years ago

can leave the network without gateway

Are you sure? I would think “without its parent” or maybe “without the coordinator” (if it wants to see ACKs to its reports). I doubt the end device would look for more than NWK ACKs. As long as the device is powered, its firmware continues to act as coordinator (incl. the parent function), irrespective of whether deCONZ is running.

Smanar commented 4 years ago

Yep, you are right (without its parent), "language abuse" because generally user that have Xiaomi device, have at least one of them connected to the gateway.

BTW, but in fact you are reading all isssues ^^, but invisible like a ninja.

pawellygan commented 4 years ago

ok, yesterday I fired up my work laptop as Ubuntu machine, compiled and tested the wall switch. unfortunately, it has been detected as 3 separate lights without reporting back about the pressed rocker. Not sure how I can run more test for you - I think I will need some guidance

Smanar commented 4 years ago

Do you know how to use the api ? https://dresden-elektronik.github.io/deconz-rest-doc/

If I m right you will have some more sensor with the modifications, just take a look at url http://IP:PORT/api/API_KEY/sensors

IP and PORT are the same than for phoscon If you haven't api key, with curl curl http://127.0.0.1:80/api/ -X POST -d '{"devicetype": "TestKey"}'

But I think the device use Xiaomi special report for button state, and probably the rest. To be sure we need to run deconz in debug mode, I will explain that later, after you have check for new sensor presence.

Creatish commented 4 years ago

Same line of device that works weird for me - https://github.com/dresden-elektronik/deconz-rest-plugin/issues/3156

Overall I have it doing everything I need, by ignoring the other lights and switches it added.

might be intrested in the 2 button switch version soon though and I'd imagine that won't work like this one does just about.

lovelylain commented 4 years ago

The D1 two-key version is almost the same as the previous generation, but the D1 three-key version is completely different. After pressing the physical button, no feedback is received. The accurate status of the switch can be read through read('genOnOff', ['onOff']). However, the lack of feedback on the physical buttons makes it difficult to integrate. I hope someone can solve it.

Smanar commented 4 years ago

@Creatish so you have tried to install deconz on a virtual machine ? It have worked or not ? Have you tried to install the dev package ?

Creatish commented 4 years ago

No sorry, I saw the conversation on here and the guy replying has far more understanding in giving you detaisl, i am no where near that so I ain't got a chance on helping with it unfortunately.

hopefully someone with them pop up soon :)

stale[bot] commented 3 years ago

As there hasn't been any response in 21 days, this issue has been automatically marked as stale. At OP: Please either close this issue or keep it active It will be closed in 7 days if no further activity occurs.

stale[bot] commented 3 years ago

As there hasn't been any response in 28 days, this issue will be closed. @ OP: If this issue is solved post what fixed it for you. If it isn't solved, request to get this opened again.

andys73 commented 3 years ago

Has this QBKG26LM device being added to latest Deconz, is not clear to me, Many thanks!

udponly commented 2 years ago

according to this: https://zigbee.blakadder.com/Aqara_QBKG26LM.html it is still not supported by deconz, only by z2m. is this correct? could you shine some light please @Creatish ? cheers!

Smanar commented 2 years ago

If I m right, at least the on/off is working, but not sure for the return. If you have the device can try to make a DDF ?