-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Corbett Knowles edited this page Jun 21, 2026
·
1 revision
Welcome to the projects wiki! Curated reference of build systems, toolchains, RTOS options, and hardware/vendor resources for embedded Linux and embedded systems development. Maintained as a personal knowledge base and shared in case it's useful to others working across similar territory.
| Tool | Use Case | Link |
|---|---|---|
| Buildroot | Lightweight, fast, source-based embedded Linux build system. Great for minimal/custom distros, single-purpose devices, and full control over what's included. | gitlab.com/buildroot.org/buildroot |
| Yocto / Poky | More extensive layered build system, widely used in industry/vendor BSPs. Steeper learning curve, broader ecosystem support. | git.yoctoproject.org |
| OpenEmbedded Layer Index | Searchable index of Yocto BSP layers across vendors and boards. | layers.openembedded.org |
| RTOS | Notes |
|---|---|
| Zephyr | Growing fast in vendor/industry adoption; strong driver and SoC support, active development. |
| FreeRTOS | Mature, ubiquitous, simple. Often the first RTOS supported on new silicon. |
| Tool | Use Case |
|---|---|
| LLVM/Clang | github.com/llvm/llvm-project |
| crosstool-NG | Hand-build cross-toolchains outside of Buildroot/Yocto's bundled toolchain generation — useful for toolchain-level experimentation. github.com/crosstool-ng/crosstool-ng |
| Resource | Notes |
|---|---|
| Linux mainline device trees | Canonical reference for board hardware description (arch/*/boot/dts/). github.com/torvalds/linux
|
| U-Boot mainline | Bootloader source and board configs (configs/). github.com/u-boot/u-boot
|
| ARM Trusted Firmware (TF-A) | Secure-world firmware (BL1/BL2/BL31) for ARMv8-A platforms. github.com/TrustedFirmware-A/trusted-firmware-a |
| Resource | Notes |
|---|---|
| Kernel Self Protection Project (KSPP) | Tracks upstream Linux kernel hardening proposals and progress — good early signal for where kernel hardening is headed. |
Arch Linux linux-hardened |
Config-level kernel hardening lineage (no out-of-tree patches), maintained by GrapheneOS's Daniel Micay. |
| OWASP Embedded/IoT guidance | Broader methodology and checklists for embedded/IoT security, less code-focused. |
When working with new silicon, go directly to the vendor's own GitHub org rather than searching generally — official BSPs are usually better-maintained than third-party mirrors, and avoids landing on archived/dead repos.
- NXP: github.com/nxp-imx
- STMicroelectronics: github.com/STMicroelectronics
- Espressif: github.com/espressif
- Raspberry Pi: github.com/raspberrypi
| Resource | Notes |
|---|---|
| postmarketOS wiki device list | Broad ARM SBC/phone hardware database — useful for cross-referencing device tree and config details even outside the postmarketOS distro itself. |
For context when evaluating Windows as a target alongside Linux-based embedded work:
-
Windows IoT Core — discontinued (EOL 2023). Microsoft's BSP repos for this product line (
ms-iot/imx-iotcore,ms-iot/edk2, etc.) are archived/read-only. - Windows IoT Enterprise / Windows 11 — the active path for Windows on embedded hardware; effectively full Windows, with correspondingly higher storage/RAM requirements than a minimal Linux build.
- Windows on ARM (WoA) — primarily targets Qualcomm Snapdragon silicon; ARM SoC support outside Qualcomm (e.g. NXP i.MX) is limited.
- Windows on Raspberry Pi (WoR) — community-maintained UEFI path for running Windows 11 ARM64 on Raspberry Pi 4/5 class hardware.
This index is a living document and will be updated as the landscape changes and as new tools/resources are evaluated.