Guided physical computing, beginning with the Arduino Starter Kit Classroom Pack

Lessons

Lesson library

Find reviewed Uno R3 Classroom Pack lessons, a bounded UNO Q pathway, and supporting concepts.

30 of 30 library items

Open

Build and trace a breadboard circuit

Map the hidden connections inside a breadboard, assemble a protected LED circuit, and trace every electrical node before applying power.

Breadboard · Solid-core jumper wires · 220 Ω resistor · more
Skill lesson1.2Arduino Uno R340-55 minutes
MS-PRO-TR-19Programming
Open

Build a protected LED output

Wire and control an external LED while verifying polarity, resistance, pin mapping, and a shared ground.

5 mm LED · 220 Ω resistor · Breadboard and jumper wires
Skill lesson1.3Arduino Uno R335-50 minutes
MS-ALG-PS-03Algorithms & DesignMS-PRO-TR-19Programming
Open

Read a pushbutton reliably

Read a momentary pushbutton with a defined resting state and make its active-low behavior visible in Serial Monitor.

Momentary pushbutton · Breadboard and jumper wires
Skill lesson2.1Arduino Uno R335-50 minutes
MS-PRO-RD-17ProgrammingMS-PRO-TR-19Programming
Open

Button to signal

Build a stable digital input, control a protected LED, and explain how a physical action becomes program behavior.

Momentary pushbutton · LED · 220 Ω resistor · more
Skill lesson2.2Arduino Uno R335-55 minutes
MS-PRO-RD-17ProgrammingMS-PRO-TR-19Programming
Open

Read and map an analog control

Read a potentiometer, observe its full range, and map the measurement to a bounded output value.

10 kilohm potentiometer · Breadboard and jumper wires
Skill lesson2.3Arduino Uno R340-55 minutes
MS-PRO-VD-16ProgrammingMS-PRO-RD-17Programming
Open

Light to threshold

Measure the kit phototransistor circuit, collect evidence, calibrate a threshold, and publish a dependable light event.

Starter Kit phototransistor · 10 kΩ resistor · Breadboard and jumper wires · more
Skill lesson3.1Arduino Uno R345-60 minutes
MS-DAT-DC-21Data & AnalysisMS-DAT-DI-27Data & Analysis
Open

Temperature to response

Measure a TMP36 signal, convert it to temperature, and test a response against evidence collected in the room.

TMP36 temperature sensor from the Starter Kit · Breadboard and jumper wires
Skill lesson3.2Arduino Uno R345-60 minutes
MS-DAT-DC-21Data & AnalysisMS-DAT-DI-27Data & Analysis
Open

Tilt to event

Turn a tilt-switch change into a stable, observable event rather than treating orientation as a guaranteed continuous measurement.

Tilt switch from the Starter Kit · Breadboard and jumper wires
Skill lesson3.3Arduino Uno R335-50 minutes
MS-PRO-TR-19Programming
Open

Display a sensor value on the LCD

Wire the kit’s 16 × 2 character LCD in 4-bit mode and display a changing analog value with a clear label.

16 × 2 alphanumeric LCD · Two 10 kΩ potentiometers · 220 Ω resistor for the reviewed backlight circuit · more
Skill lesson3.4Arduino Uno R355-75 minutes
MS-PRO-RD-17ProgrammingMS-PRO-TR-19Programming
Open

Mix color with an RGB LED

Control the red, green, and blue channels independently, then mix repeatable colors with PWM values.

Starter Kit RGB LED · Three 220 Ω resistors · Breadboard and jumper wires · more
Skill lesson4.1Arduino Uno R345-60 minutes
MS-PRO-VD-16ProgrammingMS-PRO-TR-19Programming
Open

State to sound

Generate clear piezo feedback and use frequency, duration, and silence to communicate program state.

Piezo element from the Starter Kit · Breadboard and jumper wires
Skill lesson4.2Arduino Uno R340-55 minutes
MS-PRO-RD-17ProgrammingMS-PRO-TR-19Programming
Open

Detect a knock with the piezo

Use the kit piezo as a vibration sensor, observe its brief analog signal, and calibrate a knock threshold from evidence.

Starter Kit piezo capsule · 1 MΩ resistor · Breadboard and jumper wires · more
Skill lesson4.3Arduino Uno R345-60 minutes
MS-DAT-DI-27Data & Analysis
Open

Trigger to servo motion

Use a verified digital trigger to command two bounded servo positions and test the motion safely.

Starter Kit hobby servo · Momentary pushbutton · Breadboard and jumper wires
Skill lesson4.4Arduino Uno R345-65 minutes
MS-PRO-RD-17ProgrammingMS-PRO-TR-19Programming
Open

