Most Zigbee tutorials end at "hello, network." This one ends at a product: a standards-compliant occupancy sensor you designed, commissioned, bound to a real bulb, signed, and updated over the air, with the packet captures to prove all of it.
Preview build: the full course is readable here; checkout opens at launch.
An HLK-LD2410 mmWave radar watches the room. Your nRF52840 DK turns its raw UART frames into the standard Zigbee Occupancy Sensing cluster. A coordinator on a dongle, driven entirely from its shell, runs the network. An IKEA TRÅDFRI bulb obeys. In Chapter 11 a second dongle sniffs the air and you decode the whole system in Wireshark.
The whole course on one desk, the actual architecture figure from the course front matter.
37 diagrams across the course, block, sequence and state diagrams wherever a flow exists. Three of them:
Coordinator, routers, end devices, and who holds the keys. (Chapter 5)
The full join sequence, frame by frame. (Chapter 5)
The sniffer capture chain you build in the capstone. (Chapter 11)
Join sequences and frame formats are hard to learn from a static picture, so the lessons animate them, and hand you the controls. These three are lifted straight out of the chapters, untouched: press play, or step through them frame by frame.
Eleven chapters, one growing firmware. Total: about 28 to 35 hours of building, depending on your pace.
Install the pinned toolchain, flash your first app, and learn the two skills that decide whether embedded work is fun or misery: reading logs and driving the board from a shell.
Devicetree, Kconfig, threads, logging and work queues, the five Zephyr ideas everything later stands on, and no more.
Interrupt-driven buttons with debounce done properly, by timestamp, measured in your own logs, not guessed.
Interrupt UART, a ring buffer and a frame-parser state machine: a real LD2410 driver built from the datasheet, not a library.
Roles, channels and keys in plain words; forming a network from the coordinator shell, and the bdb / zdo / zcl toolkit every later lab is driven from.
Steering, the association handshake and transport-key delivery. Your device and a store-bought IKEA bulb join the same network.
The heart of the course: declare a standards-compliant Occupancy Sensing endpoint (0x0406) and wire it to the LD2410.
Attribute reporting and binding close the loop. Walk into the room and the bulb turns on; walk out and it turns off.
Two slots, signatures and a strict border guard: MCUboot swap, confirmation, and a rollback drill with a deliberately broken image.
The same signed update with no cable: OTA packaging, block pacing and version policy, while the sensor keeps sensing.
A second dongle sniffs the air into Wireshark. Capture a full join and decode every frame against what Chapters 5 to 8 taught.
Hardware is not included. It's the standard Nordic desk kit, reusable for every future course on this shelf. One-time cost is roughly US$70 to 110 depending on region.
The board you program: the occupancy sensor itself. (PCA10056)
One runs the coordinator; a second becomes the Chapter 11 sniffer. (PCA10059)
The mmWave presence sensor. Four wires: power, ground, TX, RX.
Any E26/E27 Zigbee TRÅDFRI bulb, the thing your sensor will switch.
Windows, macOS or Linux: the pinned toolchain (NCS v3.4.1) installs the same way on all three.
Two micro-USB cables and a handful of female-to-female jumper wires.
Buying the course is the start, not the whole deal. This is what's included with it, and the headline is a human being on the other end of an email.
Stuck on a lab, or a concept won't click? Email your question about the course to [email protected] and a working engineer answers, within 1 to 2 working days. Support covers questions about the course material and its labs. It is not general consulting, and it does not extend to debugging projects unrelated to the course. For as long as you own the course: no support tiers, no expiry, no ticket bot.
The hard ideas (the join handshake, the frame parser, an update crossing the air), are taught as animations you play, pause and step through, not slides that wash past.
Every chapter ends in a self-check quiz with full answers, so you find the gaps while they're still cheap to fix.
When it breaks. The field guide to the failures this build actually produces: symptom, cause, fix. Kept open beside the labs, it earns its place in the first week.
The product grows one verified step at a time, and the code grows with it, every exercise a buildable checkpoint, nothing dropped on you all at once.
Owning a course here will keep getting better. More owner perks are in the works, and when they land, owners get them, free.
Basic C and having seen a microcontroller is enough. Everything Zephyr and Zigbee is taught from zero (devicetree, Kconfig, clusters, all of it), but the course won't teach you what a pointer is.
One pinned stack, on purpose: nRF Connect SDK v3.4.1 with the Zigbee R23 add-on v1.4.0 (Zephyr 4.4.2). Chapter 1 installs exactly that. Pinning means every chapter builds the same bits on your machine as on ours.
Access doesn't expire. Buy once, build at your pace, come back whenever, including course updates.
Every lab ends in observable behaviour ("you are done when…"), the join-failure field guide covers the common traps, and email support is included. Write to [email protected] and a working engineer answers, not a bot.
Chapters 1 to 7 work with just the DK and dongle. The bulb is where reporting and binding become real (Chapter 8 on), so you'll want one by then. Any Zigbee 3.0 bulb works; the course uses TRÅDFRI because it's cheap everywhere.
Placeholder price for this preview build. Secure checkout opens at launch; the refund policy (14 days, no questions) will apply from day one.
A working embedded firmware engineer with 10 years in the field. The course is the desk manual he wishes he'd had: every pattern in it is one he uses in products.