Circuit Camp
Circuit Camp · An electronics adventure for ages 9–15

Make lights blink.Build robots.Invent real things.

Arduino is the tiny computer inside a million inventions — and you can learn to command it. No experience needed. Learn it, wire it in 3D, then build machines that really work.

ARDUINO UNO L13
Arduino Uno · wired & glowing since 2005
0guided
lessons
0parts
explained
03D mini
projects
0jargon-first
answers
Why Arduino?

Because it's the brain inside real inventions.

Not a toy version of electronics — the same board used by NASA interns, inventors, and a million makers worldwide.

It's a real computer

The same kind of chip that runs microwaves, drones, and vending machines — small enough to hold, tough enough to survive your experiments.

Code becomes physical

Type ten lines and a light obeys you. Add a sensor and your machine can feel the world. Nothing on a screen compares to that feeling.

It grows with you

The exact skills here — circuits, sensors, code — are the starting line for robotics teams, science fairs, and real engineering careers.

How Circuit Camp works

Learn it. Wire it. Build it.

Three connected worlds, one path. Lessons teach the idea, the 3D Lab makes it real, and projects turn it into machines.

Featured builds

Things you will actually make.

Every project has a rotatable 3D model, a wiring recipe, real Arduino code, and a simulation you control.

Your path

Pick up wherever you left off.

Your place is saved on this device automatically — no accounts, no passwords. Just come back and keep building.

From the workbench

What young makers say.

"I thought coding was typing green letters like in movies. Then my LED blinked because of MY code and I ran to show everyone."
Maya, 11 — beta tester
"The 3D lab is like LEGO but the pieces do things. I wired the servo before we even bought a real Arduino."
Dev, 13 — beta tester
"My daughter explained pull-down resistors to me at dinner. Correctly. I checked."
A slightly stunned parent
Everything inside

Explore the whole camp.

Ready to make something real?

Lesson 0 takes four minutes. The blinking light takes a lifetime to forget.

Start Building — it's free
The course

Twelve lessons, numbered like digital pins.

Read a little, play with the interactive lab, then pass a one-question quiz to light up your pin. Green dots are yours to earn.

Electricity is a crowd of unimaginably tiny particles — electrons — that can be pushed through metal, the way water is pushed through a hose. When they flow, they carry energy. That's it. That's the whole magic trick.

But electrons only flow if they have a complete loop to travel: out of the battery, through your parts, and back into the battery. That loop is called a circuit, and it is the one rule everything else on this site obeys: no loop, no flow, no light. Try it — flip the switch and watch the loop close.

Three water words describe every circuit: voltage is how hard the water is pushed (the pressure), current is how much water flows, and resistance is how narrow the pipe is. Arduino pushes gently — just 5 volts — which is exactly why it's safe to learn with.

+
the loop is broken — nothing can flow
The parts library

Every part, explained like a person would.

Click any part to read what it really is and how it works inside. Then open it in the 3D Lab and wire it yourself.

The cheat sheet

The ten commands that do almost everything.

Arduino code looks scary until you notice the same few commands show up in every sketch. Here they are, in plain English.

CommandPlain EnglishExample
pinMode(pin, mode)Tell a pin its job: OUTPUT (send power) or INPUT (listen).pinMode(13, OUTPUT);
digitalWrite(pin, v)Flip a pin fully on (HIGH, 5V) or fully off (LOW, 0V). Like a light switch.digitalWrite(13, HIGH);
digitalRead(pin)Ask a pin: are you seeing power right now? Answers HIGH or LOW.int p = digitalRead(2);
analogWrite(pin, 0–255)Pulse a pin super fast so it acts partly on — a dimmer, not a switch.analogWrite(9, 128);
analogRead(pin)Measure a voltage on an A pin as a number from 0 to 1023.int v = analogRead(A0);
delay(ms)Freeze and wait this many milliseconds. 1000 = one second.delay(1000);
Serial.begin(9600)Open a chat line to your computer at 9600 letters-per-second.Serial.begin(9600);
Serial.println(x)Send a message to the Serial Monitor so you can see what's happening.Serial.println(v);
if (test) { } else { }Make a decision: do this if the test is true, otherwise do that.if (v > 500) { ... }
tone(pin, hz)Vibrate a pin at a musical frequency — how buzzers sing.tone(8, 440);
Home / 3D Lab / LED
Interactive workshop

3D Component Lab

Learn the part, wire it one connection at a time on a real 3D breadboard, upload the sketch, and watch the electricity flow. Drag to rotate, scroll to zoom.

← This part's full guide
Component circuitdrag to rotate · scroll to zoom
Pick a component, then follow the steps on the right.
5V power ground (GND) signal data / extra ● orange dots = flowing current
Workbenchstuck?● ready

Connect each wire in order — press Connect and watch it appear on the board. Colors matter: red is power, black is ground.

// Serial Monitor — waiting for upload…

Move the slider to change the simulated input, then apply. Watch the 3D model, the current dots, and the console respond together.

Wire the circuit first, then upload the sketch.
Home / Projects / LED Traffic Light
Mini projects · Real builds

Mini Projects

Combine parts you've mastered into a real machine. Rotate the 3D build, follow the wiring recipe, read the full sketch, then run the live simulation.

Beginner
Project modeldrag to rotate · scroll to zoom
Press ▶ Run simulation, then play with the slider below the scene.
● ready
Project guidestuck?
From screen to breadboard

Everything here works with real parts.

The simulations you've been using mirror real, inexpensive hardware. Here's exactly what to buy and how to make your first real upload.

The Starter Kit

