Skip to content
Libre Computer
Platform

Schedule

Week by week

The same thirteen modules fit a 10-week quarter or a 14-week semester. The semester does not add topics; it gives the hardest ones a second lab.

10-week quarter outline

Two lectures and one three-hour lab a week. Each lab's objective, parts and deliverables are on the students' labs page.

WeekLecture topicsLab
1What an embedded system is; microcontroller vs embedded Linux; OS images, checksums and boot media; the serial console and the shell. Module 0Lab 1: First boot
2What a board is made of: the system-on-chip, memory, storage, clock and I/O; first power-on: regulators, rails, sequencing, reset. Modules 1 and 2Lab 2: Board anatomy and power rails
3The boot ROM: boot-media order, USB boot; why the first stage runs from on-chip SRAM. Modules 3 and 4Lab 3: Boot ROM and the SRAM stage
4Memory bring-up: timings, training, size detection; exception levels; the secure monitor and U-Boot; the memory map. Modules 5 and 6Lab 4: Memory and the bootloader
5UEFI and generic distributions; the kernel boot: device tree, driver probe, initramfs, root filesystem, init and systemd. Modules 7 and 8Lab 5: UEFI and Linux boot
6The device tree and pin multiplexing; overlays; GPIO: the electrical limits of a 3.3 V header, pull-ups, edges; libgpiod; latency in a general-purpose OS. Modules 9 and 10Lab 6: Device tree and GPIO
7I2C: addressing, transactions, register maps. SPI: modes and chip select. Decoding buses on a logic analyser. Module 10Lab 7: I2C and SPI
8UART: framing, baud rate, flow control. Drivers: the kernel driver model, user space vs kernel space, a minimal kernel module. Modules 10 and 11Lab 8: UART and a driver
9Putting it together: PWM, thermals, watchdogs and read-only root filesystems, recovery, security basics. Module 12Lab 9: Project build and recovery
10Project presentations; where embedded Linux goes next: Yocto and Buildroot, real-time Linux, contributing upstreamLab 10: Project demo
FinalsNoneProject report and repository due

14-week semester outline

The semester version covers the same modules. The extra weeks give the hardest topics a second lab instead of adding new material.

WeeksContent
1–2Flash and first boot, plus a second lab on the shell, images, checksums and flashing from a desktop PC
3Board anatomy and power rails
4Boot ROM and the SRAM stage
5–6Memory bring-up, then the bootloader, each with its own lab; the second builds U-Boot for the kit board from source
7UEFI and Linux boot
8–9Device tree, then GPIO, each with its own lab; the GPIO lab adds interrupts, PWM and a real-time comparison against a microcontroller
10I2C and SPI
11–12UART, then the driver, each with its own lab; the kernel module becomes required
13–14Project build with the checkpoint and the boot-recovery exercise and its runbook (lab 9), then the demo (lab 10)
FinalsProject report and repository due