← Arduino program
Advaslearning Hub · Curriculum reference

Arduino — Full Lesson Plan

A 4-level Arduino journey for ages 10–16, from your first blinking LED to IoT robots and the Arduino Certification exam.

All levelsLevel 1 · FoundationLevel 2 · IntermediateLevel 3 · AdvancedLevel 4 · Cert Prep
192
Lessons written
4
Levels
38
Projects & games
🛠️ Project📝 Exam prep🏆 Capstone
Level 1 · Foundation

First circuits, first code

48 lessons72 hoursAges 10–12🗺️ Syllabus↗ Open lessons
CodeLessonTypeMilestone
AA · Welcome to Arduino6 lessons
ARD-L01-01What Is Arduino?Tour the UNO board, learn what microcontrollers do and why they matter.
ARD-L01-02Install the IDE & BlinkSet up the Arduino IDE, plug in the board, upload your very first sketch.
ARD-L01-03Anatomy of a SketchUnderstand setup() and loop() and the lifecycle of every program.
ARD-L01-04Breadboard LiteracyHow rails and rows connect, polarity habits and safe handling of parts.
ARD-L01-05Ohm's Law for KidsVoltage, current and resistance explained with everyday analogies.
ARD-L01-06Reading Resistor Colour CodesDecode 4-band resistors with a chart and a multimeter check.
BB · Digital Output9 lessons
ARD-L01-07Your First External LEDWire an LED with a current-limiting resistor on a breadboard.
ARD-L01-08digitalWrite & HIGH/LOWTurn any pin on and off and watch a real circuit respond.
ARD-L01-09Variables in ArduinoStore pin numbers and values in int and const int.
ARD-L01-10Multiple LEDs at OnceWire three LEDs and blink them in sequence.
ARD-L01-11The for LoopIterate through pins Knight-Rider style without copy-pasting code.
ARD-L01-12FunctionsWrite a reusable flash() helper to keep the sketch tidy.
ARD-L01-13Reading Circuit DiagramsSchematic symbols for LEDs, resistors, ground and power — the engineer's view of a circuit.
ARD-L01-14Buzzers and tone()Make sound with a piezo and pick musical notes by frequency.
ARD-L01-15Musical DoorbellCombine LEDs and a buzzer into a button-triggered jingle.🛠️ Project
CC · Digital Input8 lessons
ARD-L01-16Push Buttons & digitalReadDetect presses with a pull-down resistor and read the pin state.
ARD-L01-17INPUT_PULLUPUse the internal pull-up resistor to remove a wire from your circuit.
ARD-L01-18Debouncing a ButtonStop one press registering as two with a short delay filter.
ARD-L01-19State Change DetectionCount presses on the rising edge instead of while held.
ARD-L01-20if / elseBranch your program based on input from the world.
ARD-L01-21Combining Two ButtonsUse AND and OR boolean logic for real-world rules.
ARD-L01-22Reaction Timer GameMeasure how fast you slap the button after the LED lights.
ARD-L01-23Simple Burglar AlarmTilt or button switch triggers a buzzer + flashing LED.🛠️ Project
DD · Serial Monitor6 lessons
ARD-L01-24Serial.begin & printlnSend your first message from the Arduino to your computer.
ARD-L01-25Debugging With PrintsTrace what your sketch is doing line by line.
ARD-L01-26Reading From SerialType characters into the Serial Monitor and react in code.
ARD-L01-27ASCII BasicsWhy the number 65 is also the letter A — characters as numbers.
ARD-L01-28switch / caseBranch cleanly on a command character without piles of ifs.
ARD-L01-29Serial Light ShowType commands to drive a custom LED animation.🛠️ Project
EE · Lights and Sound6 lessons
ARD-L01-30RGB LED WiringCommon cathode vs common anode and how to read the pinout.
ARD-L01-31Mixing ColoursCombine red, green and blue channels for any visible colour.
ARD-L01-32Tone and FrequencyFrom hertz to musical notes — what a piezo is really doing.
ARD-L01-33Note ArraysStore a melody as a list and play it back automatically.
ARD-L01-34Multi-LED PatternsChoreograph five LEDs into ripple, chase and sparkle effects.
ARD-L01-35Mood Lamp + Theme TuneRGB colour cycle with a personalised startup jingle.🛠️ Project
FF · First Sensors8 lessons
ARD-L01-36Light-Dependent ResistorsRead brightness with analogRead() on the LDR voltage divider.
ARD-L01-37Analog vs Digital PinsWhat the difference really means — pin states vs measured voltages.
ARD-L01-38Voltage Dividers ExplainedWhy every variable resistor sensor needs a partner resistor.
ARD-L01-39Tilt SwitchesDetect orientation changes — your first motion sensor.
ARD-L01-40The PotentiometerA user-controlled dial that gives you 0–1023 in code.
ARD-L01-41The map() FunctionScale a sensor reading to LED brightness or servo angle.
ARD-L01-42Boolean Logic GatesAND, OR and NOT as physical truth and as code.
ARD-L01-43Auto Night LightLED that turns on when the room is dark — your first sensor product.🛠️ Project
GG · Build, Reflect, Recap5 lessons
ARD-L01-44Reaction-Time ArcadePolished reaction game with score and replay button.🛠️ Project
ARD-L01-45Morse Code BlinkerEncode SOS and your name into Morse light pulses.🛠️ Project
ARD-L01-46Traffic Light + CrossingPedestrian-button state machine — a real-world finite state machine.🛠️ Project
ARD-L01-47Planning on PaperPseudocode and rough wiring sketches before you touch the breadboard.
ARD-L01-48Level 1 Recap & Cert VocabVocabulary, key sketches and the first slice of the certification exam map.📝 Exam prep
Level 2 · Intermediate

