All courses
Embedded track

Embedded systems, from your first blink to firmware you can ship

Arduino, ESP32, Raspberry Pi Pico and STM32: pins, timing, buses, motors, WiFi, registers and debugging, every lesson checked on a simulated board.

Free16 courses, 126 lessons, about 97 hours4 levels
Start at the first rungEmbedded on the Arduino Uno
The track

Zero to expert, one course at a time

Embedded systems are the computers inside things: the thermostat, the drone, the car door, the insulin pump. Learning them means learning two things at once, code and the hardware it controls, and this track teaches both together on boards the simulator runs cycle by cycle.

It starts on an Arduino Uno with no experience needed, then moves to the parts every real product uses: I2C, SPI and UART, motor drivers, WiFi and MQTT, then down to the registers, timers, interrupts and debugger underneath the Arduino functions.

The ladder

Every course, by level

Take them in order, or start on the rung that matches what you already know. Each course page lists every lesson.

Level 1

Start from zero

One board, a few pins and a sketch.

Level 2

Build real devices

Buses, motors, new boards and the network.

7 lessons 路 4 h 路 Arduino Uno R3

Talk to chips: I2C, SPI and UART

The three buses every sensor, screen and radio speaks, on the Uno: serial between two boards, I2C scans and shared buses, SPI screens and an SD card, the logic analyzer, and a weather station that uses them all.

Open the course
7 lessons 路 4 h 路 Arduino Uno R3

Motors and motion

DC motors on a driver, the H bridge inside it, servos, a stepper on an A4988, an encoder that measures what the motor did, and a 2WD robot car with ultrasonic eyes and line sensors.

Open the course
7 lessons 路 3 h 路 Raspberry Pi Pico

MicroPython on the Pico

Real Python on a Raspberry Pi Pico: blink and the REPL, buttons and if, loops and PWM, a knob on the ADC, lists and functions on an LED bar, an OLED on I2C, and a reaction game boss.

Open the course
7 lessons 路 4 h 路 ESP32 DevKit V1

Connected devices

WiFi, APIs, a web server, MQTT, ESP-NOW and BLE on the ESP32, and a device that keeps going when the network does not.

Open the course
Level 3

Go under the hood

A professional board, the registers, datasheets and real debugging.

6 lessons 路 2 h 路 Arduino Uno R3

Debug like an engineer

The multimeter, the oscilloscope, the logic probe and analyzer, Serial done right, and a method that finds any fault. Ends with a boss: three bugs in one circuit.

Open the course
6 lessons 路 5 h 路 Arduino Uno R3

Under the hood

Take the Arduino wrapper off: DDR, PORT and PIN, Timer 1 by hand, the vector table and interrupts, cycle-counted delays in a .S file, a bug read off a halt in the debugger, and a UART drawn by hand on a pin.

Open the course
7 lessons 路 6 h 路 Arduino Uno R3

Read datasheets and schematics

The skill every hardware job asks for: schematic symbols, a first page, absolute maximum ratings, timing diagrams, register maps and pinouts, each checked on real parts. Ends with a sensor brought up from its datasheet alone.

Open the course
Level 4

Expert

Control loops, real-time timing, low power and firmware that scales.

7 lessons 路 7 h 路 Arduino Uno R3

Control systems: PID

Feedback control on real physics: open and closed loops, P, I and D one at a time, tuning by the numbers, encoders, a balancing robot, and a motor that holds its speed whatever you throw at it.

Open the course
7 lessons 路 6 h 路 Arduino Uno R3

Scheduling and RTOS

From a scheduler written by hand to FreeRTOS on the Uno: tasks and priorities, time slicing on the logic analyzer, queues, mutexes and priority inversion, starvation and the watchdog, and a four-task device.

Open the course
7 lessons 路 6 h 路 Arduino Uno R3

Low power products

Make a battery last years: where an Uno鈥檚 current goes, sleep modes and wake sources, a power budget on a bare chip, measuring with a meter and an INA219, battery life checked against a draining cell, and a coin cell node.

Open the course
7 lessons 路 7 h 路 Arduino Uno R3

Firmware architecture

How a whole device is put together on the Uno: a scheduler and state machines, ISRs that only record, drivers behind interfaces, checked settings in EEPROM, error codes and the watchdog, safe updates, and a layered multi-sensor boss.

Open the course
Outcomes

What you will be able to do

  • Read inputs and drive outputs without blocking, using millis() timing and interrupts.
  • Wire and code I2C, SPI and UART devices, and read every byte on a logic analyzer.
  • Drive DC motors, servos and steppers, and connect a device to WiFi, MQTT and BLE.
  • Set up ports and timers by hand, read a datasheet and find faults with a meter and a scope.
Careers

Where this track leads

The jobs these skills are used in every day, with what each one does and how to get there.

Topics

Looking for something specific?

Each of these starts you on the right course and lesson for one subject.

I2C, SPI and UART

I2C, SPI and UART: talk to chips

The three buses every sensor, screen and radio speaks. Scan a bus, share it, run two screens on one clock, log to SD, then read every byte on a logic analyzer.

Start here
Questions

About the embedded track

What is embedded systems programming?

Writing the code that runs on a small computer inside a device, usually a microcontroller, where the program talks straight to pins, timers and buses rather than to an operating system.

Which board should I learn embedded on first?

The Arduino Uno. It is simple enough to understand completely, and everything you learn on it, from pins and timing to buses and registers, carries over to the ESP32, the Pico and STM32 later in the track.

Do I need real hardware?

No. Every lesson runs on a simulated board in your browser, and the same wiring and code work on a real board when you want to build it.

How long does the embedded track take?

Each course takes a few hours to a dozen. Most people can finish the first two rungs in a few weeks of evenings, and the later rungs go as deep as you want to take them.

Tracks

The other tracks

7 courses, 56 lessons, about 41 hours

Coding track

Python and C++ from your first print to classes, tests and state machines. Every program runs on a simulated board, so a bug is something you can see.

See the track
11 courses, 102 lessons, about 60 hours

Electrical track

Current and voltage you can see, then transistors, op-amps, filters, power and PCBs. Every circuit runs in a real circuit simulator in your browser.

See the track
21 courses, 141 lessons, about 98 hours

Maker track

Follow the starter kit you already own, then build a claw machine, a balance bot, a handheld console or an LED cube, each a short course checked by the simulator.

See the track
15 courses, 107 lessons, about 82 hours

Robotics track

Motors, servos, sensors and PID control loops, then a rover, a claw machine and a balance bot, every lesson checked on a simulated board.

See the track