finds.dev

zephyrproject-rtos/example-application

Example out-of-tree application that is also a module

View on GitHubHomepage ↗

★ 365CApache-2.0updated Oct 2026

// the take

A reference skeleton for structuring an out-of-tree Zephyr RTOS application, showing how to lay out custom boards, drivers, devicetree bindings, west modules, and CI. It's aimed at embedded developers starting a new Zephyr-based firmware project who need a working template to copy from rather than a library to depend on.

Covers the real pain points of Zephyr app structure in one place: west T2 topology, out-of-tree drivers and libraries, custom devicetree bindings, and a custom board (custom_plank) with its own defconfig and pinctrl. Ships working GitHub Actions for build and docs plus a Twister integration test example, so the CI wiring can be lifted wholesale. Tagged in lockstep with upstream Zephyr releases, so you know exactly which Zephyr version a given tag targets instead of guessing compatibility.

It's a template, not a product — there's no ongoing functionality to adopt, just patterns to copy and then maintain yourself, including keeping pace with Zephyr's own breaking changes across releases. Getting it running requires a full west workspace and Zephyr SDK install first, which is a multi-gigabyte, multi-step setup before you see anything work. The example drivers (blink, a stub sensor) are intentionally trivial, so it doesn't show how the same patterns hold up with real peripheral complexity, power states, or bootloader/OTA integration that most production firmware actually needs.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
365
Forks
237
Language
C
License
Apache-2.0
Last commit
21 Oct 2026

// nearby

If example-application isn't quite it.

All repos →