Sensors, displays, smarter timing

48 lessons72 hoursAges 11–14🗺️ Syllabus↗ Open lessons
CodeLessonTypeMilestone
AA · Recap and PWM6 lessons
ARD-L02-01Level 1 Recap QuizDiagnostic check — what's still solid and what needs another look.
ARD-L02-02analogWrite & PWMWhat pulse-width modulation is and why it fakes analog from digital.
ARD-L02-03Duty Cycle MathsCalculate average voltage from duty cycle and frequency.
ARD-L02-04Smoothly Fading an LEDA for-loop fade up and back down — your first animation.
ARD-L02-05Crossfading RGBCycle smoothly through every colour an RGB LED can make.
ARD-L02-06Breathing Mood LampSlow PWM ramp that looks like a lamp inhaling and exhaling.🛠️ Project
BB · Analog Input Deep Dive6 lessons
ARD-L02-07The 10-Bit ADCWhy analogRead() returns 0–1023 and what that actually means.
ARD-L02-08Smoothing Noisy ReadingsRunning-average filter to calm down a jittery sensor.
ARD-L02-09Calibration in setup()Auto-detect a sensor's min and max during the first five seconds.
ARD-L02-10map() and constrain()Convert any sensor range to any output range, safely clipped.
ARD-L02-11The ThermistorRead temperature with a divider and the Steinhart-Hart equation.
ARD-L02-12Personal ThermometerPrint °C to the Serial Monitor and react to a fever-threshold.🛠️ Project
CC · Environmental Sensors8 lessons
ARD-L02-13TMP36 Temperature SensorLinear voltage-to-temperature, no library required.
ARD-L02-14DHT11 Humidity SensorInstall your first third-party library and read humidity.
ARD-L02-15Photoresistor Light MeterBuild a lux-style readout with calibration.
ARD-L02-16Soil Moisture ProbeAnalog reading in dry, damp and wet soil.
ARD-L02-17Rain Drop SensorThreshold-based alerts — when does "wet" become "rain"?
ARD-L02-18Piezo Knock SensorDetect taps and vibration without a dedicated chip.
ARD-L02-19Combining Two SensorsWhen to use AND vs OR — building robust conditions.
ARD-L02-20Weather Station v1Temperature + humidity streamed to the Serial Monitor.🛠️ Project
DD · Distance and Ultrasonic6 lessons
ARD-L02-21HC-SR04 PhysicsEcho timing, the speed of sound and what really happens at the sensor.
ARD-L02-22pulseIn() ExplainedMeasure pulse width in microseconds without blocking forever.
ARD-L02-23Distance CalculationConvert microseconds to centimetres in your own code.
ARD-L02-24Range-Based AlarmBuzzer that beeps faster as something approaches.
ARD-L02-25Parking Sensor DemoGreen/amber/red LEDs for three distance zones.
ARD-L02-26Smart Bin LidServo-driven lid that opens when your hand is detected.🛠️ Project
EE · LCD Displays6 lessons
ARD-L02-27The HD44780 Character LCD16x2 wiring with or without an I2C backpack.
ARD-L02-28LiquidCrystal LibraryYour first "Hello, world!" on a real screen.
ARD-L02-29Cursor Control and clear()Update the screen without ghosting old text.
ARD-L02-30Custom CharactersDesign your own 5x8 pixel icons and symbols.
ARD-L02-31Sensor Data on LCDFormat numbers neatly with fixed widths and decimal places.
ARD-L02-32Digital Thermometer With LCDNo more Serial Monitor — a standalone temperature display.🛠️ Project
FF · Non-Blocking Time6 lessons
ARD-L02-33Why delay() Is a ProblemWhat "blocking" means and the bugs it causes.
ARD-L02-34millis() IntroductionTrack elapsed time without freezing your sketch.
ARD-L02-35Blink Without DelayThe canonical Arduino example, dissected line by line.
ARD-L02-36Doing Two Things at OnceRun two independent LED timers from one loop().
ARD-L02-37Debouncing With millis()Cleaner button code without sprinkled delay()s.
ARD-L02-38Multi-LED ChoreographyThree patterns at three speeds running in parallel.🛠️ Project
GG · Memory and Storage4 lessons
ARD-L02-39EEPROM BasicsSurvive a power cycle — write a byte that lives forever.
ARD-L02-40Saving a High ScorePersist a game score across resets in EEPROM.
ARD-L02-41SD Cards With SPIWire and mount an SD module using the SD library.
ARD-L02-42Sensor Data LoggerWrite timestamped readings to a real .csv file.🛠️ Project
HH · Build, Reflect, Recap6 lessons
ARD-L02-43Weather Station v2LCD readout + multi-sensor capture + SD logging.🛠️ Project
ARD-L02-44Digital Combination LockKeypad of buttons unlocks a servo-driven latch.🛠️ Project
ARD-L02-45Reaction-Tester ArcadeThe L1 game with an LCD scoreboard and EEPROM high score.🛠️ Project
ARD-L02-46Schematic Reading IIFollowing multi-IC diagrams with libraries and modules.
ARD-L02-47Debugging StrategiesPrint, isolate, simplify — the systematic way to find a bug.
ARD-L02-48Level 2 Recap & Cert VocabQuiz, glossary and targeted certification-exam review.📝 Exam prep
Level 3 · Advanced

