Summary of Race Lights Reaction Timer
This project is a portable reaction speed game inspired by Formula 1 race start lights, allowing two players to compete. The final design features an external powerbank for easy charging and swapped button casings for better usability. It utilizes an Arduino Uno, LED strips, an OLED display, and tactile switches housed in a custom MDF and 3D-printed casing with laser-cut components.
Parts used in the Race Lights Reaction Timer:
- Arduino Uno
- Approximately 20 jumper cables
- Piezo buzzer
- 2x WS2812B LED strip (5 leds each)
- OLED Display 128*32 pixels
- 2x 6x6x4.3mm TACT Switch Push Button
- USB-A to USB-B cable
- USB Powerbank
- 2x Paperclips
- MDF wood (4mm thickness)
- Laser cutter
- 3D printer
This project is a small game you can play with another player. You can time your reaction speed and compete with your friend. The game is inspired by the start lights of a formula 1 race.

Earlier Iterations:
The images above are of earlier iterations of certain components and the casing.
In the original idea, the powerbank was located inside the casing. But in the final product, I placed it outside so that the user can charge or swap it out easily.
The starting lights used to be on top, but that prevented the lid from opening, so I moved the cables through the backside.
The buttons used to be without casing which made them kind of difficult to press, so I made a casing for them.
Supplies
Hardware:
- 1x Arduino Uno.
- ~20x jumper cables.
- 1x Piezo buzzer.
- 2x WS2812B LED strip 5 leds.
- 1x OLED Display 128*32 pixels.
- 2x 6x6x4.3mm TACT Switch Push Button for Arduino.
- 1x USB-A to USB-B cable.
- 1x USB Powerbank.
- 2x Paperclips
- A lasercutter
- A 3D printer
Step 1: Cut Out the Casing

Use the attached file called “Startlights Case Lasercutter.ai” to cut out the casing.
The design was made for 4mm MDF.
When all the pieces have been cut out, glue them together and place a paperclip through the hinges so that they will not seperate when turning the lid.
Step 2: Print the Startlights and Buttoncasing

Use the attached files to print out the startlights and the buttoncasing. You will need 5 startlights and 2 buttoncasings.
Each startlight has a front and a back that will have to be glued together after printing.
Step 3: The Circuit

Use the image above to create the circuit and put it all inside the casing as follows:
- The Arduino and PCB go inside the box.
- Put the buzzer in the circular hole in the back.
- Pull the cables for the OLED display thorugh the rectangular hole in the front. (Under the text “Reaction time:”)
- Pull the 2 cables for the buttons through the lower-front holes of each side respectively.
- Put the buttons in the 3D printed button casings like in the image above.
- Pull the cables for both LED strips through the rectangular hole in the back. You can now put the LED strips through the 5 starting lights like in the picture above.
Step 4: Gluing Components

There are a couple components that have to be glued to the casing.
- Glue the 5 starting lights to the top of the box.
- Glue the OLED display to the front of the box, under the text “Reaction time:”
Source: Race Lights Reaction Timer
- Why was the powerbank moved outside the casing?
The original idea placed it inside, but moving it outside allows the user to charge or swap it out easily. - How were the starting lights positioned in the final design?
The lights were moved from the top to the backside so that the lid could open without obstruction. - What modification was made to the buttons?
Casings were added to the buttons because the uncased versions were difficult to press. - What material was used for the laser-cut casing?
The design was made for 4mm MDF wood. - How are the hinges secured in the casing?
A paperclip is placed through the hinges to prevent them from separating when turning the lid. - Where is the OLED display glued on the box?
The display is glued to the front of the box under the text Reaction time. - How many startlights are required for printing?
You will need 5 startlights for the project. - What tool is used to cut the casing pieces?
A laser cutter is used to cut the casing based on the provided AI file.
