Detailed content
🔁 What is a robot: sense, think, act
A robot is a machine that perceives its surroundings, decides what to do, and acts on the world, on its own and in a loop. It measures something (the distance to a wall), compares it with a goal (not to crash), and moves something (turns its wheels). Then it measures again, because the world has changed. This cycle repeats dozens or hundreds of times per second.
🌱 New here?
A sensor is the component that turns something in the world (light, distance, tilt) into an electrical signal the program can read. An actuator does the opposite: it receives a signal and produces movement, light, or sound (motor, servo, LED, buzzer). The controller is the “brain” that runs the program in between, like the ESP32 you’ll use in Track 1.
How to read this map: follow the green arrows from left to right (measure → decide → move), then follow the cyan arrow back. That return loop is what separates a robot from a remote-controlled toy: it checks the result of its own action.
✓ It’s a robot
- ✓A vacuum that avoids the sofa on its own.
- ✓A car that follows a black line on the floor.
- ✓An arm that picks up the part where the camera found it.
✗ Not a robot (yet)
- ✗Remote-controlled car: you make the decisions.
- ✗Fan with a timer: it acts, but doesn’t sense anything.
- ✗Digital thermometer: it senses, but doesn’t act.
Why learn this
Every project in this course, from the cardboard rover to the AI arm, uses the same cycle with different parts. When something doesn’t work, you’ll ask, “Is the problem with sensing, thinking, or acting?” and narrow down the fault before opening the code.
Key concepts
🌍 Robots in the real world in 2026
Most robots working today are unassuming: arms that weld cars, carts that carry boxes in warehouses, and vacuums that map rooms. What’s new in recent years is that affordable open-source arms, like the SO-101, and AI models that learn by demonstration have moved out of the lab and become accessible to people with a 3D printer. Humanoids show up a lot in videos, but they’re still expensive and work in controlled pilot programs.
How to read this map: the green dots are already at work every day in factories and homes. The cyan dots show where researchers and makers are working now. The humanoid’s dashed outline indicates that you’re more likely to see it in a demonstration than doing routine work.
Arms that weld, paint, and assemble. The cobots (collaborative robots) work alongside people, with limited force and the ability to stop when touched.
Vacuums and lawn mowers with LiDAR or a camera map the home and return to their charging base on their own.
The AMRs (autonomous mobile robots) carry shelves and boxes in warehouses, navigating with maps, as you’ll do in Track 4.
The SO-101 (printed parts and servos), paired with Hugging Face’s LeRobot, learns tasks by watching you demonstrate them. It’s at the heart of Track 5.
💡 Watch out for hype
A video of a robot making coffee may have been sped up, controlled by someone off camera, or repeated until it worked. Before you’re impressed, look for three things: actual speed (1x), stated autonomy (no one controlling it) and success rate (how many times it worked out of ten).
Why learn this
Knowing where robotics really stands helps you choose projects that work and avoid spending money on promises. The same building blocks you’ll put together (distance sensor, motor with encoder, camera with object detector, map) are inside the vacuum and warehouse robot.
Key concepts
🧭 The course roadmap and how to study what you need
The course has six tracks. The first five build on each other, each ending with a working robot; the sixth is for people who will teach. There’s no set number of hours or required order: start with the track that solves your problem today, and return to the fundamentals whenever you need a part you haven’t learned about yet.
How to read this map: the gray arrows show the natural sequence from T1 to T5, from LED to AI-powered robot. The dashed cyan arrows show entry points for different backgrounds: if you already know Arduino, you can start at T2 or T3; if you’re going to teach, go straight to T6, which is outside the sequence.
How to study a module (a routine that works)
Read the diagram and its caption
Each concept has a figure with a “How to read” guide. If you understand the figure, you’ve understood the topic.
Simulate before you build
Paste the code into Wokwi (topic 6). Making a mistake in the simulator won’t burn out a component.
Build it and check “how to verify”
Every code sample shows what should appear in the Serial Monitor or on the robot. If it doesn’t, go back to the figure.
Mark as read and take notes
The “Mark as read” button and your notes are saved in your browser. “My journey” shows where you left off.
🌱 New here?
Select any passage in this text: a menu appears so you can highlight in color or add a note. If a topic is confusing, click I have a question; it will go into your questions list in “My journey,” and you can export everything in a file to take to your teacher.
Why learn this
People who try to learn robotics “from beginning to end” often get stuck in theory before they see anything move. Learning on demand turns that around: you start with the robot you want to build and learn only the electronics, code, and AI it requires.
Key concepts
🧠 Microcontroller vs. computer: ESP32, Pi 5, or Jetson?
A robot’s “brain” can be one of two types. A microcontroller, such as the ESP32, is a small chip that runs a single program as soon as it gets power: it starts up in less than a second, uses little battery power, and responds to sensors at the right time. A single-board computer, such as the Raspberry Pi 5, runs a full operating system (Linux), with a camera, network, Python, and AI, but takes longer to start and uses more power.
🌱 New here?
GPIO are the board’s general-purpose pins: each one can turn on an LED or read a button. Real time means responding within a guaranteed time limit, such as stopping the motor at exactly the right millisecond. TOPS (trillions of operations per second) measures how many AI calculations an accelerator can perform; the higher the number, the faster it runs vision models.
How to read this map: Start at the top and follow the question that describes your robot. The cyan line below reminds you that this isn’t an either-or choice: in robots on Learning Paths 3 to 5, the Raspberry Pi (or Jetson) does the thinking, while an ESP32 continues to handle the motors and emergency stop.
| Board | Best for | Watch out for |
|---|---|---|
| ESP32 DevKit / ESP32-S3 | motors, sensors, Wi-Fi and Bluetooth, battery. The S3 has more memory and can be used for a camera and small-scale AI. | 3.3 V logic: connecting 5 V directly to an input pin can burn it out. |
| Raspberry Pi 5 | camera, OpenCV, YOLO26, ROS 2, voice. Supports the AI HAT+ to accelerate AI. | needs a powerful power supply and a proper shutdown (don’t yank the cable). |
| Jetson Orin Nano Super | heavy vision processing and larger models running locally. | much more expensive than the Pi (prices went up in 2026) and higher power consumption. |
Why learn this
Choosing the wrong board can be costly: a Raspberry Pi used to blink an LED wastes battery; an ESP32 alone can’t run a modern object detector. Follow the rule “the computer thinks, the microcontroller controls” to build robots that can grow without rebuilding everything.
Key concepts
🧰 The starter kit, piece by piece
The robot in Learning Path 1 is a two-wheel rover that moves on its own and avoids obstacles. It uses just a few parts, all easy to find in Brazil, and each one corresponds to a part of the sense-think-act cycle. Buy them gradually: modules 1.1 to 1.3 work with just the simulator, or with the ESP32 and a few LEDs.
How to read this map: The front of the robot is at the top of the figure. Cyan = sense (ultrasonic and infrared), green = think and command (ESP32 and driver), gray = act (motors and wheels), amber = power. Every part you buy falls into one of these four colors.
| Part | What it does | Approx. range* |
|---|---|---|
| ESP32 DevKit (or ESP32-S3), USB-C | the brain: Wi-Fi, Bluetooth, PWM | R$ 35 a 110 |
| Breadboard + jumper wires | build a circuit without soldering | R$ 25 a 45 |
| LEDs + resistors (220 Ω, 1 kΩ, 10 kΩ) | first tests and signals | R$ 15 a 30 |
| HC-SR04 + 2 IR sensors | distance and line on the floor | R$ 20 a 45 |
| 2 TT motors with wheels + caster wheel | rover drive | R$ 30 a 60 |
| TB6612FNG or DRV8833 driver | lets the ESP32 control the motors | R$ 12 a 35 |
| 4×AA (NiMH) battery holder or 2×18650 with BMS | motor power | R$ 40 a 100 |
| Cardboard, MDF, or acrylic chassis | holds everything in place | R$ 0 a 60 |
* Reference prices in Oct/2026, totaling R$ 200 to R$ 400 for the complete kit. Check before buying: prices vary widely by store, shipping, and exchange rate.
✓ Buy this
- ✓TB6612FNG or DRV8833 driver: efficient and compatible with the ESP32’s 3.3 V logic.
- ✓Rechargeable NiMH batteries or 18650 cells with a protection board (BMS).
- ✓USB-C cable that transfers data, not just power.
- ✓Continuous-rotation servos, if you’d prefer them to TT motors.
✗ Avoid this
- ✗Square 9 V battery for the motor: it delivers little current and runs out in minutes.
- ✗L298N driver: still sold, but it loses about 2 V as heat.
- ✗“37 sensors” kits: most of them end up in a drawer.
- ✗Standard servo (180°) as a wheel: it doesn’t rotate continuously.
⚠️ Charging-only cable
The most common mistake in the first lesson: the board lights up, but the computer doesn’t recognize it. In nine out of ten cases, the USB cable only supplies power. Change the cable before reinstalling any software.
Why learn this
Knowing what each part is for avoids two frustrations: spending money on components you won't use and building a robot that won't move because the power supply or driver can't handle the motors. The kit above covers all of Track 1 and much of Track 2.
Key concepts
💻 Start without hardware: Wokwi and workbench safety
O Wokwi (wokwi.com) is a free browser-based simulator: you build a virtual ESP32, connect LEDs, sensors, and servos, paste in the code, and press play. It runs the same program that would run on the real board. It's the fastest way to make your first "blinking LED" today, before your kit arrives.
🌱 New here?
A sketch is the Arduino-style program: the function setup() runs once when the board powers on, and loop() repeats forever. The Serial Monitor is the window where the board writes text messages for you. The resistor limits the current so the LED doesn't burn out; the LED has a correct orientation: the long leg (anode) goes toward the pin, and the short leg (cathode) goes to GND, which is the negative terminal.
How to read this map: follow the green wire from GPIO 2 to the resistor (amber zigzag) and the LED (red triangle, with its point facing the short leg). The cyan wire completes the circuit at GND. Without a return path, nothing lights up.
Step by step in Wokwi
Create the project
At wokwi.com, click "ESP32" and choose the Arduino model (the C++ sketch). You don't need an account to try it.
Build the circuit
Click the "+" button to add an LED and a resistor. Connect them as shown in the figure: GPIO 2 → resistor → LED's long leg; short leg → GND. Click the resistor and set it to 220 Ω.
Paste in the code and press play
Delete the contents of sketch.ino, paste in the block below, and click the green button to start the simulation.
Goal: make the LED blink once per second and count the blinks in the Serial Monitor. It works the same in Wokwi and on a real ESP32 (the "esp32" 3.x package in Arduino IDE 2.x).
// Blink LED: first program in the course (ESP32, esp32 3.x package)
// Turns on the GPIO 2 LED for half a second, then turns it off for half a second
// and counts the blinks in the Serial Monitor.
const int PINO_LED = 2; // GPIO 2: external LED (and the blue LED on many DevKits)
const int TEMPO_MS = 500; // half a second on, half a second off
unsigned long piscadas = 0;
void setup() {
Serial.begin(115200); // Serial Monitor speed
pinMode(PINO_LED, OUTPUT); // the pin will send a signal (output)
Serial.println("INEMA Robotics: LED blink ready");
}
void loop() {
digitalWrite(PINO_LED, HIGH); // on: 3.3 V at the pin
delay(TEMPO_MS);
digitalWrite(PINO_LED, LOW); // off: 0 V at the pin
delay(TEMPO_MS);
piscadas++;
Serial.print("Blinks: ");
Serial.println(piscadas);
}
How to check
- ✓The LED turns on and off once per second.
- ✓The Serial Monitor shows "INEMA Robotics: LED blink ready" and then "Blinks: 1", "Blinks: 2"...
- ✗LED is off while the counter keeps going? The LED is reversed: swap its legs.
Challenge (PWM API 3.x): instead of blinking, make the LED "breathe" by gradually increasing and decreasing its brightness. In version 3.x, ledcAttach(pin, frequency, bits) sets up the pin, and ledcWrite(pin, value) takes the pin itself. If an older tutorial uses PWM functions with a separate "channel," it's for API 2.x and no longer compiles.
// LED that "breathes" using PWM (ESP32, esp32 3.x package)
const int PINO_LED = 2;
void setup() {
Serial.begin(115200);
ledcAttach(PINO_LED, 5000, 8); // 5 kHz, 8 bits: brightness from 0 to 255
Serial.println("PWM ready on GPIO 2");
}
void loop() {
for (int v = 0; v <= 255; v += 5) { ledcWrite(PINO_LED, v); delay(15); }
for (int v = 255; v >= 0; v -= 5) { ledcWrite(PINO_LED, v); delay(15); }
}
How to check: the LED fades on and off smoothly, without abrupt blinking, about once every 1.5 seconds; the Serial Monitor shows "PWM ready on GPIO 2".
Workbench safety (from day one)
✓ Do
- ✓Disconnect the battery before touching any wires.
- ✓Test motors with the robot raised and its wheels off the ground.
- ✓Connect all GND pins together (ESP32, driver, and battery).
- ✓Check the polarity (+ and −) twice before powering up.
✗ Don't
- ✗Power a motor from the ESP32's 3V3 pin: it can't handle the current.
- ✗Connect 5 V to an ESP32 input pin (its logic voltage is 3.3 V).
- ✗Let the battery's two terminals touch: a short circuit gets hot and can catch fire.
- ✗Leave a lithium battery charging unattended.
💡 A teaching tip
Save your Wokwi project with a free account and keep the link. In Module 1.3, you'll open this same sketch in Arduino IDE 2.x and upload it to the real board; comparing the two shows that the simulator and the hardware run the same code.
Why learn this
Simulating first takes away the fear and cost of mistakes: you learn about pins, resistors, and code without risking damage. The safety habits you build with an LED are the same ones that will protect you when you're working with motors, lithium batteries, and a moving robotic arm.
Key concepts
✅ Module summary
To go further
- Wokwi documentation — browser-based ESP32 simulator
- Arduino-ESP32 (Espressif) — official reference for package 3.x
- Migration guide 2.x → 3.0 — why older tutorials don’t compile
- Arduino IDE 2.x — the tool from module 1.3
- Raspberry Pi documentation — for when you reach Trail 3
Next module
1.2 · Essential electronics: voltage, current, resistors, and Ohm’s law without the struggle.