home-assistant / home-assistant/android

Feature Request: QR code scanning in the ZHA integration for Zigbee 3.0 device secure provisioning?

Open
#5,308 2 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Kotlin
Stars
3.9k
Forks
1.1k
Avg merge
1d 12h
Merged PRs (30d)
81

Description

**Is your feature request related to a problem? Please describe.**

The problem is that QR code secure provisioning via the companion apps is not yet supported for the ZHA integration for the Zigbee 3.0 devices that require it, however a matching QR code secure device commisioning feature is now available for the Z-Wave integration.

Note however that the ZHA integration component in Home Assistant core does support this on the backend side, so it is possible to manually type in the install code, but that has to be done via Actions (service calls) which is not user-friendly.

**Describe the solution you'd like**

Please add support for QR code scanning via camera for the [ZHA integration](https://www.home-assistant.io/integrations/zha#) to the Home Assistant Companion app for Android to enable Zigbee 3.0 device secure provisioning (to match the as QR code scan support via cameera that was added for Z-Wave Smart Start in Home Assistant 2025.5 release).

As I understand, zha integration component in Home Assistant core already has backend code, so what is missing is the frontend parts.

For reference and more information about Zigbee device QR code provisioning please see this related feature request discussions:

* https://github.com/home-assistant/frontend/discussions/12272

and

* https://community.home-assistant.io/t/zigbee-device-qr-provisioning-by-scanning-qr-code-on-product-using-native-qr-scanner-via-camera-from-zhas-ui-config-and-home-assistant-companion-app-s-to-include-new-zigbee-3-0-devices-to-the-zha-integration/231185/

Also see this related discussion:

- https://github.com/home-assistant/home-assistant.io/issues/34321

So the request it to enable QR code scanning Zigbee devices that requires install code that can be added via QR code for commisioning. Something that itoday have to be done manually via Actions (service calls), which is something that is not a user-friendly procedure today.

* https://www.home-assistant.io/integrations/zha#actions

## Actions

### Action `zha.permit`

To add new devices to the network, call the `permit` action on the `zha` domain. Do this by clicking the **Actions** tab in **Developer tools** and typing `zha.permit` in the **Action** dropdown box. Next, follow the device instructions for adding, scanning or factory reset.

This action opens network for joining new devices.

| Data | Optional | Description |
| ---------- | -------- | ------------------------------------------------------------------------------ |
| `duration` | yes | For how long to allow new devices to join, default 60s |
| `ieee` | yes | The IEEE address of an existing device via which the new device is to be added |

To join a new device using an install code (ZB3 devices) use the following data attributes (must use parameters only
from the same group:

| Data | Parameter Group | Description |
| -------------- | --------------- | ------------------------------------------------------------------- |
| `src_ieee` | install_code | The IEEE address of the joining ZB3 device. Use with `install_code` |
| `install_code` | install_code | Install Code of the joining device. Use with `src_ieee` |
| `qr_code` | qr_code | QR code containing IEEE and Install Code of the joining ZB3 device |

#### Note
Currently `qr_code` supports QR Install Codes from:
- Aqara
- Bosch
- Consciot
- Embrighten

**Describe alternatives you've considered, if any**

Alternative is to type in the QR code / install code manually,

**Additional context**

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.