Koenkk / zigbee2mqtt

Zigbee 🐝 to MQTT bridge 🌉, get rid of your proprietary Zigbee bridges 🔨
https://www.zigbee2mqtt.io
GNU General Public License v3.0
12.1k stars 1.68k forks source link

Conbee II: Add install code is not supported #17492

Open rouvenst opened 1 year ago

rouvenst commented 1 year ago

What happened?

I want to add my new Bosch Thermostat II 230 V (BTH-RM230Z) with Home Assistant and Conbee II via install code. Therefore I scanned the qr code from the back of the device and entered it into the "Add install code" tool. Afterwards the error Add install code is not supported is shown.

Logs:

Zigbee2MQTT:error 2023-04-29 12:06:14: Request 'zigbee2mqtt/bridge/request/install_code/add' failed with error: 'Add install code is not supported'
Zigbee2MQTT:info  2023-04-29 12:06:14: MQTT publish: topic 'zigbee2mqtt/bridge/response/install_code/add', payload '{"data":{},"error":"Add install code is not supported","status":"error","transaction":"ookk5-1"}'

What did you expect to happen?

It should add the device to z2m.

How to reproduce it (minimal and precise)

I'm using Conbee 2 from dresden-elektronik. Used the function "Add install code" from Settings > Tools.

Related to #14510. I guess Conbee 2 did not support install codes yet. With v2.22.0-beta there should be support. Maybe we can leverage this here (https://github.com/dresden-elektronik/deconz-rest-plugin/pull/6791)

Zigbee2MQTT version

1.30.3

Adapter firmware version

0x26780700

Adapter

ConBee2

Debug log

No response

Hedda commented 1 year ago

Ping @ChrisHae + @manup (and @Koenkk as might have some contacts at Dresden Elektronik or other other deconz devs?)

ConBee/RaspBee (deconz firmware) does not yet seem to implement Zigbee install code support in the deconz serial protocol and therefore ConBee/RaspBee does not currently offer feature-partity with with serial protocols for Texas Instruments Z-Stack and Silicon Labs EmberZNet for Zigbee Gateway host applications such as Zigbee2MQTT (which in turn depends on zigbee-herdsman).

This first needs to be supported in the firmware for ConBee/RaspBee as well as be documented for their deconz-serial-protocol:

https://github.com/dresden-elektronik/deconz-serial-protocol/issues/20

If it is already supported for it in their firmware then it needs to be implemented in the deconz adapter code for zigbee-herdsman:

https://github.com/Koenkk/zigbee-herdsman/tree/master/src/adapter/deconz

zigbee-herdsman is the Zigbee framework that Zigbee2MQTT (and IoBroker) uses it as Zigbee adapter specific abstraction code:

https://github.com/Koenkk/zigbee-herdsman/

Suggest that you also post a new feature for this under issues in the zigbee-herdsman repository for developer tracking as well:

https://github.com/Koenkk/zigbee-herdsman/issues

Note! FYI, all the Texas Instruments ZNP and Silicon Labs EZSP adapters do already support commissioning via install code.

