-
Notifications
You must be signed in to change notification settings - Fork 314
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
deconz driver/adapter (for ConBee/RaspBee Zigbee Coordinator) does not support joining/pairing via install code (or qr code) #1184
Comments
@Hedda: Thank you for the information. Is there any guide on what I have to do now to get my Bosch Thermostat 2 working with a conbee II stick? Thank you for your help. Maginos |
As long as you using any ConBee adapter then you are out of luck until install codes function is added the deconz driver here. See: "Support for commissioning Zigbee 3.0 devices via "Install Code" or "QR Code" has so far only been implemented for 'zstack' (Texas Instruments ZNP) and 'ember' (Silicon Labs EmberZNet) adapter type radios in Zigbee2MQTT. Other radio adapter types are either missing support in their respective adapter/driver for zigbee-herdsman or more likely missing in the manufacturer's firmware commands/APIs and documentation." It means that unless you are a developer that program and can add that feature to the deconz driver/adapter code in zigbee-herdsman then there is nothing you can do as long as you are using a ConBee (or RaspBee) adapter as your Zigbee Coordinator. So if you are an end-users looking for a work around that today without it being supported in the deconz driver/adapter you have to migrate to either a 'zstack' (Texas Instruments ZNP) or 'ember' (Silicon Labs EmberZNet) adapter, ...but there is a catch with migrations to/from deconz adapters as well because the deconz driver/adapter in zigbee-herdsman (and thus Zigbee2MQTT) does yet not support backup and restore for Zigbee network from or to ConBee/RaspBee, and therefore you currently would need to use an unofficial third-party external tools (like example zigpy-cli) to backup and restore your Zigbee network from ConBee to a Texas Instruments ZNP or Silicon Labs EmberZNet adapter (which is doable but in turn will require you to also re-pair all your devices regardless). Please respect that this is not the place to to discuss such workarounds.
While related I believe that question too is also off-topic here in regards to specifically calculate Link Key for Bosch Thermostat 2 if you are an end-users that is now no longer using the deconz driver/adapter with ConBee/RaspBee as have instead migrated to Texas Instruments ZNP or Silicon Labs EmberZNet adapter. Regardless we do not want to spam this zigbee-herdsman feature request issue with discussions about device specific questions. Hence, if you are and end-user and go the way of migrating to Texas Instruments ZNP or Silicon Labs EmberZNet adapter and then still need help calculating Link Keys for your Bosch Thermostat 2 devices then please post in the Zigbee2MQTT's discussions instead -> https://github.com/Koenkk/zigbee2mqtt/discussions (or in zigbee-herdsman-converters if related to changing or extending the zigbee-herdsman-converter for that device -> https://github.com/Koenkk/zigbee-herdsman-converters/issues ). |
Thank you @Hedda for your explanations. I ordered a Sonoff zigbee stick with a Texas Instruments chip. With this, it should work. Migration is not needed, since the Bosch thermostat is my first device. |
@ChrisHae @manup @Haerteleric any chance one of you guys would be interested and willing to spare some of your time to take a closer look at this requested feature/function of adding support for "install codes" provisioning in deconz driver (for ConBee/RaspBee Zigbee Coordinator adapters) inside the zigbee-herdsman framework so that Zigbee2MQTT users with ConBee/RaspBee adapters can provision Zigbee devices that require install code or QR code commissioning? This is needed for feature parity with 'zstack' (Texas Instruments ZNP) or 'ember' (Silicon Labs EmberZNet) adapters which already support this. PS: While I can only speak for myself, think I can still say that as it stands right now many of us who are a part of the Zigbee2MQTT and overall Zigbee open source projects communities can currently not with good conscience recommend ConBee II / RaspBee II or even the ConBee III to new Zigbee2MQTT end-users as they would not be able to add any Zigbee devices that require install code / QR code for provisioning. 😞 |
It looks to me as if Dresden Electronik already has implemented Zigbee Install Codes. |
FYI, it not clear but also sounds as if zigpy/zha developers have implemeneted it too as closed issue -> zigpy/zigpy-deconz#214
That depends if Dresden-Elektronik's own developers submit PR for it to zigbee-herdsman or some other volunteering steps-up. Suggest that you maybe post to ask in their phoscon.de forum at https://forum.phoscon.de/c/general/5 as not been replying here. |
Just tried to add a Bosch thermostat (using v1.42.0 and ConBee II) and this is what I get:
|
As Koenkk mentioned, support will be in dev branch. It won't be in release branch until next release (as part of 2.0.0). |
Sorry, forgot to mention that in fact I'm using the |
2.0.0 is not yet available in dev branch, have to wait until the release process is over, lots of moving pieces on this one. |
OK then I misunderstood this post:
Didn't know there is a 2.0.0 dev-branch besides the 1.x dev-branch. |
It's available in the dev branch now. |
Thank you :)
However, after that nothing else happens. The device is in pairing mode (also tried to reset it) but it doesn't pair. |
Can you provide the rest of the logs after that, to see what happens exactly? |
I didn't see any related log messages this morning but after re-trying it right now I noticed a timeout error after 10s:
Hard to tell if there's more because there is a lot of traffic on my zigbee network and it's hard to separate what message belongs to which device/event. Maybe I could create a test-instance with a fresh config for this... |
Are you seeing this timeout every time? If it didn't work, I'd expect an error response, but not a timeout. Worth mentioning that deconz's API considers adding install codes as experimental... |
Tip is that @manup have replied to direct questions posted in their repository here -> dresden-elektronik/deconz-serial-protocol#20 |
I do get the same errors as @SoftwareSchlosser . |
@gramels Are you using a Conbee II also? Can you provide a full |
I tried now from remote (without the Bosch TRV in pairing mode) and did not get a time out. So as it appears the time out is a strange response. I use a conbee III (3). |
We're going to need a full |
I enabled debug on z2m, thats what I got. Where would I enable/ extract the details you need (on hass os)? |
It does not appear you have enabled https://www.zigbee2mqtt.io/advanced/zigbee/04_sniff_zigbee_traffic.html for details on sniffing (requires a spare adapter to sniff with, easiest currently being EmberZNet-based ones). It's done separately from Z2M/HA, any computer will do. |
I am also trying to add Bosch devices to my z2m installation Please let me know if I can provide more details. SetupI am using a Home Assistant Green with
Zigbee2MQTT
Logs
|
@Nerivec @Koenkk please let me know what I can do to help get the install code to work in z2m 😊 Update:
My assumption is thus, that the Conbee III might just take > 10s to process the command and thus the command is aborted? Logs from the successful attempt:
Thanks, |
A little strange that it would take >10s and then sometimes succeeds in less than 5sec (pretty slow in any case though). Can you reproduce the successful add reliably? |
This morning, after >10h of not touching anything, However, I did NOT manage to pair the Twinguard. I will enable debug logs and try again in a few hours.
|
I tried to add the install code again after a few hours. The first attempt did not succeed. What I find interesting is the following logs hinting at https://github.com/Koenkk/zigbee-herdsman/blob/master/src/adapter/deconz/driver/driver.ts#L508 I did not dig into the timeoutcounter logic,
After changing the log level again to ensure EVERYTHING Is logged at However, the device did not manage to join. FYI I am running my Zigbee network on channel 25. |
deconz driver/adapter (for ConBee/RaspBee Zigbee Coordinator) does not support joining/pairing via install code (or qr code), but FYI; Dresden-Elektronik developer has now updated the deCONZ Serial Protocol documentation to v1.22 with info on install codes. See:
Originally posted by @manup in dresden-elektronik/deconz-serial-protocol#20 (comment)
Sorry this took a while, I had reworked the document since the former .docx based one was messy to update. The document references are in a bit rough shape but that's for another version. The new version 1.22 has now been uploaded http://deconz.dresden-elektronik.de/raspbian/deCONZ-Serial-Protocol_en_1.22.pdf
There is a new small section 6.2.3 Zigbee Install Codes which describes the basic usage.
As reference how it works in deCONZ the following sources might be helpful as well:
Calculating the derived Link Key from Zigbee Install Code (I think ZHA and Z2M already have similar code):
https://github.com/dresden-elektronik/deconz-rest-plugin/blob/master/crypto/mmohash.cpp
How the install code is processed by the REST-API and set to the firmware:
https://github.com/dresden-elektronik/deconz-rest-plugin/blob/0e2dc155e85893b439f354cd5d764e414ad0ed0c/rest_devices.cpp#L1090
Originally posted by @manup in dresden-elektronik/deconz-serial-protocol#20 (comment)
A C++ OpenSSL reference implementation for the key derivation can be found at:
https://github.com/dresden-elektronik/deconz-rest-plugin/blob/master/crypto/mmohash.cpp
The text was updated successfully, but these errors were encountered: