Zigbee/Security, hubs and the bench/On the ESP32 bench
Lesson 13 of 13 · in 3D and VR

On the ESP32 bench

Of Espressif's chips, the H2, C6 and C5 have the 802.15.4 radio that Zigbee needs. This lesson chooses a role, starts a network and shows the report it makes, then hands over to the ESP32 chapter for the code.

Lonely BinaryUpdated 2026-10-145 min readNo board required

View it in VR

Lesson 13 of the Zigbee course opens in a VR headset, on a table in front of you, and a voice starts three seconds after you arrive. Type this short address into the browser on a headset such as Meta Quest or Apple Vision Pro, and press Enter VR. No headset? Press Start the lesson: the same lesson, full screen.

learn.lonelybinary.com/vr/zigbee/13

Which chips have the radio

Zigbee needs an IEEE 802.15.4 radio. In the October 2026 documentation, the ESP32-H2 has it with Bluetooth Low Energy and no Wi-Fi. The ESP32-C6 has it with Wi-Fi 6 and Bluetooth Low Energy. The ESP32-C5 has it too, and whether the Arduino Zigbee library is validated for a given chip depends on the core release, so check the release you use.

The original ESP32, the ESP32-S3, the ESP32-C3 and the ESP32-P4 have no 802.15.4 radio, and software cannot add one. Such a board can only drive a separate radio, which is a different design.

The role is chosen in code

The Arduino core supports a coordinator, a router and an end device, and the role is a choice in the sketch, not something the chip decides. The menu has to match it: coordinator and router use the Zigbee ZCZR mode and partition scheme, and an end device uses Zigbee ED. When they disagree, the project does not fit or will not start.

Joining, routing and rejoining are the stack's job. The sketch supplies an endpoint, a device type and a value: the same endpoint, cluster and attribute you opened in lesson eight.

A device, or a radio for a host

A native device runs the Zigbee stack on the board and is a Zigbee device with a role. A board used as a radio for a host is not: the host's software drives the radio, which is a design pattern and not a Zigbee role.

What sharing costs

On a C6, Wi-Fi, Bluetooth and 802.15.4 share one 2.4 GHz radio path by taking turns. More Wi-Fi traffic can mean more Zigbee loss, and Espressif marks some Wi-Fi plus Zigbee router combinations as unstable or unsupported. Battery life follows poll interval, radio wake time, the sensor and the regulator, so it needs the whole board measured.

The code and the board settings are in the Zigbee, Thread and Matter chapter of the ESP32 book. Where a device's reports go after the radio is the MQTT course; the other radio on a C6 is the Wi-Fi course.

Common mistakes

  • Expecting any ESP32 board to run Zigbee. Only chips with an 802.15.4 radio can, and the library's support for each depends on the release.
  • Leaving the Tools menu on the default. The mode and partition scheme must match the role in the sketch.
  • Calling a board that drives a radio for a host a Zigbee device. The Zigbee stack runs on the host in that design.

Edit this page — content/fundamentals/zigbee/the-esp32-as-a-zigbee-device.mdx

Discuss this article

Ask about this page. The answer stays here, on the page it belongs to, for whoever hits the same wall next.

Browse Fundamentals on the forum →