Total Engineering MCU Lab

Learn microcontrollers by playing

Choose a board. Each one has its own path with short lessons, self-checking challenges and mini-games. Program with blocks or in C code (and in MicroPython on the Pico) and watch the result on a virtual board, no wires needed.

★ 0your progress is saved in this browser

Every microcontroller is learned differently

A microcontroller is a complete computer on a single chip: processor, memory and pins to read sensors and drive actuators. They all share ideas (outputs, inputs, PWM, analog conversion, serial communication), but each family has its own personality, which is why each board here has its own path.

Arduino Uno and Nano

The 8-bit ATmega328P runs at 5 V and is very forgiving of beginner mistakes. Its 10-bit ADC turns 0–5 V into 0–1023 and six of its pins generate PWM. They are ideal for understanding pinMode, digitalWrite, buttons with pull-ups and the map() function. The Nano is the same chip in a breadboard format, with two extra analog-only inputs (A6 and A7).

Arduino Mega 2560

With 54 digital pins, 16 analog inputs and four serial ports, the Mega is for big projects: 3D printers, robots with many motors or LED panels. The step up here is not in concepts but in organization: for loops to go through many pins, logic with several sensors and dedicated serial ports.

ESP32

Two cores at 240 MHz, built-in Wi-Fi and Bluetooth, but 3.3 V pins that don’t tolerate 5 V. Its ADC is 12-bit (0–4095), PWM is generated by the LEDC peripheral with ledcAttach and ledcWrite, and ten pins detect the touch of a finger with touchRead. It is the star board of the Internet of Things.

STM32 Black Pill

An ARM Cortex-M4 at 100 MHz, the kind of chip used in industry. Pins are named by port (PA5, PC13) because each port is a 16-bit register. Understanding registers and timers (prescaler and ARR) is the bridge between Arduino and professional embedded programming.

Raspberry Pi Pico

The RP2040 has two cores, PWM on every pin GP0–GP28 and eight PIO state machines that can implement custom protocols. It is also the most popular board for learning MicroPython: in this lab you can write Python and see how it is translated into C before it runs.

Guided projects and certificate

Each path ends with four step-by-step projects: a traffic light with a pedestrian button, an HC-SR04 ultrasonic distance sensor with an alarm, a servo arm with a potentiometer and a 7-segment display counter. Each step checks itself and extends the previous program, as in a real project. When you complete everything you can print a practice certificate with your name.

How are the challenges checked?

Your program is compiled to JavaScript and runs on a simulated clock: one second of program time takes milliseconds. To check a challenge, the lab presses buttons and turns virtual knobs at exact moments and checks when each pin changed, what angle the servo had or what the serial monitor showed. Everything happens in your browser.

ESEN