Playing MP3s from an FPGA

Building an audio player is a fun project. It used to be quite a task to do so, but these days the MP3 decoder chips are full-featured which means that if you know how to talk to other chips with a microcontroller you’ve got all the skills needed to pull off the project. But that must have been too easy for [Ultra-Embedded], he decided just to build an MP3 player out of an FPGA.

It’s not quite as difficult as it first sounds. He didn’t have to figure out how to decode the audio compressions. Instead he rolled the Helix MP3 decoder library into the project. It had already been optimized to run on an ARM processor, and since he’s using a RISC soft processor the translation wasn’t tough at all. He’s using a 24-bit stereo DAC chip to bridge the gap between the audio jack and the FPGA output. Clocking that chip with the FPGA isn’t ideal and causes 44.1 kHz audio to run 3% too slow. He says it’s not noticeable, which we believe. But if you try to play along with a song the pitch shift might end up driving you crazy.

If you’d prefer to just stick to the microcontroller based players this one’s small and inexpensive.

Tears from your lonely heart will activate a comforting tune

If you’re forever alone we’d guess you’ve long since stopped crying about it. But if you’re still prone to shed a tear on a dateless Valentine’s day this project’s for you. [Mikeasaurus] spruced up this pillow to play a tune when it senses your lonely soul. It’s got a moisture sensor which triggers an audio greeting card just when your weeping really starts to get soggy.

If you look closely at the top portion of the white fabric in the picture you can see there are rows of stitching. These hold a matrix of conductive wire mesh fabric on the inside of the pillow case. There are two buses made up of alternating rows (think of the tines of two forks pointed together) which make up the probes. When the gap is bridged by moisture a transistor circuit triggers the audio bits from a greeting card to play a song. Check out the demo after the break. We’re not satisfied that [Mikeasaurs’] couldn’t even bring himself to cry real tears for the clip, but maybe years of solder fumes have clogged up those tear ducts.

[Read more…]

Improving headphones by voiding warranties

[Dan] had been wanting a pair of Bluetooth headphones for quite a while. Most of the reviews for wireless headphones in the $50-$80 range complained of tinny sound and dropped bass. Nevertheless, he stumbled upon a $20 pair of headphones with similar reviews and realized that he could switch out the driver and make a decent pair of cans.

The donor drivers came from a pair of Sennheiser HD 540 headphones. These are very respectable headphone speakers that cost about what you would expect for pro audio gear. To to get Bluetooth working with the Sennheisers, [Dan] removed the PCB and battery enclosure and attached them to the headband with velcro.

For his build, he had to cut the cable on the Sennheisers and solder them to the Bluetooth board. There was never any danger of ruining a good pair of headphones, though. If he screwed up he was only out a headphone cable. Now [Dan] has a nice pair of Bluetooth headphones that can reproduce bass. Not a bad deal for a $20 pair of headphones.