zigbeed - EmberZNet 8.2.2 (EZSP 18)¶
Build script for zigbeed from Simplicity SDK 2025.6.2. Portable: works on x86_64, ARM64 (Raspberry Pi 4/5), ARM32.
Why This Version?¶
The Gecko SDK 4.5.0 produces zigbeed with EmberZNet 7.5.1 (EZSP 13). The Simplicity SDK 2025.6.2 produces zigbeed with EmberZNet 8.2.2 (EZSP 18).
| Directory | SDK | EmberZNet | EZSP |
|---|---|---|---|
../zigbeed/ |
Gecko SDK 4.5.0 | 7.5.1 | 13 |
zigbeed-8.2.2/ |
Simplicity SDK 2025.6.2 | 8.2.2 | 18 |
Prerequisites¶
- slc-cli installed in
silabs-tools/slc_clior in PATH (via1-Build-Environment/) - cpcd installed (provides libcpc)
Note: The Simplicity SDK 2025.6.2 is downloaded automatically from GitHub on first build.
Build and Install¶
./build_zigbeed.sh # Build and install to /usr/local/bin
./build_zigbeed.sh clean # Clean build directory
Note: Stop any running zigbeed before installing:
Architecture Support¶
| Architecture | uname -m |
SDK libs |
|---|---|---|
| PC 64-bit | x86_64 | x86-64 |
| Raspberry Pi 4/5 64-bit | aarch64 | arm64v8 |
| Raspberry Pi 32-bit | armv7l | arm32v7 |
The script auto-detects your architecture and patches the Makefile accordingly.
How It Works¶
- Download SDK from GitHub if not present (shallow clone, ~1.5 GB)
- Generate project using
slc generatewith architecture-specific components - Replace SDK copy with symlink (slc copies partial headers)
- Build using the generated Makefile
- Install to
/usr/local/bin/
slc generate command¶
The script uses the same approach as Nerivec's multiprotocol-builder:
slc generate zigbeed.slcp \
--with=zigbee_x86_64,linux_arch_64 \
--without=zigbee_recommended_linux_arch
The --with parameter tells slc to include architecture-specific libraries automatically.
Usage¶
# With CPC daemon (recommended)
zigbeed -r "spinel+cpc://cpcd_bringup?iid=1&iid-list=0" -p /tmp/ttyZigbeed
# Listen on TCP port
zigbeed -p 9999
Zigbee2MQTT Configuration¶
Expected Z2M Log¶
[2026-01-10 19:49:06] info: zh:ember: ======== EZSP started ========
[2026-01-10 19:49:06] info: zh:ember: Adapter EZSP protocol version (18)
[2026-01-10 19:49:07] info: zh:ember: [STACK STATUS] Network up.
[2026-01-10 19:49:07] info: z2m: Coordinator firmware version: '{"meta":{"ezsp":18,"major":8,"minor":2,"patch":2}}'
Troubleshooting¶
"Text file busy" on install¶
Stop running zigbeed first:
Wrong architecture libraries¶
The --with parameter ensures correct architecture. If you still see errors, verify your architecture detection:
Missing headers (sl_slist.h, etc.)¶
The SDK symlink must point to the full SDK, not a partial copy. The script handles this by removing the slc-generated partial copy and creating a symlink.