Hardware/software for a bluetooth splitter + iphone app, and custom bluetooth speaker presented at Imagine RIT 2024
Have questions? Feel free to make a new issue, Also ⭐ this repo!
demo2.mp4
Name | Purpose |
---|---|
app | Custom app for selecting speakers to connect to |
imgs | Images, docs and old source code |
include | PlatormIO Folder for maunually adding dependencies |
lib | PlatormIO Folder for maunually adding dependencies |
src | Firmware and docs for a bluetooth splitter & speaker |
partition-more-pgrm-mem.csv | Memory configuration file for esp32 |
platformio.ini | PlatformIO configuration file |
Most common speakers operate off of similar principles. A magnet, a coil, and a cone shaped diaphragm. To get louder and or/higher quality, one can improve these three parts, usually increasing size and complexity at a higher cost. But there has been a recent breakthrough in speaker technology that has not been explored to its new potential. Invented in 1960s, the tactile transducer, also known as a "shaker", has been mostly used in bass speakers, but new innovations by Dayton Audio have increased the frequency range, and decreased the power consumption. This enabling device has started making it's way into high end equipment, but has not yet seen the light of low cost opportunities.
Distributed Mode Loudspeakers, first developed by NXP in 1960, use this type of exciter combined with a panel to produce distibuted sound rather then directed as with conventional speakers.
This project aims to reveal how to create low cost high performant speakers by extending techniques and resources discovered by Tech Ingredients, utilizing the ESP32 development platform, Ptchzults bluetooth a2dc library, and an efficiant i2s dac amplifier.
Cost to produce one speaker: $6/ESP32 + $10/transducer + $5/amplifier + Free cardboard
- Buy the parts, Download and setup an VScode with platformIO
git clone https://github.com/BarakBinyamin/speakers.git
No app is needed if you're just trying to make the speaker
- Wire up the speaker
-
Open the speakers folder in vscode and Click the PlatformIO >speaker>upload
-
Connect to "rockz speaker" from your phone and play some music 🎵
In order to build the app you need macOS with Xcode & some other dependencies
- Two or more ESP32 dev board's
- Max98357 i2s DAC Amplifier
- Breadboard's
- Breadboard Jumper Wires
- Soldering Iron
- Dayton Audio Transducers With Sticky Frame
Check out the difference between chipsets, basically s3's have 2 cores, s2's have 1 core, S2 WROVERS's have extra ram (accessible with extra work) vs S2 WROOM's
- Nodejs
- VScode
- PlatformIO for VScode, check out this link if you have issues finding the esp32 when its plugged in
- Rui & Sarah Santos ESP32 Tutorials
- Simple ESP32 bluetooth/i2s library by @pschatzmann
- Fritzing Arduino diagram/pcb tool
- Fritzing esp32 board, DOIT Esp32 DevKit v1 improved.fzpz
- PlatformIO with multiple main
- Converting videos to make them smaller (<10mb) for github
- Professor Yang's guidance on data communications
- Dr. Kwasinski's unpublished notes data communications
- Tech Ingredients Reserach On Speakers Distributed Mode Loudspeakers