Embedded Linux at a glance
- Choose embedded Linux when you need networking, a filesystem, a display stack, containers or a rich language runtime, which a microcontroller cannot economically provide.
- Yocto produces maintainable, reproducible images; Buildroot produces smaller, simpler ones faster. We recommend based on product lifetime and team.
- Many products combine both worlds: a Linux application processor plus a Cortex-M real-time co-processor, as on the STM32MP1.
- Security and updates must be designed in: a read-only root filesystem, signed updates and a long-term patching plan.
Yocto or Buildroot
| Yocto Project | Buildroot | |
|---|---|---|
| Strength | Layered, reproducible, package management and SDK | Simple, fast, small images |
| Best for | Long-lived products with multiple variants | Single-purpose devices and quick prototypes |
| Build time and complexity | Higher | Lower |
| Update story | Strong ecosystem (e.g. RAUC, Mender, SWUpdate integration) | Possible, more manual |
Typical hardware platforms
- NXP i.MX 6/8 and i.MX 93 application processors.
- STMicroelectronics STM32MP1/MP2 with a Cortex-A plus Cortex-M split.
- Raspberry Pi Compute Module for lower-volume industrial products.
- Allwinner, Rockchip and TI Sitara parts where cost or peripherals dictate.
Work we do
- Board bring-up: bootloader (U-Boot), device tree, DDR and power sequencing validation.
- Kernel and drivers: custom drivers for sensors, displays and industrial buses, kept close to mainline where possible.
- Image engineering: minimal, read-only root filesystems and a defined partition layout.
- Application integration: systemd services, watchdogs, logging and remote diagnostics.
- Update and security: A/B updates, secure boot, and a process for security patches.
Long-term maintenance
A Linux product is a commitment to patch for years. We document the build, pin versions, and set up a repeatable CI build so you can issue updates when a vulnerability is published. See IoT solutions and the gateway development page for typical deployments.
Sources and further reading
- Yocto Project — Documentation for building custom embedded Linux distributions.
- Buildroot — Manual and release notes for the Buildroot build system.
- The Linux Kernel documentation — Driver model, device tree and subsystem references.
Last reviewed: October 2026. Regulations and product availability change; confirm current rules with the issuing authority before you commit to a design.