From electronics fundamentals to fabricated PCBs and real firmware: STM32/ESP32, RTOS, drivers and comms, on C++ and Python foundations, with the career/portfolio layer.
Electronics → microcontrollers & firmware → PCB design → a fabricated board running your own firmware.
How every lesson works
Each lesson runs the same seven-part structure: learning material, active recall, conceptual questions, practice problems, a Feynman explanation, error analysis, and a mini challenge, then a quiz you have to pass to mark it complete. Completed modules enter a spaced-repetition queue that asks you real questions at 1, 3, 7, 14, 30 and 60 days, and reschedules from what you actually get right.
Full syllabus
Every module, grouped the way the course is taught. Open a topic to read its modules.
TURN 1Foundations & Portfolio Builds71 modules
Phase 1 · Foundations
Python for Embedded Systems26
01Variables, types and arithmeticLESSON02Comparisons, booleans and if / elseLESSON03Loops: for and whileLESSON04FunctionsLESSON05Lists and arrays (buffers)LESSON06From scripts to firmware loopsLESSON07Data structures for embedded workLESSON08Files & CSV sample dataLESSON09Exceptions & error handlingLESSON10Classes & objects for device componentsLESSON11Modules & librariesLESSON12NumPy arraysLESSON13Vector operationsLESSON14Matrix fundamentalsLESSON15Random numbers & simulationLESSON16Reading sensors & timing the loopLESSON17Sensor data processingLESSON18State machines & device modesLESSON19Serial communicationLESSON20Logging dataLESSON21Plotting with MatplotlibLESSON22PROJECT: Simulated PWM thermal controllerPROJECT BUILD23Structuring large programsLESSON24PROJECT: UART sample loggerPROJECT BUILD25PROJECT: Debounced fault detectorPROJECT BUILD26Review & Retention // Python for Embedded SystemsREVIEW
C++ for Embedded Systems17
01The C++ development environmentLESSON02C++ essentials & the memory modelLESSON03Operators & expressionsLESSON04Functions in C++LESSON05References & const-correctnessLESSON06ArraysLESSON07Classes, RAII & pointersLESSON08Constructors, encapsulation & compositionLESSON09Operator overloadingLESSON10STL: strings, maps & iteratorsLESSON11Timing functionsLESSON12PROJECT: A reusable PID class in C++PROJECT BUILD13Serial communication in C++LESSON14Finite state machines in C++LESSON15PROJECT: Serial sensor readerPROJECT BUILD16PROJECT: Differential drive simulatorPROJECT BUILD17Review & Retention // C++ for Embedded SystemsREVIEW