Lecture 3 — Module 1: What Yocto is (and is not)¶
Course: Yocto guide | Phase 2 — Embedded Linux, Yocto
Previous: Lecture 02 | Next: Lecture 04 — Module 2
1. The problem¶
Embedded products need an OS that is:
- Repeatable (same inputs lead to same enough outputs for your release process).
- Auditable (licenses, versions, patches known and recorded).
- Minimal where possible (fewer packages, fewer CVEs and smaller update payloads).
- Aligned to hardware (kernel, firmware, boot chain, drivers).
2. What the Yocto Project provides¶
Yocto Project is an umbrella and governance model. Practically, you work with:
- OpenEmbedded-Core (OE-Core) — base recipes, classes, and policies.
- BitBake — the task scheduler / build engine.
- Poky — a reference integration (OE-Core + BitBake + tooling) you can build and learn from.
Plain English: Yocto is not a Linux distro. It is a factory that can produce distro-like artifacts (images, packages, SDKs) from metadata.
3. Yocto vs Buildroot (decision guidance)¶
| Dimension | Yocto / OpenEmbedded | Buildroot |
|---|---|---|
| Philosophy | Layers, sharing metadata across products | Single-tree config, very direct |
| Package ecosystem | Large, community + vendor layers | Smaller default set; extensions possible |
| Learning curve | Steeper | Gentler |
| Multi-product reuse | Strong (layers, distros, configs) | Possible; often more manual |
| When vendors ship layers | Often the expected integration path | Less common (but not never) |
Neither is always better. If your silicon vendor maintains a mature Yocto layer, that often decides the default.
4. Lab 1 — Write your product requirements in Yocto terms¶
Answer in one page:
- Target hardware (SoC, machine name if known).
- Connectivity (Ethernet, Wi-Fi, USB gadgets, CAN, etc.).
- Storage layout (eMMC, NAND, NVMe, SD-only demo).
- Update strategy (A/B, single partition, package manager, image-based).
- Must-have userspace (containers or not, graphics or headless, real-time needs).
Done when: you can name what must be in the image vs what is nice to have.
Worked example (optional)¶
A full one-page-style answer for an edge AI camera on Jetson-class hardware (hardware, connectivity, storage, OTA, userspace, must vs nice) with Yocto mappings and file sketches: Lab 01 — Worked example (edge AI camera). Use it as a template; replace MACHINE names, layers, and packages with your BSP and release.
Previous: Lecture 02 | Next: Lecture 04 — Module 2