Motors, protocols, wireless

48 lessons72 hoursAges 12–15🗺️ Syllabus↗ Open lessons
CodeLessonTypeMilestone
AA · Servo Motors4 lessons
ARD-L03-01Hobby Servos ExplainedPulse-position control and the three-wire interface.
ARD-L03-02The Servo Libraryattach(), write() and how it abstracts the timing for you.
ARD-L03-03Sweeping a ServoAnimate from 0° to 180° smoothly and back again.
ARD-L03-04Indicator NeedleServo as an analog dial pointer for a sensor reading.🛠️ Project
BB · DC Motors and H-Bridges6 lessons
ARD-L03-05DC Motor BasicsWhy a microcontroller pin alone cannot spin a motor.
ARD-L03-06Transistor as a SwitchOne-direction motor control with a BJT or MOSFET.
ARD-L03-07Flyback DiodesHow a tiny diode stops a motor frying your Arduino.
ARD-L03-08The L298N H-BridgeForward, reverse, stop and brake from four pins.
ARD-L03-09PWM Speed ControlThrottle a motor with analogWrite() on the enable pin.
ARD-L03-10Two-Wheel Test BedButton-driven manual robot — the chassis you'll automate later.🛠️ Project
CC · Stepper Motors4 lessons
ARD-L03-11Stepper AnatomyUnipolar vs bipolar coils and how steps actually happen.
ARD-L03-1228BYJ-48 + ULN2003The classroom stepper kit, wired and tested.
ARD-L03-13The Stepper LibrarySteps per revolution, RPM and direction.
ARD-L03-14Rotating Display PlatformA motorised stand that spins your phone or a model on cue.🛠️ Project
DD · UART, I²C, SPI8 lessons
ARD-L03-15UART Deep DiveFrames, baud rates and the most common serial pitfalls.
ARD-L03-16SoftwareSerialSpare-pin serial when the hardware port is busy.
ARD-L03-17I²C Protocol ConceptsMaster, slave, addresses and how two wires carry many devices.
ARD-L03-18The Wire LibraryScan for I²C devices and read their addresses.
ARD-L03-19SSD1306 OLED on I²CCrisp 128x64 graphics with just two data wires.
ARD-L03-20SPI Protocol ConceptsClock, MISO, MOSI, SS — why SPI is faster than I²C.
ARD-L03-21SPI Shift RegistersDrive eight LEDs from three pins with a 74HC595.
ARD-L03-22Multi-Display DashboardOLED stats and a shift-register LED bargraph on one board.🛠️ Project
EE · Bluetooth Control6 lessons
ARD-L03-23HC-05 Bluetooth ClassicPair your phone and stream characters over serial.
ARD-L03-24AT CommandsRename your module, set the PIN, change the baud rate.
ARD-L03-25Bluetooth CommandsForward / reverse / stop your robot from a phone app.
ARD-L03-26ArduinoBLE BasicsThe modern BLE stack on Nano 33 BLE and friends.
ARD-L03-27A BLE CharacteristicPhone-controlled LED brightness through a custom service.
ARD-L03-28Bluetooth-Controlled CarL298N motors + HC-05 + phone app — your first real robot.🛠️ Project
FF · WiFi and the Web6 lessons
ARD-L03-29WiFi: ESP8266 vs ESP32Choosing a board for connected projects.
ARD-L03-30Connecting to a NetworkSSID, password, signal strength and reconnection logic.
ARD-L03-31HTTP ClientFetch a real webpage from your Arduino sketch.
ARD-L03-32A Tiny Web ServerYour Arduino as a website on your home network.
ARD-L03-33Sensor Data Over WiFiPush live readings to a browser tab.
ARD-L03-34WiFi-Controlled LampToggle a light from any phone on the network.🛠️ Project
GG · Time and Internet Glue4 lessons
ARD-L03-35NTP Time SyncGet the real time from the internet — no RTC required.
ARD-L03-36Webhooks 101Trigger external services with a simple POST.
ARD-L03-37IFTTT and DiscordPush notifications from your circuit to your phone for free.
ARD-L03-38Doorbell That DMs YouButton press fires a phone notification anywhere in the world.🛠️ Project
HH · OOP and Reusable Code4 lessons
ARD-L03-39Arrays and LookupsReplace big if-trees with tidy tables.
ARD-L03-40Structs for Grouped DataBundle sensor readings into one record.
ARD-L03-41Classes in ArduinoEncapsulate sensor logic into objects you can reuse.
ARD-L03-42Write a Blinker ClassNon-blocking blink as a reusable, self-contained object.🛠️ Project
II · Build, Reflect, Recap6 lessons
ARD-L03-43Bluetooth Robot Car v2Full integration with PWM speed, app UI and obstacle stop.🛠️ Project
ARD-L03-44WiFi Smart-Plant MonitorMoisture sensor + web dashboard + email alerts.🛠️ Project
ARD-L03-45Pan-Tilt Camera MountTwo servos + joystick (or phone) for remote framing.🛠️ Project
ARD-L03-46Power BudgetingmAh, voltage rails, regulators and how to size a battery.
ARD-L03-47Schematic Reading IIIFollowing a motor-driver + WiFi shield schematic end to end.
ARD-L03-48Level 3 Recap & Cert VocabQuiz, glossary and the protocol-heavy slice of the cert exam.📝 Exam prep
Level 4 · Cert Prep

