EMB-101 · Embedded Linux & BSP · Practitioner
Yocto Project Fundamentals — full syllabus
BitBake, layers and recipes, from a first build to an image you would actually ship.
Who this course is for
Embedded software engineers who are about to own a Yocto build — and want to understand what BitBake is actually doing before their first real product image depends on it.
Prerequisites
- Solid Linux command line and shell basics
- Git for source and patch handling
- Having built a kernel or rootfs by hand at least once is helpful
Course outline
Day 1 — BitBake as a build engine
- The Poky layout: bitbake, oe-core, meta layers and where your work goes
- Metadata model: recipes, classes, includes and configuration files
- Tasks and dependencies: how bitbake decides what runs
- Parsing vs execution: where variables get their final values
- Reading tmp/work logs when a task fails
Day 2 — Layers and recipe anatomy
- Layer structure, priorities and bblayers.conf
- bbappend files and when a patch belongs in a layer vs upstream
- The recipe lifecycle: fetch, unpack, patch, configure, compile, install
- SRC_URI, checksums and licence fields
- Writing a recipe for a real piece of software from a tarball
Day 3 — Images and packages
- Package splitting: PACKAGES, FILES and what ends up where
- Image recipes, package groups and IMAGE_FEATURES
- MACHINE vs DISTRO vs image: which policy lives at which level
- Package feeds and formats (ipk, rpm, deb)
- SDK generation and building applications outside the tree
Day 4 — Speed and reproducibility
- Shared state cache and hash equivalence
- bitbake-diffsigs: finding why something rebuilt
- Pinning SRCREV and managing recipe revisions
- Build performance: parallelism, downloads mirror and sstate reuse
- Reproducible builds: what the project guarantees and what it does not
Hands-on labs
- Lab: Build core-image-minimal for qemuarm from a clean checkout, then trace one package through tmp/work from fetch to package
- Lab: Write a recipe for a supplied tarball, add it to an image and verify the files land where FILES says they should
- Lab: bbappend an existing recipe to change a configuration file, and prove with bitbake -e which layer won
- Lab: Force a rebuild you did not expect, then use bitbake-diffsigs to name the variable that changed
- Lab: Generate an SDK, install it in a fresh directory and cross-compile a test program against it
Capstone project
Starting from an empty conf directory, assemble a product-style build for a QEMU target: your own layer holding one new recipe and one bbappend, a custom image recipe, a package feed and an SDK — then delete tmp and rebuild, and deliver the layer repository, build manifest and before/after image hashes as the reproducibility evidence.
What you leave with
- A working Yocto build you assembled rather than inherited
- Fluency with bitbake, bitbake -e/-c and bitbake-layers for diagnosis
- Recipe and bbappend patterns that will pass review
- An sstate and signature-debugging method for phantom rebuilds
- A reproducibility checklist for your own product images
Upcoming dates
| Dates | Where | Seats | Early bird | Regular | |
|---|---|---|---|---|---|
| 15 Nov – 18 Nov 20264 full days | RiyadhIn person · KAFD Conference Centre | 12 of 14 | SAR 9,450until 16 Oct | ||
| 15 Nov – 18 Nov 20264 full days | Kuwait CityIn person · Al Hamra Tower | 7 of 14 | KWD 780until 16 Oct | ||
| 22 Nov – 25 Nov 20264 full days | MuscatIn person · Knowledge Oasis Muscat | 12 of 14 | OMR 970until 23 Oct | ||
| 29 Nov – 8 Dec 20268 half-days | Gulf bandLive online · 09:00–13:00 GMT+3 | 18 of 20 | US$1,800until 30 Oct | ||
| 30 Nov – 3 Dec 20264 full days | OttawaIn person · Kanata North Tech Park | 7 of 14 | CAD 3,430until 31 Oct | ||
| 30 Nov – 3 Dec 20264 full days | TorontoIn person · MaRS Discovery District | 12 of 14 | CAD 3,430until 31 Oct | ||
| 30 Nov – 9 Dec 20268 half-days | Europe bandLive online · 09:00–13:00 CET | 7 of 20 | US$1,800until 31 Oct | ||
| 7 Dec – 10 Dec 20264 full days | LondonIn person · Shoreditch Works | 7 of 14 | GBP 1,960until 7 Nov | ||
| 7 Dec – 16 Dec 20268 half-days | Americas bandLive online · 13:00–17:00 ET | 12 of 20 | US$1,800until 7 Nov | ||
| 14 Dec – 17 Dec 20264 full days | BerlinIn person · Factory Görlitzer Park | 12 of 14 | EUR 2,320until 14 Nov |
Book a seat, or bring this course to your team
Seats can be reserved online; private delivery runs on-site or live online, adapted to your stack.
Questions about fit or prerequisites? Email hello@kernelsystems.academy. To save this syllabus, print this page to PDF from your browser.