Plan and verify power for a load

Distinguish USB, regulated rails, VIN, and an external load supply before connecting a motor or other higher-current component.

USB cable · 9 V battery snap · Teacher-approved battery or current-limited supply not included in the kit · more
Skill lesson5.1Arduino Uno R345-60 minutes
MS-SYS-HW-30Systems & Security
Open

Switch a DC motor safely

Use the kit IRF520 MOSFET and 1N4007 flyback diode to switch a DC motor without driving it directly from an Arduino pin.

Starter Kit DC motor · IRF520 MOSFET · 1N4007 diode · more
Skill lesson5.2Arduino Uno R350-70 minutes
MS-SYS-HW-30Systems & SecurityMS-PRO-TR-19Programming
Open

Control DC motor direction

Use the kit L293D H-bridge to start, stop, and reverse a DC motor through explicit enable and direction signals.

Starter Kit DC motor · L293D H-bridge motor driver · Teacher-approved motor supply · more
Skill lesson5.3Arduino Uno R355-75 minutes
MS-SYS-HW-30Systems & SecurityMS-PRO-TR-19Programming
Open

Isolate a digital signal with the 4N35

Send a digital state through light inside the 4N35 while keeping two low-voltage circuits electrically separate.

4N35 optocoupler · 220 Ω input resistor · 10 kΩ output pull-up resistor · more
Skill lesson6.1Arduino Uno R360-75 minutes
MS-SYS-HW-30Systems & SecurityMS-PRO-TR-19Programming
Open

Sequence without blocking

Coordinate timed outputs while the sketch continues checking inputs, using elapsed time instead of long delays.

Built-in LED or protected external LED · Momentary pushbutton · Breadboard and jumper wires if using external parts
Skill lesson6.2Arduino Uno R350-70 minutes
MS-PRO-PD-12ProgrammingMS-PRO-RD-17Programming
Open

Build event and state logic

Distinguish an input transition from a held condition and move a system through explicit named states.

Momentary pushbutton · Built-in LED or protected external LED · Breadboard and jumper wires
Skill lesson6.3Arduino Uno R350-70 minutes
MS-PRO-RD-17ProgrammingMS-PRO-TR-19Programming
Open

Connect UNO Q and run an App Lab example

Set up the UNO Q in Arduino App Lab, run a known example, and document the difference between the Linux side and the real-time microcontroller.

USB-C data cable · Computer with Arduino App Lab · Classroom Wi-Fi for initial setup and updates
Skill lesson1.1Arduino UNO Q 2GB35-50 minutes
MS-PRO-PD-13ProgrammingMS-PRO-TR-19Programming
Open

Test a pre-trained audio classifier

Run a reviewed App Lab audio-classification example, test it with teacher-provided sounds, and use evidence to describe where the model succeeds and fails.

USB-C data cable · Computer with Arduino App Lab · Teacher-provided non-sensitive audio samples
Skill lesson1.2Arduino UNO Q 2GB40-55 minutes
MS-ALG-PS-04Algorithms & DesignMS-DAT-DI-27Data & Analysis
Open

Floating pins and pull-up resistors

A digital input needs a defined voltage. An unconnected pin can appear stable but remains undefined and susceptible to electrical noise. A pull-up or pull-down resistor establishes its resting state.

Preview concept details
  • Compare an unconnected INPUT with INPUT_PULLUP.
  • The Uno R3 provides internal pull-ups on its GPIO pins, including A0–A5 when used digitally.
  • Connect a button from the input pin to GND: released reads HIGH and pressed reads LOW.
ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open

How to read a component board

Many add-on boards expose power, ground, and one or more signal pins—but the exact board documentation is the authority.

Preview concept details
  • Identify VCC and its permitted voltage.
  • Identify GND; connected devices generally need a common voltage reference.
  • Identify each signal and its direction: module to Arduino, Arduino to module, or both.
  • Do not assume two signal pins mean analog plus digital. They may be a communication bus or separate input and output, such as ultrasonic TRIG and ECHO.
ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open

Power is not signal: 5 V, 3.3 V, and external supplies

The Uno R3 uses 5 V GPIO logic and also exposes regulated 5 V and 3.3 V power rails. Power rails, logic levels, and current capacity are different specifications.

Preview concept details
  • Check the component’s supply voltage, logic tolerance, and normal and worst-case current.
  • Apply higher input voltage only through the Uno’s designated VIN or barrel-jack path—not to GPIO or a regulated rail.
  • Use a suitable driver for motors. Never power a motor from a GPIO pin.
  • Use an appropriately sized external supply when motor current or electrical noise exceeds what the board can safely provide, and establish common GND where the driver design requires it.
ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open