PS: This is related to this request in deconz radio library for zigpy (which is used by Home Assistant's ZHA, Domoticz, and Jeedom):

https://github.com/zigpy/zigpy-deconz/issues/214

Hedda commented 1 year ago

Update; FYI, Dresden Elektronik's manup is having an dialog with zigpy dev here -> https://github.com/dresden-elektronik/deconz-serial-protocol/issues/20

While the first device in question was the Bosch Thermostat II 230 V (BTH-RA / BTH-RM230Z), I understand that some other people using deCONZ or Zigbee2MQTT have also reported the same symptoms with a few other Bosch-branded Zigbee devices, like Bosch Smoke Alarm II (BSD-2), Bosch Door/window contact II (RBSH-SWD-ZB), and Bosch BWA-1 water sensor, with all of them requiring adding the install code to pair/join.

Another device that been mentioned to require install code is the rotary switch Aqara H1 -> https://github.com/Koenkk/zigbee-herdsman/issues/420

And a few LEDVANCE/hue/innr/tint/osram bulbs have them too but for them it might be optional? See -> https://github.com/Koenkk/zigbee2mqtt/discussions/8498

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

rouvenst commented 1 year ago

no stale

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

rouvenst commented 1 year ago

no stale

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

lerra commented 1 year ago

Still relavent

SnDsound commented 1 year ago

Any news from battlefield?

Hedda commented 1 year ago

Any news from battlefield?

The problem is upstream as Dresden-Elektronik's own developers (as in the company that makes ConBee and RaspBee) need to further document their deCONZ serial protocol to help third-parties who use it -> https://github.com/dresden-elektronik/deconz-serial-protocol/issues/20

ChrisHae commented 1 year ago

It is not yet implemented in the serial protocol. When it is, it can be added to z2mqtt deconz adapter.

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

phil164 commented 1 year ago

no stale

pixartist commented 1 year ago

Any news?

lerra commented 1 year ago

Would be nice to understand the estimated timeline so I know if I should move away from conbee II or not

On Thu, Oct 19, 2023, 14:10 pixartist @.***> wrote:

Any news?

— Reply to this email directly, view it on GitHub https://github.com/Koenkk/zigbee2mqtt/issues/17492#issuecomment-1770821737, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEJZPFS2DCBWF4GQKMQRF5LYAEKDVAVCNFSM6AAAAAAXQEBCFCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZQHAZDCNZTG4 . You are receiving this because you are subscribed to this thread.Message ID: @.***>

Primo2966 commented 1 year ago

Any news?

mjaensch commented 11 months ago

I would also very much appreciate any news on this problem. Winter is here and my Bosch Thermostats are lying around uselessly.

Meilu commented 11 months ago

I have just received my Bosch thermostat but receiving the same error with my Conbee stick. News on this issue very much appreciated.

Hedda commented 11 months ago

Still no news, again the issue is with upstream, see -> https://github.com/dresden-elektronik/deconz-serial-protocol/issues/20

The problem is upstream as Dresden-Elektronik's own developers (as in the company that makes ConBee and RaspBee) need to further document their deCONZ serial protocol to help third-parties who use it -> dresden-elektronik/deconz-serial-protocol#20

ChrisHae commented 11 months ago

There is no official support of install codes for ConBee or RaspBee.

Hedda commented 11 months ago

@ChrisHae is it still on your roadmap? You wrote this in your other issue:

The Conbee2 fw does not support it yet. But it will come soon. And then it will also be implemented in zigbee herdsman deconz adapter.

Originally posted by @ChrisHae in https://github.com/dresden-elektronik/deconz-serial-protocol/issues/20#issuecomment-1431599456

ChrisHae commented 11 months ago

I think it is. But I'm not firmware developer. Better ask in dresden elektronik github pages or manup directly.

cromelex commented 9 months ago

Is there are news on this? Bought a Bosch Thermostat when I saw it as supported on zigbee2mqtt's list, only to have the issue trying to pair with the conbeeII.

Is there a list somewhere of the Adapters that actually support this? Might as well upgrade from the conbee2 if this wil ltake too long.

Thanks

Hedda commented 9 months ago

Is there a list somewhere of the Adapters that actually support this?

Only supported by Texas Instruments and Silicon Labs based adapters so far as still not documented for deconz serial protocol -> https://github.com/dresden-elektronik/deconz-serial-protocol/issues/20

gr3k commented 1 month ago

You can check this:

6.2.3 Zigbee Install Codes The Serial Protocol and firmware doesn’t support Zigbee Install Codes directly. In order to join a device via Install Code, a device specific Link Key needs to be derived from the Install Code by the host application. This 16-byte Link Key together with the device MAC address can than be configured by a Write Parameter Request (0×0B) for the Link Key parameter (0×19). Once configured, during joining process, the device will receive the Network Key encrypted with the Link Key instead of the global Truster Center Link Key. 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

source: http://deconz.dresden-elektronik.de/raspbian/deCONZ-Serial-Protocol_en_1.22.pdf

Hedda commented 1 month ago

See development discussion in this feature request issue for tracking in the zigbee-herdsman repository:

zigbee-herdsman is the Zigbee framework library that Zigbee2MQTT depends on so maybe better to diacuss this there.