IoT, robotics, edge AI, exam day

48 lessons72 hoursAges 13–16🗺️ Syllabus↗ Open lessons
CodeLessonTypeMilestone
AA · Boards Beyond the UNO6 lessons
ARD-L04-01The Arduino FamilyUNO, Mega, Nano, MKR, Nano 33 BLE, Portenta — what's actually different.
ARD-L04-02Choosing the Right BoardPins, memory, radios, voltage — picking for the job.
ARD-L04-03Migrating SketchesWhy code that ran on UNO crashes on Nano 33 — and how to fix it.
ARD-L04-04Pin Mapping LimitationsWhich pins do PWM, interrupts, true analog and 5V tolerance.
ARD-L04-05Bootloaders and ISPArduino as ISP — flash one Arduino with another.
ARD-L04-06Standalone ATmega328Move your circuit off the UNO and onto a bare chip on breadboard.🛠️ Project
BB · Arduino IoT Cloud6 lessons
ARD-L04-07What Is IoT Cloud?Things, properties, devices and dashboards explained.
ARD-L04-08Setting Up a ThingVariables in your sketch that auto-sync to the cloud.
ARD-L04-09Cloud DashboardsWidgets, live charts and historical data.
ARD-L04-10Cloud-Controlled LEDToggle a pin from anywhere on Earth.
ARD-L04-11Sharing a DashboardPermissions, tokens and read-only public views.
ARD-L04-12IoT Room MonitorLive temperature, humidity and light dashboard for your room.🛠️ Project
CC · MQTT and Home Integration4 lessons
ARD-L04-13MQTT ConceptsBrokers, topics, retained messages and quality of service.
ARD-L04-14PubSubClient LibraryPublish a temperature reading to a real broker.
ARD-L04-15Subscribing to TopicsReceive commands and react in code.
ARD-L04-16Home Assistant Sensor NodeA real smart-home device that anyone in the house can see.🛠️ Project
DD · Long-Range and Industrial6 lessons
ARD-L04-17LoRa FundamentalsWhy long range is possible at very low power.
ARD-L04-18LoRa Point-to-PointTwo boards talking from opposite ends of the street.
ARD-L04-19LoRaWAN and TTNThe Things Network — real public LoRa infrastructure.
ARD-L04-20Modbus and RS-485Industrial control language used in real factories.
ARD-L04-21CAN Bus BasicsHow every modern car's sensors talk to each other.
ARD-L04-22GPS + LoRa TrackerLive position telemetry over kilometres of range.🛠️ Project
EE · Robotics and Control Theory8 lessons
ARD-L04-23Open vs Closed LoopThe big idea behind every controlled system.
ARD-L04-24The PID AlgorithmProportional, integral, derivative — explained without scary maths.
ARD-L04-25Line-Following SensorsIR reflectance and a simple bang-bang controller.
ARD-L04-26Tuning a Line FollowerFrom wobble to glide by tuning Kp, Ki, Kd.
ARD-L04-27Encoder MotorsCount revolutions for true speed and position control.
ARD-L04-28The MPU6050 IMUAccelerometer + gyroscope over I²C on your robot.
ARD-L04-29Sensor Fusion BasicsComplementary filter — angle from a noisy gyro and tilty accel.
ARD-L04-30Self-Balancing Robot v1PID + IMU + encoder motors — the iconic Arduino build.🛠️ Project
FF · Edge AI and Embedded ML6 lessons
ARD-L04-31What Is Edge AI?On-device inference vs cloud — and why it matters.
ARD-L04-32ML FundamentalsFeatures, labels, training and inference for hardware kids.
ARD-L04-33Capturing Training DataStream sensor data to your laptop and label it.
ARD-L04-34TensorFlow Lite MicroRun a tiny neural network on a Nano 33 BLE.
ARD-L04-35Gesture RecognitionTrain on accelerometer waveforms — wave, punch, flick.
ARD-L04-36Magic-Wand Gesture TriggerWave a wand to fire your favourite circuit.🛠️ Project
GG · Power and Low-Power Design4 lessons
ARD-L04-37Sleep ModesStandby, power-down, watchdog wake-up.
ARD-L04-38Battery SelectionLiPo, AA, coin cells — picking for an mAh budget.
ARD-L04-39Low-Power Sensor NodeWake, sample, transmit, sleep — the field-device pattern.
ARD-L04-40Solar-Powered Field SensorA node that runs for weeks on a small solar panel.🛠️ Project
HH · Writing Custom Libraries4 lessons
ARD-L04-41Anatomy of a Library.h, .cpp, keywords.txt, library.properties.
ARD-L04-42Your Own Header FileAPI design for clarity — what to expose, what to hide.
ARD-L04-43Publishing to Library ManagerVersioning, examples and a real README.
ARD-L04-44Package Your DriverTurn a Level 3 sensor wrapper into a distributable library.🛠️ Project
II · Certification Exam Preparation4 lessons
ARD-L04-45Exam Format & Domains36 questions, 75 minutes, 8 domains — what to expect.📝 Exam prep
ARD-L04-46Domains 1–4 WalkthroughElectricity, programming syntax, components, IDE — sample questions.📝 Exam prep
ARD-L04-47Domains 5–8 WalkthroughPWM, schematics, programming logic, boards — sample questions.📝 Exam prep
ARD-L04-48Mock Exam + Study Plan20-question rehearsal, scoring rubric and a personal revision plan.🏆 Capstone
No lessons match your search.