We probably don’t need to tell the average Hackaday reader that the ESP32 is a powerful and extremely flexible microcontroller. We’ve seen some incredible projects using this affordable chip over the last few years, and by the looks of it, the best is yet to come. That’s because it always takes some time before the community can really figure out how to get the most out of a piece of hardware.
Take for example the Bluetooth audio player that [squix] was recently working on. Getting the music going was no problem with the esp32-a2dp library, but when he wanted to add some visualizations the audio quality took a serious hit. Realizing that his Fast Fourier transform (FFT) code was eating up too much processor power, it seemed like a great time for him to explore using the ESP32’s second core.
[squix] had avoided poking around with the dual-core nature of the ESP32 in the past, believing that the second core was busy handling the WiFi communication. But by using the FreeRTOS queue system, he wrote some code that collects audio data with one core and runs the actual FFT magic on the other. By balancing the workload like this, he’s able to drive the array of 64 WS2812B LEDs on the front of the Icon64 seen in the video after the break.
Even if you’re not terribly interested in running your own microcontroller disco, this project may be just the example you’ve been waiting for to help get your mind wrapped around multitasking on the ESP32. If you want to master a device with this many tricks up its sleeve, you’ll need all the help you can get.
Portable Bluetooth speakers have joined the club of ubiquitous personal electronics. What was once an expensive luxury is now widely accessible thanks to a prolific landscape of manufacturers mass producing speakers to fit every taste and budget. Some have even become branded promotional giveaway items. As a consequence, nowadays it’s not unusual to have a small collection of them, a fertile field for hacking.
But many surplus speakers are put on a shelf for “do something with it later” only to collect dust. Our main obstacle is a side effect of market diversity: with so many different speakers, a hack posted for one speaker wouldn’t apply to another. Some speakers are amenable to custom firmware, but only a small minority have attracted a software development community. It doesn’t help that most Bluetooth audio modules are opaque, their development toolchains difficult to obtain.
So what if we just take advantage of the best parts of these speakers: great audio fidelity, portability, and the polished look of a consumer good, to serves as the host for our own audio-based hacks. Let’s throw the Bluetooth overboard but embrace all those other things. Now hacking these boxes just requires a change of mindset and a little detective work. I’ll show you how to drop an Arduino into a cheap speaker as the blueprint for your own audio adventures.
Like many modern builds, this is very much a case of wiring together a series of off-the-shelf modules into a larger whole. A Tinyshine Bluetooth audio board is hooked up to a Dayton Audio Class D amplifier. Class D amplifiers are a great choice for any portable audio application for their compact size and good power efficiency. Power is supplied by a hand-built 3-cell 18650 pack, while a standard buck converter and battery protection board are subbed in to make sure the batteries stay happy.
Not wanting to skimp on audio quality, a pair of Dayton Audio full-range drivers are installed, negating the need for a crossover install, or multiple drivers per channel. There’s a third passive driver on the back side as well, though we’re not 100% clear on its purpose. If you’re clued in, let us know in the comments.
It’s a project that serves as a great blueprint for anyone wanting to build their own high-fidelity Bluetooth speaker. The relevant modules are all readily available – it’s just a case of hooking them up to a nice amp and a decent set of speakers. The design is all up to you – whether you go for a pipe, a bag, or something altogether entirely. Happy hacking!
We’ve always felt that sections of PVC pipe from the home improvement store are a criminally underutilized construction material, and it looks like [Troy Proffitt] feels the same way. Rather than trying to entirely 3D print the enclosure for his recently completed portable Bluetooth speaker, he combined printed parts with a piece of four inch pipe from the Home Depot.
While using PVC pipe naturally means your final hardware will have a distinctly cylindrical look, it does provide compelling advantages over trying to print the entire thing. For one, printing an enclosure this large would have taken hours or potentially even days. But by limiting the printed parts to accessories like the face plate, handle, and caps, [Troy] reduced that time considerably. Of course, even if you’re not in a rush, it’s worth mentioning that a PVC pipe will be far stronger than anything your desktop FDM printer is likely to squirt out.
[Troy] provides links for all the hardware he used, such as the speakers, tweeters, and the Bluetooth audio board itself. The system is powered by an 1800 mAh 3S RC-style battery pack that he says lasts for hours, though he also links to a wall adapter that can be used if you don’t mind being tethered. Unfortunately it doesn’t look like he has any internal shots of the build, but given the relatively short parts list, we imagine it’s all fairly straightforward inside.
While this is certainly a respectable looking build considering it started life in the plumbing aisle, we have to admit that we’ve seen some portable Bluetooth speakers with fully 3D printed enclosures in the past that looked absolutely phenomenal. The tradeoff seems pretty clear: reuse existing materials to save time, print them if you don’t mind reinventing the wheel occasionally.
Taking an old piece of gear and cramming it full of modern hardware is a very popular project. In fact, it’s one of the most common things we see here at Hackaday, especially in the Raspberry Pi era. The appeal is obvious: somebody has already done the hard work of designing and building an attractive enclosure, all you need to do is shoehorn your own gear into it. That being said, we know some of our beloved readers get upset when a vintage piece of gear gets sacrificed in the name of progress.
To start the process, [Freshanator] created a 3D model of the inside of the radio so all the components could be laid out virtually before anything was cut or fabricated. This included the design for the speaker box, which was ultimately 3D printed and then coated with a spray-on “liquid rubber” to seal it up. The upfront effort and time to design like this might be high, but it’s an excellent way to help ensure you don’t run into some roadblock halfway through the build.
Driving the speakers is a TPA3116-based amplifier board with integrated Bluetooth receiver, which has all of its buttons broken out to the front for easy access. [Freshanator] even went the extra mile and designed some labels for the front panel buttons to be made on a vinyl cutter. Unfortunately the cutter lacked the precision to make them small enough to actually go on the buttons, so they ended up getting placed above or next to them as space allowed.
The build was wrapped up with a fan installed at the peak of the front speaker grille to keep things cool. Oh, and there are lights. Because there’s always lights. In this case, some blue LEDs and strategically placed EL wire give the whole build an otherworldly glow.
With all due respect to the hackers and makers out there that provide us with all these awesome projects to salivate over, a good deal of them tend to prioritize functionality over aesthetics. Which isn’t a bad thing necessarily, and arguably better than the alternative. But for many people there’s a certain connotation around DIY, an impression that the final product is often a little rough around the edges. It’s usually cheaper, maybe even objectively better, but rarely more attractive.
Which makes builds like this absolutely beautiful 3D printed Bluetooth speaker by [Ahmsville] especially impressive. Not only did he engineer a fantastic sounding speaker that projects stereo sound no matter where you are in the room, he clearly gave a lot of thought into making the final product look as good as it sounds.
The 3D-printed enclosure provides separation for the four internal speakers and two passive radiators, as well as holding the electronics. A custom made 3S battery powers the Bluetooth module though an isolated step-down module, and the twin 18 W TDA2030 amplifiers feed their respective pair of drivers.
The device is surrounded by an impressively detailed 3D-printed mesh, which is then wrapped with some speaker grill fabric to give it a very professional look. In the video after the break, [Ahmsville] shows a time-lapse of building the speaker, as well as a demonstration of how it sounds on his desk.
This Bluetooth speaker is full of delightful surprises. The outer shell is an antique radio cabinet, but its practically empty interior is a combination of Dead Bug circuitry and modern BT receiver.
[PJ Allen] found the BT receiver on Groupon and decided to whip up amplifier and threshold detector circuits using only parts he already had in order to make this vintage-looking Bluetooth speaker. The cabinet is from a Silvertone Model 1955 circa 1936. Don’t worry, no antiques were harmed in the making of this hack, the cabinet was empty when he bought it.
The amplifiers, one per speaker, began life as a circuit from TI’s LM4871 datasheet. Some of the departures came about because he didn’t have the exact component values, even paralleling capacitors to get in the right range. The finished board is a delightful mix of “Dead Bug” and quasi-Manhattan style construction, “quasi” because he carved up the ground plane instead of laying pads on top of it.
Look at the front of the cabinet and you’ll see a rectangular display. Watch the video below and you’ll see that it throbs in time to the music. To do that he came up with a threshold detector circuit which started out based on a circuit from a Sharp/Optonica cassette tape deck, but to which he made improvements.