Embedded Systems
02 02 00 oled display
Initializing search
Home
Embedded Systems
Linux in Embedded Systems
Embedded Systems
Home
Embedded Systems
Embedded Systems
Tutorials
Tutorials
Robot Unboxing
GPIO & Sensors
Reading the Analog World
Pixels on a Tiny Screen
Timing fundamentals
Make It Move
Seeing the Line
Precise Turns
State Machines
Inside the Box
Designing Your System
Project: Your Robot
Demo Day
Reference
Reference
Missing References & Cross-Course Connections
Deployment Guide
mpremote Cheatsheet
01 fundamentals
01 fundamentals
Reference: The C Standard Library in Embedded Systems
CPU Limits and DMA: When Software Isn't Fast Enough
Execution Models in Embedded Systems
Why MicroPython is Slow: From Silicon to Interpreter
01 getting started
01 getting started
Getting Started with MicroPython
Plotting Data on Your Computer
Introduction to MicroPython
Lab Setup
Python Basics for MicroPython
Typical Errors Using MicroPython on Pico2
02 digital io
02 digital io
Addressable LEDs
GPIOs
picobot API Reference (Robot Class)
PWM
03 sensors
03 sensors
02 02 00 oled display
ADC Basics
Battery Voltage
IMU (Inertial Measurement Unit)
Light Sensor
Optocoupler-Based Tracking Sensor
Core Temperature Sensor
Ultrasonic Distance Sensor
04 control theory
04 control theory
Proportional Control (P-Control)
04 display
04 display
LED Panel & Framebuffer Graphics
OLED Display Graphics
04 hardware
04 hardware
Robot Electronics Overview
05 motors
05 motors
Line Following Control
H-Bridge and Motor Control
06 software
06 software
Software Architectures
Embedded Software Architecture — From MicroPython to AUTOSAR
Industrial Software Architectures
Interrupts
IR Remote Control
State Machines
Testing Embedded Systems
07 data analysis
07 data analysis
Analyzers Quick Reference
Distance Measurement Methods
Motor System Identification
Data Analysis for PicoBot
Extras
Extras
Common Mistakes
Embedded Thinking Cheatsheet
Glossary
Mental Models Map
Track Specification
Hardware Troubleshooting Guide
Control theory
Control theory
Signal Filtering
Line tracking hands on
Obstacle Avoidance
Hardware
Hardware
PicoCar Hardware Reference
Micropython
Micropython
Debugging MicroPython Code: Best Practices
MicroPython Style Guide
What is UF2 and Why Use It with the Pico2 and MicroPython?
Pico
Pico
Firmware Update
Signal processing
Signal processing
Signal Processing Basics
Robot Data Pipeline
Sound Detection and Beat Recognition
Software
Software
CPU Usage
Real-Time Operating Systems
Advanced
Advanced
Advanced 1: Sensor Theory
Advanced 2: Real-Time Concepts
Advanced 3: Control Theory
Advanced 4: Sensor Fusion
Advanced 6: Communication & Data
Advanced 5: Software Architecture
Data-Driven Methods
Advanced 8: Abstraction Layers
Advanced 9: Encoders & Speed Control
ToF Lidar Radar
Advanced 11: Motion Calibration
TFT Robot Eyes
Advanced 13: Encoder Fundamentals
Advanced 14: Drive Straight
Advanced 15: Drive to Distance
Advanced 16: Speed Control Lab
Advanced 17: Precise Turns with Encoders
Advanced 18: Closed-Loop Line Following
Slides
Slides
Lecture 01
Lecture 02
Lecture 03
Linux in Embedded Systems
Linux in Embedded Systems
Semester Project Ideas
Semester Lab Track
Reference
Reference
Boot Flow and Architectures
Why Build Your Own Linux?
Camera and Display Interfaces
Device Tree and Drivers
DMA Fundamentals
What Is Embedded Linux?
Graphics Stack in Embedded Linux
Industrial I/O (IIO) Subsystem
Linux Input Subsystem
How Linux Works
Machine Learning and Signal Processing for Embedded Systems
IoT, Networking, and Security
Performance Profiling for Embedded Linux
Qt Quick for Embedded Linux
Real-Time Graphics and Display Pipelines
Real-Time Systems Design
Reliability, Updates, and Watchdogs
Serial Bus Interfaces: I2C, SPI, I2S
Signal Processing for Embedded Systems
Software Architecture for Embedded Linux
Tutorials
Tutorials
Acoustic Keystroke Recognition
Audio Pipeline Latency — Measure, Understand, Optimize
Audio Visualizer — Guided Challenges
1D Ball Balancing (Servo + TOF Sensor)
Ball Position Detection (Camera + OpenCV)
Shell Scripting for Embedded Linux
BMI160 SPI Kernel Driver
Boot Timing: Measure, Modify, Optimize
Buildroot: Minimal Linux Image
Buildroot: Custom Image with SDL2 and SPI
BUSE LED Matrix Display — Hardware Reference
Camera Pipeline: Capture, Process, and Display
Writing a Custom IIO Driver
Data Logger Appliance (Read‑Only Root + Logging)
Debugging Embedded Linux
Display Applications: OpenCV + Input Events
Display Setup and Testing
Doom on Raspberry Pi
DRM/KMS Test Pattern (No Window Manager)
DSI Display (7" Official Raspberry Pi Panel)
ELF and Program Execution
How to Enable I2C on Raspberry Pi
Exploring Linux
Framebuffer Basics (No Window Manager)
I2S Microphone Audio Visualizer
IIO Buffered Capture
IMU as Controller Input (Tilt-Controlled 3D)
Linux Input Events
Jitter Measurement and RT Comparison
Kiosk Service: Auto‑Start, Console Management & Boot Splash
Framebuffer Driver Tutorial
Level Display: Python Prototype
Level Display: SDL2 + DRM/KMS (Tear-Free)
How to Implement an I2C Device Driver
MCU Real-Time Controller (Pico 2 W + Linux Supervisor)
Security Audit and Hardening
Network Sockets in C
OLED Display
OLED Framebuffer Driver
2D Plate Balancing (Servos + Camera)
Pong on Framebuffer
PREEMPT_RT: Latency Measurement
Processes and IPC in C
Qt App Launcher
Qt + EGLFS Dashboard
SDL2 Dashboard (No Compositor)
SDL2 + OpenGL ES Rotating Cube
SDL2 Touch Paint (Responsiveness Test)
SDL2 UI Patterns for Embedded Displays
Single‑App Fullscreen UI (No Window Manager)
SPI TFT Display (3.5" HAT)
SPI DMA: From Polling to Hardware Acceleration
Logging into Raspberry Pi via SSH on Local Network
Threads and Synchronization in C
WS2812B LED Wall Display
Ideas
Ideas
Boot process
Imu level hdmi app
Slides
Slides
Lecture01 slides.marp
Lecture02 slides.marp
Lecture03 slides.marp
Lecture04 slides.marp
Lecture05 slides.marp
Lecture06 slides.marp
Lecture07 slides.marp
Lecture08 slides.marp
Lecture09 slides.marp
Lecture10 slides.marp
Lecture11 slides.marp
02 02 00 oled display
Back to top