Projects for everyone

Copyrighted materials. All of the projects on this website are provided freely for personal use only. A written permission is required for an organization to use this material in public or if there is any charge to the student whether it is for profit or not. Email to copyright@robotsforfun.com to request permission for using this material.

Check out these sources for getting your parts to build all of these projects.

Click here for the teacher's instructions. And here for 中文.


Projects Level Hardware Stuff You'll Learn Software Stuff You'll Learn

Outputs
1 My First Arduino Project Beginner Arduino IDE, LED setup, loop, ; (semicolon), { } (curly braces),
// and /* */ (comments),
pinMode, OUTPUT,
digitalWrite, HIGH and LOW, delay
2 Making music Beginner digital output pin, buzzer, breadboard tone, noTone, #define, #include, functions
3 External LED Beginner Arduino IDE, LED, resistor, breadboard int (variable declaration),
= (variable assignment)
4 Two LEDs Beginner LED, resistor, breadboard int (variable declaration),
= (variable assignment)
5 Fading LED Beginner analog output pin, LED, resistor, breadboard analogWrite, for, ++ (increment),
- - (decrement), <, >=

Inputs
6 Potentiometer Beginner potentiometer analogRead, Serial.begin, Serial.write, if, else
7 Push button Beginner push button, internal pull-up and pull-down resistors digitalRead,
INPUT, OUTPUT, if, ==, random, while
8 4x3 Keypad Intermediate Keypad #include, Keypad library

Displays
9 RGB LED Beginner RGB LED analogWrite, for
10 7-segment LED display Beginner 7-segment LED display functions, random
11 Rainbow lights Intermediate RGB LED ring, WS2812 #include, WS2812_RobotsForFun library
12 8x7-segment LED displays Advance 3/4-digit 7-segment LED displays, MAX7219 #include, LedControl library
13 8x8 dot maxtrix LED display Advance 8x8 dot matrix, MAX7219 #include, LedControl library
14 Liquid Crystal Display (LCD) Advance LCD display LiquidCrystal library, functions
15 Organic LED (OLED) display Advance OLED display U8glib library, functions

Sensors
16 Light sensor Beginner photo resistor analogRead, Serial.begin, Serial.println, if, else
17 Tilt sensor Beginner tilt sensor, internal pull-up and pull-down resistors pinMode, digitalRead
18 IR black/white/object sensor Beginner Object sensor and black/white sensor digitalRead
19 Ultrasonic distance sensor Beginner Distance sensor delayMicroseconds, pulseIn, functions
20 Motion sensor Beginner Motion sensor digitalRead, if, else
21 Sound sensor Beginner Sense when there is sound digitalRead
22 Temperature and Humidity sensor Intermediate Temperature and Humidity sensor #include, DHT library
23 Color sensor Intermediate Sense the color of an object
24 Gas sensor Intermediate Sense flammable gas
25 Magnetic compass Advance Sense the earth's magnetic fields
26 Gyroscope and accelorometer Advance Sense the spin, tilt, and acceleration of an object #include, MPU6050_RobotsForFun library

Motors and electromagnets
27 Servo motor Beginner Servo motor #include, Servo.h library, attach, write, for
28 Stepper motor Intermediate Stepper motor
29 Robot car chassis Intermediate
30 DC motor Intermediate DC motor
31 Robot car Intermediate
32 Electromagnet Intermediate Electromagnet, transistor, diode
33 Relay Intermediate Relay, high voltage

Clock, audio, and data saving
34 Internet NTP clock Beginner Network Time Protocol (NTP) clock DateTime_RobotsForFun library
35 Real-time clock Intermediate Real-time clock I2C protocol, Wire library, Time_master library
36 EEPROM Beginner EEPROM library, non-volatile memory
37 SD Card Intermediate SD card SPI library, SD library
38 Audio Player with SD Card Advance DFPlayer Mini audio player DFPlayer library

Communication
39 WiFi and the Internet Of Things (IOT) Advance ESP8266 WiFi_RobotsForFun library, Web page, HTML
40 Serial (RS232) Communication Advance SoftwareSerial library
41 Bluetooth Advance HC-05/06 Bluetooth library
42 I2C protocol Advance I2C protocol
43 Over The Air (OTA) upload Advance ESP8266

Full projects
44 Lights for your Wheels Intermediate RGB LED, WS2812, buttons, buzzer WS2812_RobotsForFun library
45 Clock with no Knobs Advance ESP8266 WiFi, 7-segment displays WiFi_RobotsForFun library, LedControl library
46 Self Balancing Robot Advance Gyroscope and accelerometer, H-bridge, motors MPU6050_RobotsForFun library, PID library
47 Robotic arm Advance ESP8266, stepper motor, servo motor, RGB LED Web page, HTML
48 Wireless Analog Data Acquisition System Advance Bluetooth, FPGA, microcontrollers Android




Getting the Parts

Check out these sources for getting your parts to build all of these projects.