Skip to content

Lab Index

This page lists the hands-on labs used by the Embedded Linux Learning site.

Naming Convention

Lab files use the dayXX-topic-name.md format. Markdown page titles use the DayXX - Topic Name format so the filename, page title, sidebar title, and URL stay consistent.

Labs

Day Lab Path
Day 02 Day02 - Device List Exploration labs/day02-device-list.md
Day 03 Day03 - Boot Process Analysis labs/day03-boot-analysis.md
Day 04 Day04 - Device Tree Overlay labs/day04/day04-device-tree-overlay.md
Day 04 Day04 - Device Tree Exploration on Raspberry Pi labs/day04/day04-device-tree.md
Day 05 Day05 - Kernel Module Hello World labs/day05/day05-kernel-module.md
Day 07 Day07 - Cross-Compile Kernel Module for Raspberry Pi 5 labs/day07-cross-compile.md
Day 08 Day08 - Device Model Exploration labs/day08-device-model-explore.md
Day 09 Day09 - GPIO LED Driver labs/day09/day09-gpio-driver.md
Day 11 Day11 - Multi-GPIO IRQ Driver labs/day11/day11-multi-gpio-irq.md
Day 12 Day12 - Event-Driven GPIO Driver with poll() labs/day12/day12-poll-driver.md
Day 13 Day13 - GPIO IRQ Debounce with Workqueue labs/day13/day13-debounce-workqueue.md
Day 14 Day14 - Event-Driven GPIO Driver labs/day14/day14-event-driver.md
Day 15 Day15 - User-Space Event Loop and poll() labs/day15/day15-labs.md
Day 16 Day16 - IOCTL Control Plane labs/day16/day16-ioctl-control-plane.md
Day 17 Day17 - sysfs Control Plane labs/day17/day17-sysfs-control-plane.md
Day 18 Day18 - Blocking I/O and Event-Driven Driver labs/day18/day18-blocking-io.md
Day 19 Day19 - I2C Sensor Driver labs/day19/day19-i2c-driver.md
Day 20 Day20 - I2C Driver to hwmon labs/day20/day20-hwmon.md
Day 21 Day21 - hwmon Driver Cache Mechanism labs/day21/day21-cache-driver.md
Day 22 Day22 - I2C hwmon Driver with Polling Mode labs/day22/day22-myi2c-polling.md
Day 23 Day23 - I2C Sensor Interrupt labs/day23/day23-i2c-interrupt.md
Day 24 Day24 - Hybrid Mode Stress Test labs/day24/day24-hybrid-test.md
Day 25 Day25 - Hybrid Robustness and Update Coalescing labs/day25/day25-hybrid-robustness.md
Day 26 Day26 - Sensor Core and Bus Layer Refactor labs/day26/day26-core-bus-refactor.md
Day 27 Day27 - SPI Sensor Driver labs/day27/day27-spi-driver.md
Day 28 Day28 - SPI IRQ Integration labs/day28/day28-spi-irq-integration.md
Day 29 Day29 - UART and TTY Subsystem labs/day29/day29-uart-tty.md
Day 31 Day31 - UART Debugging labs/day31-uart-debugging.md
Day 33 Day33 - Minimal IIO Driver labs/day33/day33-minimal-iio-driver.md
Day 34 Day34 - IIO I2C Multi-Channel Driver labs/day34/day34-iio-i2c-multi-channel-driver.md
Day 35 Day35 - DRDY GPIO IRQ Integration labs/day35/day35-drdy-gpio-irq.md
Day 36 Day36 - IIO Triggered Buffer labs/day36/day36-iio-trigger-buffer.md
Day 37 Day37 - IIO FIFO Mode labs/day37/day37-iio-fifo.md
Day 38 Day38 - IIO Sysfs Control labs/day38/day38-iio-sysfs-control.md
Day 39 Day39 - IIO Capability Exposure labs/day39/day39-iio-capability-exposure.md
Day 40 Day40 - Acquisition Mode Control labs/day40/day40-mode-control.md
Day 41 Day41 - IIO Control Plane v3 Integration labs/day41/day41-iio-control-plane-v3-integration.md
Day 42 Day42 - IIO Timestamp, FIFO, and Scan Mask labs/day42/day42-iio-timestamp-fifo.md
Day 43 Day43 - GPIO Button Input Driver labs/day43/day43-input-driver.md
Day 44 Day44 - Input Userspace Application labs/day44/day44-input-userspace.md
Day 45 Day45 - TCP Server with poll() and epoll() labs/day45-46/day45-network-socket.md
Day 47 Day47 - Multi-Message TX Queue labs/day47/day47-multi-message-tx-queue.md
Day 48 Day48 - epoll and timerfd Idle Timeout labs/day48-49/day48-epoll-timerfd.md
Day 49 Day49 - signalfd and epoll Graceful Shutdown labs/day48-49/day49-signalfd-epoll.md
Day 50 Day50 - Pollable Character Driver with Event Queue labs/day50/day50-pollable-char-driver.md
Day 51 Day51 - Timer-Based Pollable Event Driver labs/day51/day51-timer-pollable-driver.md
Day 52 Day52 - fasync, SIGIO, and eventfd Integration labs/day52/day52-fasync-sigio-eventfd.md
Day 53 Day53 - UNIX Domain Socket IPC labs/day53/day53-unix-domain-socket-ipc.md
Day 54 Day54 - UNIX Domain Socket Advanced IPC labs/day54/day54-unix-domain-socket-advanced-ipc.md
Day 55 Day55 - SCM_RIGHTS File Descriptor Passing labs/day55/day55-scm-rights-fd-passing.md
Day 56 Day56 - POSIX Shared Memory IPC labs/day56/day56-posix-shared-memory-ipc.md
Day 57 Day57 - POSIX Message Queue IPC labs/day57/day57-posix-message-queue-ipc.md
Day 58 Day58 - POSIX Semaphore IPC labs/day58/day58-posix-semaphore-ipc.md