Learn Arduino Tutorials Open the 3D lab

Free · Beginner friendly · In 3D

Arduino tutorials you can try right away

Every project explained step by step — how it works, the wiring, the code line by line — and every one of them runs in our free 3D lab, so you can try it before you buy a single part.

Open the 3D lab →
Try one now: press Play, then Run the code — this is the real Blink project, running in your browser
Try one now: press Play, then Run the code — this is the real Blink project, running in your browser · open it full screen

New to Arduino? Start here

  1. 1What is Arduino?6 min
  2. 2What is a breadboard?5 min
  3. 3Blink an LED with Arduino5 min
  4. 4Push button with Arduino7 min
  5. 5Potentiometer with Arduino6 min
  6. 6Arduino code basics5 min

Projects 16

Project 1 · Beginner · 7 min readArduino UNO board explained — the pins, the LEDs and your first sketchA beginner's tour of the Arduino UNO: what each pin and LED does, setup() and loop(), and a first sketch that blinks the L LED. Try it live in 3D.Project 2 · Beginner · 5 min readBlink an LED with Arduino — your first circuit, explainedMake an LED blink with an Arduino UNO: the wiring, why the LED needs a resistor, and the code line by line. Try it live in 3D — no hardware needed.Project 3 · Beginner · 7 min readPush button with Arduino — digitalRead() and the pull-down resistorWire a push button to an Arduino UNO, read it with digitalRead(), and learn why a 10 kΩ pull-down resistor stops the pin floating. Try it live in 3D.Project 4 · Beginner · 6 min readPotentiometer with Arduino — analogRead(), map() and a dimming LEDRead a potentiometer on A0 with analogRead(), scale it with map(), and dim an LED with analogWrite() PWM. Wiring, code and math explained. Try it live in 3D.Project 5 · Beginner · 6 min readRGB LED with Arduino — mix any colour with three PWM pinsWire a common-cathode RGB LED to an Arduino UNO, mix colours with analogWrite() on pins 9, 10 and 11, and write a setColor() function. Try it live in 3D.Project 6 · Beginner · 6 min readLDR light sensor with Arduino — build an automatic night lightBuild an Arduino night light: an LDR and a 10 kΩ resistor make a voltage divider on A0, and an LED glows brighter as the room gets darker. Try it live in 3D.Project 7 · Beginner · 5 min readMeasure distance with Arduino and the HC-SR04 ultrasonic sensorHow the HC-SR04 ultrasonic sensor measures distance with sound: wiring to an Arduino UNO, the pulseIn() code explained, and the math. Try it live in 3D.Project 8 · Beginner · 6 min readPlay a tune with an Arduino buzzer — tone(), arrays and Ode to JoyMake a passive buzzer play Ode to Joy with an Arduino UNO: how tone() turns frequencies into notes, and how arrays and a loop hold a tune. Try it live in 3D.Project 9 · Intermediate · 7 min readArduino piano with 8 buttons and a buzzer — INPUT_PULLUP explainedBuild an 8-key Arduino piano: buttons with INPUT_PULLUP (no resistors), a for loop that scans the keys, and tone() on a buzzer. Try it live in 3D.Project 10 · Intermediate · 9 min readControl a DC motor with Arduino — TIP120 transistor and PWM speedDrive a DC motor from an Arduino UNO with a TIP120 transistor and a flyback diode, and set its speed with PWM. The real numbers, explained. Try it live in 3D.Project 11 · Intermediate · 7 min readArduino thermostat with a TMP36 sensor — a fan that turns itself onBuild an Arduino thermostat: read a TMP36 temperature sensor, turn volts into °C, and switch a fan with hysteresis. The code explained. Try it live in 3D.Project 12 · Beginner · 6 min readServo motor with Arduino — sweep an SG90 from 0° to 180°, explainedControl an SG90 servo with an Arduino UNO: three wires, the Servo library, and a sweep from 0° to 180° with for loops, explained. Try it live in 3D.Project 13 · Intermediate · 7 min readStepper motor with Arduino — a 28BYJ-48 prize wheel that stops exactlyDrive a 28BYJ-48 stepper motor with a ULN2003 board and an Arduino UNO: exact steps, random() prizes and a push button, explained. Try it live in 3D.Project 14 · Intermediate · 7 min readPlant watering monitor with Arduino — soil sensor and OLED screenBuild a smart plant monitor: a capacitive soil-moisture sensor, map() to a percentage, and a 128×64 I²C OLED showing a bar and a mood. Try it live in 3D.Project 15 · Intermediate · 7 min readForce sensor with Arduino — a strength tester with a servo needleBuild a fairground strength tester: an FSR force sensor in a voltage divider, a servo needle that holds your best with millis(), and a bell. Try it live in 3D.Project 16 · Beginner · 7 min readArduino parking sensor — HC-SR04 and a traffic light that says STOPBuild an Arduino parking sensor: an HC-SR04 measures distance and a traffic-light module shows green, yellow or red. Code explained. Try it live in 3D.

