Project by Stuart O’Connor, Raleigh, NC.
I am a serious fan of Formula 1 racing. I am fascinated by the speed of the cars, but also the speed of the driver’s reflexes when they start the race. Watch it to see what I mean!
I decided to make a game out of the starting lights of a Formula 1 race. I wanted to test my reflexes and to compete against my friends.
My game mimics the Formula 1 start as much as possible, with the lights and also sounds from the included buzzer. All that is missing is a checkered flag.
This game is great for all ages, kids and adults alike and can be played by one person or two players. I really hope you enjoy building and playing with this project, and testing your reflexes.
My best time is 0.17s. Can you beat me?

The project can also be viewed on Autodesk Instructables.
Supplies
You will need an Arduino IDE account to use my code.
All the hardware and materials I used are linked* below:
- 1x Arduino UNO R3**
- 1x 830 pin breadboard**
- 1x 400 pin breadboard
- 5x Red LEDs**
- 5x 220 ohm resistors**
- 2x Push Buttons (or use smaller push buttons** found in the Elegoo Uno Super Starter Kit)
- 1x 16×2 LCD Screen**
- 1x Active Buzzer**
- 1x 3 pin 10k potentiometer (We don’t like the pot Stuart uses or the one in the Super Starter Kit. Phase Dock typically uses these 10k pots with knobs.)
- 1x 9V Battery**
- 1x Phase Dock 1007 Workbench base
- 1x Arduino Uno Slide/Click combo
- 1x 2×3 Click connector for the 400 pin breadboard
- 1x 1×2 Click connector for the battery
- 1x 830 pin breadboard mounting platform
*Phase Dock Note: We receive a tiny commission if you use these links to Amazon.
**Consider purchasing an ELEGOO UNO Project Super Starter Kit. It will have all of the “double-starred” electronic components Stuart listed, plus the Dupont/jumper wires you will need.

Build the Project
Step 1: Lights
We will first start off with the LEDs. They are used to tell the user when to press the button. Just like the official start of a Formula 1 race, they will turn on one at a time, and then turn off all at once.
- Place the 5 Red LEDs in parallel with each other. Leave a one or two pin gap in between each LED for spacing.
- Connect a 220 ohm resistor in series to each LED.
- Make sure the LEDs are connected to ground.
- Connect the LEDs to pins 2-6 on the Arduino as shown here.

Step 2: Buttons
The next step is to add the buttons. They are essential for user input. I like the bigger buttons linked above because they are easy to use and see. I can customize the color of the buttons, too! If you have smaller buttons, they will work fine here as well.
- Place the buttons on either side of the LEDs as shown in the picture.
- Connect the left button to pin A1 (digital pin 15)
- Connect the right button to pin A0 (digital pin 14).
- Connect the other end of the button to ground.

Step 3: LCD Screen
The LCD screen is used to communicate with the user. It is used to show the reaction time, which button was pressed, tells the user how the game is played, and asks how many people are playing.
- Place the LCD Screen on the smaller breadboard.
- Connect the middle pin of the potentiometer to pin 3 on the display.
- Connect the other ends of the potentiometer to power and ground, respectively.
- The potentiometer controls the brightness of the display, but once it is set, you will not have to mess with it every time you play the game.
- We will be using pins 7-12 on the Arduino to connect to pins 4, 6, 11-14 on the screen.
- Follow the schematic shown to wire correctly.

Step 4: Buzzer
The buzzer makes the game more dynamic and adds sounds that play when each of the lights turns on. This sound is very similar to the sound made during an actual F1 race.
- Use pin 13 on the Arduino to connect to the positive end of the buzzer.
- Connect the other end of the buzzer to ground.
- Make sure you connect your ground and power connections to the GND and +5V pins on the Arduino, respectively.
Below is a quick video of the light sequence so you can hear the sounds.
Step 5: Code
- Download the .ino file
- Open the Arduino IDE
- Click “File” > “Open”
- Click the file titled “F1LightGame.ino”
- Plug in your Arduino
- Upload the code to the Arduino.
Step 6: Phase Dock Workbench (OPTIONAL)
If you are using the Phase Dock Workbench to organize your project, I recommend the following layout.
The 830 pin breadboard with the LEDs and the buttons should be at the bottom of the WorkBench. Start by sticking the 830 pin breadboard to the clear mounting platform, and attach using the small holes on the WorkBench.
Use a 2×3 Click connector and stick the breadboard to the top of the platform using the two-sided tape on the breadboard. Push the LCD screen into the breadboard, and place the breadboard/screen combo above the LEDs.
Next, assemble the 2×3 Click connector and the Arduino Slide adapter. Attach the Arduino and click the adapter into the WorkBench Base. The Arduino should be beside the screen and above the LEDs.
Finally, use the 1×2 Click connector and attach the battery to it. Place this next to the Arduino in the upper left corner of the WorkBench base.
I liked using the WorkBench system because it makes it easy to organize all of the hardware, and also makes it portable, so I can travel with it hassle-free.
Step 7: Play!
It’s lights out and away we go! It’s time to finally play the game! To see an example of people playing, see the video.
To start the game, first connect the battery to the Arduino. This will illuminate the screen, asking if one player or two players are playing, pointing to the corresponding button. Once a button is pressed, the screen tells the player/s how the game is played, and after 5 seconds, the lights will begin to turn on one at a time. Once all the lights are on, a random amount of time passes before all the lights turn off at the same time.
When the lights turn off, the player/s then press the button, and their reaction time is recorded. Reaction times are shown on the LCD screen, along with an arrow pointing to which button was pressed first. If you are playing alone, only the left button will work. Once the time is shown, the game will reset, and you can choose if you are playing alone or with a friend.
I hope you enjoyed building this project, and have fun playing with it!
Completed Project!





