Session 7 — Hello, Hardware!
Duration: 75 min · Format: live online · Ages: 12–15
Session goal: by the end, students can explain the Sense → Think → Act loop, build an LED circuit in a simulator, and write Arduino code that makes it blink.
Before class — prep (5 min)
- Open Tinkercad Circuits in a tab, signed in and ready to Create new Circuit — you'll demo and screen-share.
- Have the two diagrams below ready to share (Sense → Think → Act and the LED circuit).
- Have the blink sketch below open so you can paste it live.
Agenda
| Time | Segment |
|---|---|
| 0:00 | Hook — the automatic door (5 min) |
| 0:05 | Teach — Sense → Think → Act (12 min) |
| 0:17 | Teach — a circuit + code together (15 min) |
| 0:32 | Activity — blink an LED in Tinkercad (28 min) |
| 1:00 | Check for understanding (8 min) |
| 1:08 | Wrap-up + homework (7 min) |
0:00 · Hook (5 min)
Ask the class (chat or unmute):
- "How does an automatic door know when to open?"
Let them guess, then reveal the pattern: it senses you, decides to open, and acts by moving. Tell them almost every smart device works this way — and today they build the smallest version: an Arduino that makes a light blink.
0:05 · Teach — Sense → Think → Act (12 min)
Explain: a tiny computer called an Arduino connects code to the physical world through a three-step loop.
Share this diagram:
- Sense — inputs (a button, a light or temperature sensor).
- Think — the Arduino runs your code.
- Act — outputs (an LED, a buzzer, a motor).
Ask: "Take the automatic door — what's the Sense, the Think, and the Act?" (Take a couple of answers, then name one more everyday device.)
0:17 · Teach — A circuit + code, working together (15 min)
Explain: electricity needs a complete loop to flow. Show the classic first circuit — an LED with a resistor, which protects the LED.
Share this diagram:
Explain the code: an Arduino sketch has two parts — setup() runs once, loop() runs forever.
Build/type this together:
void setup() {
pinMode(13, OUTPUT); // pin 13 will power the LED
}
void loop() {
digitalWrite(13, HIGH); // LED ON
delay(1000); // wait 1000 ms = 1 second
digitalWrite(13, LOW); // LED OFF
delay(1000); // wait 1 second
}
⚠ Watch for the common bug: if the LED won't light, the circuit is usually not a complete loop, the resistor is missing, or the LED is backwards (LEDs only work one way). Check the loop first.
Ask: "Which line turns the LED off, and what would happen if we deleted both delay lines?" (Answer: digitalWrite(13, LOW); with no delays it blinks too fast to see.)
0:32 · Activity — Blink an LED (28 min)
No hardware needed — everyone uses the free simulator. Demo the first build yourself, then have students build on their own devices. Circulate.
- Open Tinkercad Circuits → Create new Circuit.
- Drag in an Arduino Uno, an LED, and a 220 Ω resistor. Wire: pin 13 → resistor → LED → GND.
- Click Code, switch to Text, paste the blink code above.
- Press Start Simulation. The LED blinks!
Circulate and ask: "Is your loop complete? Is the resistor in the line?"
Extension prompt (for anyone who finishes): change both
delay(1000)todelay(200)— what happens? Then make it blink an SOS pattern (3 short, 3 long, 3 short).
1:00 · Check for understanding (8 min)
Ask these aloud or drop them in the chat. Answer key (for you):
- What are the three steps of physical computing? → Sense → Think → Act. Input → Arduino → output.
- What does
delay(1000)do? → Pauses for 1000 milliseconds = 1 second. - Which part runs forever —
setup()orloop()? →loop()repeats endlessly;setup()runs once at the start.
1:08 · Wrap-up + homework (7 min)
- Ask one student to explain Sense → Think → Act in one sentence using their blink circuit.
- Homework — Two-LED crossing: add a second LED on another pin and make the two blink alternately (like a level crossing). Screenshot the circuit for the portfolio and bring it to Session 8.
Teaching notes
- Correct this misconception: "The LED is broken." Usually the loop is incomplete, the resistor is missing, or the LED is inserted backwards — check those before replacing anything.
- Fast finishers (extension): add a real input so the project can sense. In Tinkercad, add a photoresistor (light sensor) to pin A0 and read it:
```cpp void setup() { pinMode(13, OUTPUT); Serial.begin(9600); // so we can see the numbers }
void loop() { int light = analogRead(A0); // read the sensor (0–1023) Serial.println(light); // print the value delay(200); } ```
Have them cover the sensor and watch the number change in the Serial Monitor. These values are the "Sense" step — next session they add the "Think" (an if) to make an automatic night-light.
- Low-tech fallback: if devices are limited, screen-share Tinkercad yourself and build the blink circuit as a class, taking student directions for each wire and line of code.
Vocabulary
| Term | Meaning |
|---|---|
| Arduino | A tiny programmable board |
| Circuit | A complete loop for electricity |
| Sensor | An input that senses the world |
| Output | Something the board controls (LED…) |
loop() |
Code that runs forever |
Resources
- Tinkercad Circuits — build & simulate Arduino, free, no hardware.
- Arduino — Built-in Blink tutorial — the official first project.
- Arduino Project Hub — thousands of project ideas.
Next session
Session 8 — Build a Smart Gadget: the Block 2 project — students combine a sensor, a decision, and an output into their own working invention.