Ohm’s Law for Arduino circuits

Ohm’s Law relates voltage, current, and resistance: V = I × R. Use it to predict current, choose a starting resistor value, and check whether a circuit is plausible before applying power.

Preview concept details
  • Name the values and units before calculating: voltage in volts (V), current in amperes (A), and resistance in ohms (Ω).
  • Rearrange the same relationship for the unknown: I = V ÷ R, R = V ÷ I, or V = I × R.
  • Convert milliamperes to amperes before using the formula: 10 mA = 0.010 A and 20 mA = 0.020 A.
  • For an LED resistor, use the voltage across the resistor—not the full supply voltage: R = (Vsupply − VLED) ÷ ILED.
  • Check resistor power with P = V × I or P = I² × R, then select a standard resistor whose resistance and power rating are safely suitable.
Predict currentI = 5 V ÷ 1,000 Ω = 0.005 A = 5 mA

A 1 kΩ resistor across 5 V would carry 5 mA in the idealized calculation.

Choose an LED resistorR = (5 V − 2 V) ÷ 0.010 A = 300 Ω

Choose a suitable standard value at or above the calculation, such as 330 Ω, then verify the actual LED and board limits.

Check resistor powerP = 3 V × 0.010 A = 0.030 W

The resistor dissipates about 30 mW in this example; confirm an adequate rated part with margin.

ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open

Electromagnetism turns current into motion

Current through a coil creates a magnetic field. Motors arrange changing magnetic fields so electrical energy produces rotation or another controlled movement.

Preview concept details
  • A current-carrying wire creates a magnetic field; winding the wire into a coil concentrates that field.
  • Reversing current through the coil reverses its magnetic field. Motor mechanisms use changing field direction to keep producing torque.
  • A motor winding is an inductive load. When current is interrupted, the collapsing magnetic field can produce a voltage spike, so the switching circuit needs appropriate transient protection.
  • A motor converts electrical energy into mechanical motion, with some energy also becoming heat and sound.
ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open

Motor types solve different movement problems

A brushed DC motor, hobby servo, stepper motor, and vibration motor may all contain electromagnets, but they expose different interfaces and provide different kinds of control.

Preview concept details
  • Brushed DC motor: continuous rotation; reverse polarity to reverse direction; use PWM through a driver to vary average drive and approximate speed.
  • Hobby servo: integrated motor, gears, feedback electronics, and a signal interface; command position rather than switching the motor leads directly.
  • Stepper motor: multiple windings move in discrete steps; it requires a compatible driver and an ordered coil sequence or STEP/DIR interface.
  • Vibration motor: a small DC motor with an off-center mass; usually used for haptic feedback and commonly switched in one direction.
ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open

On/off, speed, and direction require different circuits

The behavior you need determines whether the interface can be a transistor switch, a PWM-controlled switch, or an H-bridge.

Preview concept details
  • One direction, on/off: use a properly rated transistor or MOSFET switch and the required flyback protection.
  • One direction, variable drive: apply PWM to the switching or driver input; do not connect the motor directly to the PWM pin.
  • Forward and reverse: use an H-bridge so the driver can reverse current through the motor.
  • Stopping is a design choice: coasting and electrical braking are different driver states and must be confirmed in the driver truth table.
  • Power motors from a supply matched to their voltage and current needs. Size for startup or stall current, not only no-load current, and share ground when the driver interface requires a common reference.
ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open

A motor driver separates control logic from motor power

A driver accepts low-current logic signals and switches a separate, higher-current motor circuit. The exact IC or module determines the supplies, inputs, outputs, limits, jumpers, and protection required.

Preview concept details
  • Identify the logic supply, motor supply, ground, control inputs, enable inputs, and motor outputs before wiring.
  • For an L293D IC, VCC1 is the 5 V logic supply and VCC2 is the motor supply. The L293D is rated up to 600 mA per channel, but voltage drop, heat, and the motor’s stall current still determine suitability.
  • For an L298N module, Motor A uses ENA, IN1, and IN2; Motor B uses ENB, IN3, and IN4. Module regulator and enable-jumper behavior varies, so verify the exact board rather than relying on a generic red-module diagram.
  • One possible Uno mapping is D5 (PWM) to ENA and D7/D8 to IN1/IN2. The motor connects only to the driver outputs; the motor supply is external; Arduino and driver share GND.
  • Power off before rewiring. Never connect a driver output or motor lead to an Arduino GPIO pin.
ConceptReferenceSupporting reference
Supporting reference—not independently mapped
Open