RunningMate: Smart Music Selector
Senior Design Project: EECS 452 (Digital Signal Processing) | January 2022 - May 2022
I was part of a team that created a custom fitness wearable capable of choosing and playing a song based on the user's biometrics and current exercise movements. The wearable reads the user's heart rate, motion frequency, and skin temperature to determine an exertion rating. The chosen song is then chosen to match its tempo with the user's exertion. The project was successfully demonstrated at our senior design expo.
I was responsible for the electrical and mechanical design and fabrication along with most of the software. Another member helped with the sensor input filtering.
Video of Song Change: Movement Based Switching
I was responsible for the electrical and mechanical design and fabrication along with most of the software. Another member helped with the sensor input filtering.
Video of Song Change: Movement Based Switching
Electronics:
- Miniature printed circuit board containing a microprocessor, heart rate sensor, IMU, temperature sensor, 2.4GHz wireless communications hardware, and SD card memory expansion
- Display is done using a touchscreen to display user biometric and song data
- Housing contains all electrical components including a miniature battery
- Wearable uses a Garmin watch strap
- Software runs using a real-time operating system to organize tasks
- Sensor data is filtered to determine dominant frequency and calculate user exertion
- Songs are streamed to an audio output source from the SD card
- Songs are stored in a custom compressed format
- Streaming from SD card is achieved using a ping-pong buffer to eliminate audible dead time
- Audio output can be done using either on-board Bluetooth or wired output through a rudimentary delta-sigma analog-digital converter using a variable duty-cycle PWM signal and a low-pass filter