Components 19

Component · Beginner · 6 min readArduino UNO pinout explained — digital, analog, PWM and power pinsEvery pin on the Arduino UNO explained simply: D0–D13, the ~ PWM pins, A0–A5, 5V, 3.3V and GND, and how much current each can give. Try it live in 3D.Component · Beginner · 5 min readHow an LED works — anode, cathode and why it needs a resistorWhat an LED is, which leg is + and which is −, why every LED needs a resistor, and how to work out the right value. With an Arduino example — try it live in 3D.Component · Beginner · 6 min readWhat is a resistor? How it limits current in Arduino circuitsWhat a resistor does, how Ohm's law picks its value, and its three jobs in Arduino projects: protect an LED, pull a pin down, make a divider. Try it in 3D.$Component · Beginner · 5 min readHow a push button works with Arduino — legs, pull-down and codeHow a 4-leg push button works, which legs are joined inside, why it needs a pull-down resistor or INPUT_PULLUP, and the Arduino code. Try it in 3D.$Component · Beginner · 5 min readWhat is a potentiometer? How a knob talks to your ArduinoHow a potentiometer works inside, what its three legs do, and how analogRead() turns the knob into 0–1023 to dim an LED. Try it live in 3D.$Component · Beginner · 5 min readHow an RGB LED works — common cathode, wiring and colour mixingHow an RGB LED mixes red, green and blue into any colour, which leg is which, why each colour needs its own resistor, and the Arduino code. Try it in 3D.$Component · Beginner · 5 min readPassive buzzer explained — how tone() plays notes on ArduinoHow a passive piezo buzzer makes sound, active vs passive, the frequencies of musical notes, and Arduino code with tone() to play a tune. Try it in 3D.$Component · Beginner · 5 min readLDR light sensor explained — how a photoresistor works with ArduinoHow an LDR (photoresistor) changes with light, why it needs a 10 kΩ resistor as a voltage divider, and the readings to expect on A0. Try it live in 3D.$Component · Beginner · 5 min readTMP36 temperature sensor explained — pinout, formula and Arduino codeHow the TMP36 turns temperature into a voltage, which leg is which, the formula from analogRead() to °C, and why it burns if wired backwards. Try it in 3D.$Component · Beginner · 5 min readForce-sensing resistor (FSR) explained — how to measure a pressHow a force-sensing resistor works, why it needs a 10 kΩ resistor, what it reads from a light touch to a hard press, and the Arduino code. Try it in 3D.Component · Beginner · 5 min readWhat is a diode? The 1N4001 flyback diode for Arduino motorsWhat a diode does, how to find its band, and why a 1N4001 sits across every Arduino motor to catch the spike when it stops. Try it live in 3D.Component · Beginner · 5 min readTIP120 transistor explained: switch a motor with an Arduino pinHow a TIP120 Darlington transistor lets a 20 mA Arduino pin switch a 0.5 A motor: pins B, C, E, the 1 kΩ base resistor and the maths. Try it live in 3D.Component · Beginner · 5 min readTraffic light LED module with Arduino: wiring, pins and codeThe traffic light LED module explained: red, yellow and green LEDs with built-in 220 Ω resistors, its 4 pins, the wiring and the code. Try it live in 3D.Component · Beginner · 5 min readDC motor explained: how it spins and how to drive it with ArduinoHow a small DC hobby motor works inside, why it needs 0.5 A and a transistor, how PWM sets its speed and how to reverse it. Try it live in 3D with a fan.Component · Beginner · 5 min readHow a servo works: SG90 pulses, angles and Arduino code explainedHow an SG90 micro servo turns to any angle from 0° to 180°: what's inside, the 20 ms pulses, its three wires and the Servo library code. Try it live in 3D.Component · Beginner · 5 min readHC-SR04 ultrasonic sensor pinout: VCC, TRIG, ECHO and GND explainedThe HC-SR04 ultrasonic sensor's 4 pins explained: power, the 10 µs trigger, the echo pulse and its timing, range and wiring to an Arduino. Try it live in 3D.Component · Intermediate · 5 min read28BYJ-48 stepper motor and ULN2003 driver with Arduino, explainedHow the 28BYJ-48 stepper and its ULN2003 driver turn in exact steps: 2048 a turn, the four coils, the IN1–IN4 wiring and the Stepper library. Try it live in 3D.Component · Beginner · 5 min readSSD1306 OLED display with Arduino: I²C wiring and drawing codeThe 0.96" SSD1306 OLED explained: 128 × 64 pixels over two I²C wires, the A4/A5 wiring, how pixels are stored and code to draw text and bars. Try it live in 3D.Component · Beginner · 5 min readCapacitive soil moisture sensor with Arduino: wiring and calibrationHow a capacitive soil moisture sensor works, why wetter soil reads lower, its 3 pins, and how map() turns 520–260 into 0–100 %. Try it live in 3D with a plant.

