Week 18: Project Development + Applications and Implications
Project Development
Our assignment:
Project Development: 1. Prepare drafts of your final project summary slide: (presentation.png, 1920x1080) and video clip; (presentation.mp4, 1080p HTML5, < ~minute, < ~25 MB) 2. put them in your root directory 2. check that they are linked in the final presentation schedule
Final Project Summary Slide: https://fabacademy.org/2026/labs/noda/students/angela-henderson/presentation.png
Final Project Video Clip: https://fabacademy.org/2026/labs/noda/students/angela-henderson/presentation.mp4
Applications and Implications
Our assignment:
Applications and Implications: Plan a final project masterpiece that integrates the range of units covered, answering...
What will it do?
For my final project, I will make a movement-based music player. This interactive gadget will function as a device that plays music and responds to shaking, tapping, and sudden motions to shuffle, play/pause, advance to next track, or go back to last track playing. The track title will display on an LCD screen with an OLED displaying user interface feedback. With rechargeable batteries and an integrated hookup for recharging, this gadget is suitable for off-grid use.
The device will:
-
act as a motion-sensing MP3 player allowing for backward, play/pause, forward, and shuffle based on motion
-
displays song track title playing on Grove LCD screen
-
displays interface feedback on OLED screen to verify motion detected
-
audio amplification circuit for boosting audio for speakers
-
include a Neopixel light display with responsivenes to music
-
include a couple of buttons for play/pause and forward track
-
enclose a rechargeable battery system
Who's done what beforehand? This project is far from an original idea. I am part of the growing body of hobbyist, makers, and people interested in DIY, simplified electronics like creating MP3 players so that you don't have to use your phone or big tech. Resources that I came across that sparked my interest and/or provided examples in this final iteration of the project include:
-
Kaled Souky's Retroy-Style MP3 Player on Arduino documentation here
-
justwag's DIY Solar Powered Pocket Radio documented on instructables (I really want to dig more into solar-power next and integrating this into design)
-
Matt Keeter did a Fab Boombox.
What sources will you use? There is lots of documentation on the various chips and modules my project uses. I first refer to datasheets and libraries
- XIAO ESP32-C3: datasheet
- ADXL343 Accelerometer: datasheet library
- LM386 audio amplifier: datasheet
- AMS1117 voltage regulator: datasheet
- NCP1117 voltage regulator: datasheet
- Battery Protection Module: product page
- DFPlayer Mini: datasheet library
- Neopixel strip: product page library
I also have found a number of guides and blogs online for additional code and set up support:
- ADXL343 Accelerometer: Adafruit guide
- DFPlayer Mini: ZBotic Post; Homemade Circuit Project; Hackster post on use with ESP32
- Neopixel strip: esp32 tutorial page; Arduino blog post on toggle on/off switch
What will you design? I will design:
-
an integrated main PCB with XIAO, accelerometer, power regulation, and outputs
-
a PCB that integrates an audio amplification circuit with the DFPlayer Mini
-
an enclosure for the device made from a combination of 3D printing, laser-cutting, and CNC milling
-
3D printed mounts, enclosures, and buttons for
-
decorative engravings and/or vinyl cut sticker (time permitting)
What materials and components will be used? Where will come from? How much will they cost?
See updated Bill of Materials below. Most of these materials we had on hand in the lab already. Some we ordered through DigiKey. At the moment, the estimated cost is ~$90.90.
Bill of Materials
Here is the current anticipated Bill of Materials for electronics. Much of this we already had around the lab. For final official bill of materials I will add in materials for encasing (3D printing filament, plywood).
| Component | Info | Quantity | Price | Total |
|---|---|---|---|---|
| Neopixel Strip | 2541 | 20 (LEDS) | $0.47 | $9.34 ➡ (I used part of a strip) |
| Speaker | OWS-434320TA-4A-W | 1 | $9.35 | $9.35 |
| JST Connector and Wire | YO-2503-2.0-Kit-HY | 10 | ~$0.37 | $3.70 |
| Accelerometor | ADXL343BCCZ | 1 | $3.69 | $3.69 |
| Linear Voltage Regulator 3.3V | AMS1117-3.3 SOT | 1 | $0.10 | $0.10 |
| Linear Voltage Regulator 5V | NCV1117ST50T3G | 1 | $0.59 | $0.59 |
| Audio Amplifier | LM386M-1 | 1 | $1.33 | $1.33 |
| Potentiometer | TEKFA4076 | 1 | $1.99 | $1.99 |
| M2 Screws and Socket | 0P7L4P97S1Z95 | 20 | ~$0.09 | $1.80 |
| XIAO ESP32-C3 | 113991054 | 1 | $4.99 | $4.99 |
| 12V Rechargeable Battery | L111A26-3-2-2W | 1 | $27.64 | $27.64 |
| Battery Protection Module | 18650 | 1 | $3.90 | $3.90 |
| DFPlayer Mini | DFR0299 | 1 | $6.88 | $6.88 |
| 8G SD Card | U1 5Units | 1 | $8.38 | $8.38 |
| Button | FSM2JSMA | 4 | $0.28 | $1.12 |
| Rocker Switch | GRB112D802BB | 1 | $4.54 | $4.54 |
| Resistors 0603 | PHH5-KIT | 4 | ~$0.01 | $0.04 ➡ Breakdown of resistors used: 10Ω (3), 470Ω (1) |
| Capacitor 1206 | 618202981142 | 12 | ~$0.01 | $0.12 ➡ Breakdown of capacitors used: 220nf (1),100nf (4), 10uF (1), 0.05uF (1), 10uF polarized(3), 250uF polarized (1), 1000uF polarized (1) |
| Current Total | $90.90 |
What parts and systems will be made?
-
Front and back panels for the enclosure of the device made from wood
-
middle layer for the enclosure of the device made from translucent 3D printing filament
-
main board control system with XIAO, motion sensing ADXL343 accelerometer system, power management system, and user interface system (buttons, LCD screen, OLED screen)
-
audio board with audio amplifier system and DFPlayer Mini hooked up to volume potentiometer and speker
What processes will be used?
-
Computer Aided Design: Using Fusion 360 to do 3D modelling; using Inkscape for laser cutting and prototyping
-
Additive manufacturing: 3D printing
-
Subtractive manufacturing: laser cutting and CNC milling machinne
-
Electronics Design and Production: designing PCBs in KiCAd, milling PCBs
-
Systems Integration: consolidating electronics design; using 3D printed enclosures and mounts, fixturing materials with press-fit with M2 screws for added security, planning for user interface (ex. SD card access, on/off switch, displaying information on screens)
What questions need to be answered? What about the design can be modified to improve the project now that I have decided not to use the magnotometer?
What are best practices for designing a device that can be both handheld and needs sturdiness to hold speaker and batteries that are a bit on the heavier and bulky side?
How do I best manage the timing and responsiveness of the code with interfacing the components at once?
How sensitive or not sensitive will I need to adjust the accelerometer so that there are not false detections?
How will it be evaluated? This project is fairly light-hearted and intended to add a fun motion-sensing element to playing music that I like. My primary motivations for the project are to personally learn from the process and have a functional device that will work in a year from now.
With that said, I'd consider success to be a music player device that reliably controls music outputs based on motion with an accompanying display that shows feedback of motion detection. I'd also want for the LED strip to be able to turn on and off with the button at the very least, but ideally it would correspond with the music.
Since shaking and motion is a part of the function, I will need to ensure that the device passes the "shake test" meaning secure and thoughtful integration and wire management.
Aesthetics is not my strongsuit so I won't evaluate myself on how pretty it looks but I do respect the need to go beyond a laser cut box type of design. I want to feel like I got to express some creativity and thoughtfulness in the final shape of it -- something that puts my own spin on a typical speaker/music player.
Though I am interested in playing more with sound, I am not evaluating myself as much by the actually quality of sound. But it should be decent.