Covers every Beginner project on this site — a good first purchase.

  • Arduino Uno (or any compatible clone)the brain
  • Solderless breadboardhalf-size is fine
  • Jumper wire kitmale–male, 40+
  • Resistor assortmentneeds 220Ω + 10kΩ
  • LEDs (red, yellow, green) + RGB LEDTraffic Light, Mood Lamp
  • Piezo buzzerTripwire, Countdown
  • Push buttonsCountdown
  • Photoresistor (LDR)Night Light, Tripwire
  • PIR motion sensorHallway Light
  • 7-segment displayCountdown
  • Soil moisture probePlant Sensor

The Full Kit

Adds everything for the Intermediate and Advanced projects.

  • Potentiometer (10kΩ)Mood Lamp
  • Servo motor (SG90)Turret, Radar
  • Ultrasonic sensor (HC-SR04)Radar
  • DHT11 sensor + 16×2 I²C LCDDesk Thermometer
  • Joystick moduleServo Turret
  • IR receiver + any spare remoteRemote Lamp
  • DC motor + NPN transistor + diodePlant Waterer
  • Stepper motor + driver + supplyCamera Slider
  • Relay moduleadults-only wiring — see Safety
  • Bluetooth HC-05 moduleBluetooth Lamp
Your first real upload

Fifteen minutes, start to blink.

1 — Install the IDE. Download the free Arduino IDE from arduino.cc and install it like any app. Open it once so it finishes setting up drivers.

2 — Plug in the board. Use the USB cable. A little green power light should come on immediately — no code needed for that.

3 — Two check-ins. Tools → Board → "Arduino Uno". Tools → Port → the one that mentions Arduino or USB. These two menus cause 90% of all beginner problems, so double-check both.

4 — Load Blink. File → Examples → 01.Basics → Blink. This is the exact program from Lesson 2 — you already understand every line of it.

5 — Press Upload (→). Lights flicker for a few seconds… and then the board's built-in LED starts blinking, once per second, forever. That's your code, running on real hardware, with the computer no longer required.

Nothing happened? Don't worry — it's almost always the Port menu or the cable. Open Troubleshooting →

Troubleshooting

When it doesn't work — and it sometimes won't.

Every engineer's circuits fail sometimes. That's not a sign you're bad at this; debugging IS the skill. Here are the classics.

My IDE can't find my board — the Port menu is empty or greyed out.

First, try a different USB cable — many cables are charge-only and carry no data at all (this is the #1 cause). Then try a different USB port on your computer. Still nothing? Some clone boards need a small driver called CH340 — search "CH340 driver" plus your operating system, install it, and replug the board.

I uploaded successfully, but nothing happens.

Upload said "Done"? Then the code IS on the board — the problem is the circuit or the code's pin numbers. Check that the pin number in your sketch matches the pin your wire actually enters (code says 9, wire on 9). Then check your ground: every circuit needs a complete loop back to GND, and a missing ground wire fails silently. Finally, add a Serial.println("alive!") at the top of loop() to prove the code is running.

My LED won't light up.

Three suspects, in order. Polarity: LEDs are one-way streets — the long leg must face the pin, short leg to GND. Flip it; the LED is not damaged by being backwards. Resistor: make sure it's really 220Ω (red-red-brown), not something huge like 220kΩ. Pin mismatch: code and wire must agree on the pin number. If all three check out, test the LED directly across 5V-resistor-GND, no code at all.

The Serial Monitor shows garbage — weird symbols instead of my messages.

Classic baud-rate mismatch. Your sketch says Serial.begin(9600) but the dropdown in the Serial Monitor window is set to a different speed. Set both to the same number — like tuning two radios to the same station — and the letters snap back into words. (Lesson 8 explains why.)

My code won't compile — what do all these red error messages mean?

Read only the FIRST error, ignore the rest — one typo often makes a cascade of nonsense afterward. The most common: expected ';' means a semicolon is missing at the end of the line above; was not declared usually means a typo (capital letters matter: digitalWrite, not DigitalWrite); a missing { or } confuses everything below it. Fix the first error, press Verify again, repeat.

It worked yesterday and today it doesn't. I changed nothing!

Something moved — probably a jumper wire that half-slipped out of a breadboard hole. Press every wire gently down, especially the ground wires. Breadboard connections are friction, not solder, and gravity is patient.

Safety basics

Low voltage is your playground. Wall power is not.

Two minutes of reading that makes every project on this site a safe one.

The green zone — explore freely. Everything on this site runs on 5 volts from a USB cable or a small battery pack. That's less than many toys use. You can touch these circuits, rewire them, and make mistakes with them — the worst outcome of a wiring error is a warm component or a popped LED, not a hurt person. This is exactly why Arduino is used in classrooms everywhere.

The adult zone — wall-outlet power. The relay module can physically switch big things: real lamps, fans, anything with a wall plug. The relay's coil side (your 5V wires) is safe; the load side (the wall-power side) is not a kid project. If a build involves anything that plugs into an outlet, an adult does that part, full stop. This includes "just checking" it.

Good habits that make you a real engineer: unplug power before rewiring, not after; double-check polarity (which way LEDs, diodes, and capacitors face) before powering up; don't leave circuits powered when you walk away; keep water away from everything electronic (looking at you, Plant Waterer — pump below, electronics above, towel underneath); and if a component gets hot or smells odd, unplug first, investigate second.

Batteries: the small stuff (AA packs, 9V) is fine. Never short a battery's + directly to its − with a bare wire, and treat rechargeable lithium packs with respect — they don't forgive punctures or shorts.

The word list

Every strange word, in plain English.

Electronics has its own vocabulary, and nobody is born knowing it. Each lesson lists its new words — they all live here, explained like a person would.