June 2026
This was a group project for an internal client during my second year of MCT. We built a reaction game that combines a website with four smart, color-coded cones. The screen tells the player what to do, and the player answers by tapping the right cone. It has four game modes and is designed to be fun and easy to use for people of all ages and physical abilities.
The client wanted a way for anyone to test and improve their reaction speed, whatever their age or physical ability. That meant the game had to be easy to understand, work for both fast and slower players, and have enough variety to stay fun. We also needed physical cones that could reliably detect a tap, give instant feedback, run on batteries and communicate with a central system in real time.
A Raspberry Pi is the center of the system. It hosts the game's website locally and communicates with the four cones over WiFi. Each cone has an ESP32 microcontroller that runs its logic and sends and receives data from the Pi. A time-of-flight (ToF) sensor inside the cone detects when a player taps it, and a buzzer plays sounds as feedback. An RGB light shows the battery status, and the built-in battery means the cones can be placed anywhere without cables.
We built four game modes on top of this hardware. In Speed Reflex, a color appears on screen and the player taps the matching cone as fast as possible. Memory Game shows a series of colors, and the player taps the cones in the same order. Calm Colors works like Speed Reflex but has no time limit, so everyone can play at their own pace. In Merge Colors, a color appears on screen and the player taps the two cones whose colors, mixed like paint, make that color.
The finished game runs locally and combines hardware and software in one experience. The four modes suit different players: Speed Reflex and Memory Game test reaction speed and memory, Calm Colors is a no-pressure option for people who need more time, and Merge Colors adds a creative, puzzle-like twist. The project gave us hands-on experience working for a client, working as a team, and connecting embedded hardware to a web application.