Guides 11

Guide · Beginner · 5 min readWhat is a breadboard? How the holes are connected (beginner guide)A breadboard explained simply: which holes are joined inside, what the rails and the middle gap are for, and the 4 mistakes every beginner makes. With 3D pictures.Guide · Beginner · 6 min readWhat is Arduino? A beginner's guide to the UNO and what it can buildWhat Arduino is, in plain words: the UNO board, the code you write, the things you can build, and how to start for free in your browser. Try it live in 3D.Guide · Beginner · 5 min readArduino code basics — setup(), loop(), variables, if and for explainedLearn Arduino code from zero: setup() and loop(), variables, pinMode, digitalWrite, delay, comments, semicolons, if and for, with real examples. Try it in 3D.Guide · Beginner · 6 min readVoltage, current and resistance — Ohm's law for Arduino beginnersVoltage, current and resistance explained with water pipes, then Ohm's law (V = I × R) worked out for a real LED and resistor on an Arduino. Try it live in 3D.Guide · Beginner · 5 min readDigital vs analog on Arduino — HIGH, LOW and analogRead 0–1023Digital vs analog on the Arduino UNO: HIGH and LOW, why analogRead gives 0–1023, how to turn a reading into volts, and pins D0–D13 vs A0–A5. Try it live in 3D.Guide · Beginner · 6 min readPWM explained — Arduino analogWrite, duty cycle and the ~ pinsPWM explained simply: what duty cycle means, how analogWrite 0–255 dims an LED and sets a motor's speed, and which UNO pins can do it (3, 5, 6, 9, 10, 11).Guide · Beginner · 5 min readArduino Serial Monitor explained — Serial.print, baud rate and inputHow the Arduino Serial Monitor works: Serial.begin(9600), print vs println, reading what you type, and using it to find bugs fast. Try it live in 3D.Guide · Beginner · 6 min readPull-up and pull-down resistors on Arduino — and INPUT_PULLUPWhy a button input needs a pull-down or pull-up resistor: floating pins, the 10 kΩ pull-down, and Arduino's built-in INPUT_PULLUP, with code. Try it live in 3D.Guide · Beginner · 6 min readResistor color code — how to read the bands (220 Ω, 1 kΩ, 10 kΩ)Read any resistor's color bands in seconds: the full color code table, 4-band and 5-band resistors, and worked examples for 220 Ω, 1 kΩ and 10 kΩ.Guide · Beginner · 7 min readHow to read a schematic — circuit symbols for Arduino beginnersLearn to read circuit diagrams: the symbols for resistor, LED, diode, switch, potentiometer, transistor, GND and VCC, plus net labels. Try it live in 3D.Guide · Beginner · 7 min readShort circuits — how not to burn your Arduino (5 mistakes to avoid)What a short circuit is, the 40 mA pin limit, why an LED needs a resistor, and 5 wiring mistakes that kill Arduinos. Make them safely in our 3D lab.