Github link: https://github.com/anhhoangvu/ENGI301/tree/master/Project%20I
Project Overview
The project was started with 2 big goals:
- Replicate the metronome with vibrations instead of sound in a wearable device.
- The device should also react to surrounding sound.
"Haptic-Tempo" is a rigorous implementation of Asynchronous Wearable-Metronome Forensics and Acoustic-FFT Spectral-Analytics. Designed as a non-intrusive temporal-reference platform, the system utilizes the PocketBeagle's embedded-Linux architecture to execute real-time haptic-feedback heuristics. The project explores the sophisticated mapping of environmental acoustic-transients into deterministic vibrational-pulses, implementing a Fast-Fourier Transform (FFT) Heuristic to isolate low/mid/high frequency bands and modulate a tripartite RGB-LED vector. The build emphasizes audio A/D-conversion forensics, I2C-bus telemetry, and wearable-ergonomic diagnostics.
Breadboard prototyping
With the two goals in mind, initial components are obtained and prototyped on a breadboard for proof of concept as shown below. The LCD is controlled using I2C protocol. The RBG LED is driven by 3 GPIO pins (one for each color) connected to 1k Ohms resistors and a common 3.3V. The button is a micro roller button with standard contact when pressed between the middle pin and either corner pin. The microphone's 3.5 mm jack is connected to an audio converter with a usb connection, which is subsequently converted into a microusb breakout board. All the components are controlled by the PocketBeagle.

Technical Deep-Dive & Software Prototyping
The prototype is then tested by directly connecting the set up to a laptop and upload the code.
In general, audio input is obtained from the microphone using alsaaudio (helpful post: https://stackoverflow.com/questions/6867675/audio-recording-in-python).
- Acoustic-FFT Forensics & Spectral Analytics:
- The Alsaaudio Acquisition Hub: Utilizing a USB-interface microphone to capture high-fidelity ambient waveforms. Forensics involve the measurement of the "Signal-to-Noise Ratio (SNR)"; the system pipes raw PCM audio-streams into an array-buffer for processing. The diagnostics focus on "Python-SciPy FFT Analytics," decomposing the temporal audio-vector into discrete frequency-bins to isolate distinct percussion or instrumental harmonics.
- Multi-Modal Actuation Orchestration: Mapping the FFT-vectors to physical logic-outputs. Forensics include the verification of "Spectral-Responsivity"; the PocketBeagle triggers specific GPIO-pins to actuate an RGB LED, providing visual-frequency diagnostics while simultaneously driving the primary haptic-motor for tempo-persistence.
The audio is then very crudely analyzed using a real fast fourier transform (https://docs.scipy.org/doc/numpy/reference/routines.fft.html) to be separate into the low, mid and high frequencies band to be reflected by the 3 colors of the LED.
- Haptic-Temporal & I2C-Bus Aesthetics:
- Vibrational-Pulse Diagnostics: Utilizing a high-torque pager-motor for tactile-feedback. Forensics focus on "PWM-Modulation Envelope," ensuring the haptic-transients provide distinct, syncopated rhythm-diagnostics without inducing excessive mechanical-resonance in the armband chassis.
- 7-Segment I2C-Rasterization: Utilizing a 2-wire serial-bus to display real-time Beats-Per-Minute (BPM) telemetry. The diagnostics focus on "Display-Refresh Latency," absolute for maintaining visual tempo-synchronicity during high-BPM orchestrations.
Engineering & Implementation: Assembly into final device
After confirming the software perform as expected, the circuits are assimilated into an elastic armband. The armband has a pocket that can store the hardware, about the size of a phone.

Everything is then stuffed inside the pocket of the armband and worn on the bicep. A pocket knife is then used to make some cut in the arm band to free the screen, button, LED and connection for the microphone and power outlet.
Embedded-Linux & Boot-Cycle Forensics:
- Crontab Execution Analytics: Attempting to establish an auto-boot sequence for the Python logic-engine. Forensics include the measurement of "Audio-Device Enumeration Latency"; the system requires meticulous ALSA-mixer configuration to ensure the microphone node is fully initialized before the FFT-heuristic executes, highlighting a critical area for operational-persistence diagnostics.
- Wearable-Chassis Integrity: Modifying a sport-armband to house the 10,000mAh structural-power-node and logic-frame. Forensics focus on "Thermal-Dissipation Analytics" and "Mechanical-Strain Relief," ensuring reliable operation during dynamic physical-activities.
System-Logic & Workflow Heuristics:
- The implementation demonstrates an "Advanced DSP-Aesthetic," transitioning from simple microcontroller-polling to complex FFT-array manipulation on an embedded OS. Forensics include the measurement of the "Processing-Overhead Jitter," absolute for maintaining deterministic temporal-feedback in musical-diagnostics.
The final assembled product can be shown below.
Future Directions
There are two main concerns with the current device:
- The device is not autobootable when alsaaudio is used. crontab is used but only works when the audio portion of the code is commented out. Future work is needed to get the device to work properly.
- The LED is not very responsive to the surrounding sound yet. There are detectable changes but the changes are very minimal. Alsamixer should be explore for a high level sound detecting mechanism instead of analyzing the sound using only fourier transform.
Conclusion
Haptic-Tempo represents the pinnacle of Asynchronous Acoustic-Haptic Diagnostics. By mastering FFT-Spectral Forensics and Embedded-Linux Orchestration Heuristics, hoangvu has delivered a robust, professional-grade temporal framework that provides absolute rhythmic-clarity through sophisticated multi-modal diagnostics.
Temporal Persistence: Mastering rhythm telemetry through acoustic-FFT forensics.