Summer 2026
Embedded Systems & Physical Computing

A Bluetooth-controlled Grand Prix car combining a bouncing 3D-printed body with ESP32 electronics and sound-reactive RGB lighting.
ESP32 Car
overview
Built for the DE1 Electronics 1 Grand Prix, this team project challenged us to design a small electric car controlled by an ESP32 and programmed in MicroPython. We chose to prioritise its appearance and movement over outright speed, creating a car that could bounce up and down as well as drive.
I programmed the sound-reactive lighting in MicroPython using the Mu editor, connecting a microphone circuit with two op-amps to two sets of eight NeoPixel RGB LEDs. The wheel motors were controlled by a separate ESP32, also running MicroPython, with driving commands sent from the Bluefruit phone app over Bluetooth.
deliverables
Embedded Systems
Bluetooth Control
Sound-reactive Lighting
Prototyping
01 - Research
Exploring ESP32 control, motor-driven movement and sound-reactive lighting.
about
The Grand Prix brief required an electric car controlled by an ESP32 and programmed in MicroPython. Our team used this as a starting point for a design centred on visual character, with bouncing movement and lighting alongside the wheel drive.
Early experiments explored the microphone signal, LED response and breadboard connections. The lighting system used a microphone with two op-amps and two sets of eight NeoPixel RGB LEDs, while a separate ESP32 handled the wheel motors.
02 - Development
Developing Bluetooth control and calibrating the sound-reactive lighting.
about
I used the Mu editor to write the lighting code in MicroPython. We calibrated the microphone signal and refined the beat detection so that changes in sound could trigger the LEDs. The code establishes a baseline and background noise level before comparing signal peaks with a running average.
The Bluefruit phone app provided Bluetooth driving commands to the wheel-control ESP32. Alongside this, the lighting code used beat-triggered colour changes and animated bursts, with a cooldown to avoid repeatedly triggering from the same peak.
03 - Final system
Integrating the printed body, bouncing mechanism, wheel drive and reactive lighting.
about
The finished prototype combines phone-controlled driving with motors housed inside a 3D-printed body that move the car up and down. Separate ESP32 controllers run the wheel drive and sound-reactive lighting, both using MicroPython.
Two sets of eight NeoPixel RGB LEDs respond to the microphone input with colour changes and animated bursts. The working beat detection and bouncing body give the car the visual character we set out to achieve for our Grand Prix entry.
nicholas elton
menu
close










