top of page

Bluetooth Pomodoro Speaker

Portable Bluetooth speaker and productivity timer designed from concept through fabrication.

Embedded Systems · Acoustic Design · CAD · Fabrication | May - June 2026

Overview

I designed and built a portable Bluetooth speaker that integrates audio playback with a Pomodoro productivity timer. The system combines an ESP32 microcontroller, I2S digital audio amplification, an OLED timer display, LED mode indicators, rechargeable battery power, and physical controls within a custom wooden enclosure. The Pomodoro timer cycles between 25-minute work sessions and 5-minute breaks, with a 30-minute break after every fourth session. An OLED screen shows the current mode and time remaining, a green or red LED shows whether it's work or break time, and a button resets the timer. The project involved the complete design process from acoustic enclosure modeling and CAD to circuit prototyping, embedded programming, fabrication, assembly, and debugging.  

Project Details

Solo Project : Design & Fabrication

Tools

SolidWorks · WinISD · Arduino IDE · Fritzer

Hardware

ESP32 · I2S Amplifier · OLED Display · Rechargeable Battery System

Fabrication

CNC Routing · Laser Cutting · Manual Woodworking · Soldering

Skills

CAD · Acoustic Modeling · Embedded Systems · Circuit Integration · Prototyping

CAD render of a tall rectangular Bluetooth speaker enclosure with a side-mounted driver and small front control panel

Mechanical Design Considerations

Acoustic Volume

The ~4.01 L gross chamber volume carried the acoustic requirements established in WinISD into the physical enclosure design.

Acoustic Simulation

I used WinISD to model the selected Dayton Audio full-range driver and evaluate its behavior in a sealed enclosure. Using the driver's Thiele/Small parameters, I examined how enclosure volume influenced the system's frequency response. This simulation provided a quantitative starting point for the enclosure design. 

WinISD Freq response.png

Simulated Frequency Response
WinISD simulation of the sealed loudspeaker system, used to evaluate low-frequency roll-off and the effect of the enclosure on driver response.

Enclosure Design and CAD

Internal Proportions

Unequal 108 × 175 × 212 mm dimensions were used to separate the chamber's principal standing-wave dimensions.

108 × 175 × 212 mm

Dimensioned CAD Drawing

Internal Volume.png

Enclosure Volume
The modeled enclosure volume established the internal-space requirement that was carried forward into the mechanical design of the cabinet.

≈ 4.01 L internal volume

Component Packaging

The enclosure also required space for the ESP32, amplifier, battery/power electronics, OLED, LEDs, controls, and internal wiring without unnecessarily reducing the acoustic chamber volume.

Wire Routing

Cutouts through the internal separators provided paths for the speaker wiring while keeping the acoustic chambers and electronics layout organized.

Electronics & System Integration

The complete electrical system was designed around a shared regulated power supply and common ground, allowing the audio, control, and user-interface subsystems to operate together from the onboard battery system.

​

The Arduino IDE code turns an ESP32 into a Bluetooth speaker with a built-in Pomodoro timer. It receives music from a phone over Bluetooth and sends it to a class D amplifier that drives the speaker. At the same time, it controls the Pomodoro timer and displays the mode and remaining time using the OLED display and LED indicators.

Audio System

Bluetooth → ESP32 → I²S → MAX98357A → Drivers
Decoded audio is transmitted digitally to the MAX98357A amplifier using I²S, which drives the full-range speakers.

User Interface

A 128 × 64 OLED displays the timer, while green/red LEDs indicate status. A physical push button resets the sequence.

ESP32-WROVER

Bluetooth + control

MAX98357A

I²S amplification

OLED

Timer interface

LEDs + Button

Physical interface

Battery + Boost

Rechargeable 5 V supply.

Manufacturing & Assembly

My original plan was to laser cut the enclosure panels directly from the CAD geometry. However, during fabrication, the plywood proved too thick for the available laser cutter to reliably cut through. Although the laser could trace the required geometry, it did not fully penetrate the material, requiring me to change the manufacturing approach to CNC machining. Because this occurred near the end of the school year, my remaining access to the shop was limited. I machined as many of the remaining components as possible before losing access to the equipment.

IMG_0569.jpeg
IMG_0607.jpeg

After the school year ended, I brought the unfinished enclosure home to complete the build. At that point, I no longer had access to the laser cutter or CNC router, and my available woodworking equipment was limited to a hand saw. I therefore cut the remaining enclosure pieces manually. The hand-cut components were functional, but they did not achieve the dimensional accuracy or edge quality of the digitally fabricated parts. This is the primary reason the finished enclosure is less visually clean and precise than the Solidworks model.

Prototyping & Testing

During prototyping, I encountered intermittent static and distorted audio caused in part by unreliable breadboard connections and grounding. To improve reliability, I soldered several of the breadboard connections to establish a more secure common ground between the ESP32, amplifier, and power supply. Testing the complete system outside the enclosure kept the electronics accessible and allowed these issues to be identified and resolved before final installation.

Final Prototype & Reflection

The completed prototype successfully integrates Bluetooth audio playback, a functional Pomodoro timer, visual status indicators, and portable battery power within a single custom enclosure. The final system connects wirelessly to a phone or computer for audio playback while independently cycling through work and rest periods on the ESP32. Although manufacturing limitations affected the cosmetic finish of the enclosure, the prototype achieved the project's primary objective: developing a compact, self-contained study speaker while taking the design from acoustic simulation and CAD through electronics, firmware, fabrication, and final system integration.

Final System

Bluetooth Audio

Wireless audio playback through the ESP32 and I²S amplifier.

Custom Enclosure

~4 L sealed acoustic chamber designed through WinISD modeling and SolidWorks CAD.

Future Improvements

A second iteration would focus on improving both manufacturing quality and acoustic performance. I would design the enclosure around a verified manufacturing process from the beginning and complete all precision-critical panel cuts using CNC equipment rather than transitioning between fabrication methods. Acoustically, I would investigate a larger or revised enclosure alignment to reduce the relatively high Qtc = 1.119 and extend the response below the current ~87 Hz F3. I would also improve the internal electronics implementation through cleaner permanent wiring or a custom PCB and perform physical acoustic measurements to compare the completed speaker against the original WinISD predictions.

Pomodoro Timer

25-minute work and 5-minute rest periods with a 30-minute long break after four work cycles.

User Interface

OLED countdown display with dedicated work/rest LED indicators and physical reset control.

Portable Power

Rechargeable battery system with regulated system power and master on/off control.

bottom of page