This project was designed for assembly in STEM workshops. I've had kids ages 7 to 12 assembling it in about 4 hours. So the beneficial aspect of this project is that it can be used to teach kids technology.
The front and back panels are lasercut, which is fast, and the kids get a big charge out of using the lasercutter. All the parts are through-hole for ease of soldering. The design is optimized for low-cost, while delivering audio quality that is quite listenable.
ENHANCEMENTS TO DO
For the Hackaday prize project, in addition to publishing the design and how-to for a workshop, I want to enhance the MP3 player with PC software and new applications. So far I have two application ideas: a talking meter, and a brute-force text-to-speech system.
The talking meter will monitor the analog Grove input, and say the voltage measured. The actual analog input is 0-3.3v, but this could be scaled with a switched resistor network/op amp buffer, into typical voltmeter ranges. The voltage speech MP3s (eg “five point zero volts”) would be stored on a microSD card.
The brute force text-to-speech will consist of 1000-2000 recordings of words, stored on a microSD card. These will be indexed on the MCU, mapping each string to an MP3 file. There will be a lot of FLASH used for the lookup table, so this will probably require hashing the strings (converting each string into a unique number), just to keep the size down. A 9600 baud bit-banged serial port input will be the source for words to play, so that another system can dump strings to a serial port and have them spoken. I’m guessing it will sound a bit odd, but nevertheless, far more legible than a phoneme speech chip, and a lot cheaper. The SD card is the most expensive item on the bill of materials.
To enable these projects, I propose to write a PC/Mac application that can be fed a list of strings (a text file with one string per line), and automatically generate the MP3 files using the PC’s speech synth. This may be just a Mac app on first pass, depending on how the time goes. The files would be saved with appropriate names, and C/C++ source code for the reference lookup table generated.
This same app should have file management features, to simplify the creation of playlists for the music player.
This MP3 player was inspired by my kid's friend. We were driving and I had the Beatles channel on. She announced she didn't like the Beatles. So I turned it up.
Like my kid's friend, a lot of kids apparently have never had a chance to listen to good music, and don't know what it sounds like. Thanks to this event, I had the idea that the world needed a Beatles appliance, with the slogan "Beatles at your fingertips".
Though the concept has a fatal flaw , as the music is all copyrighted and would cost much more than the device to license!
Nevertheless, I implemented a demo unit, with a microSD containing every song they published: 12 albums (original UK releases as they intended), all the singles by year (in the UK singles did not go onto albums), and some special playlists for each of the band members and every year from 1963 to 1970. I recorded a Mac-generated Scottish voice to say the album names in an audio menu. Scotland was the closest thing I could find to Liverpool.
What makes this gadget rock is the speaker. I found this one on Taobao, and recently noticed it was being used in a Seeed speech control kit. I tested it against about 10 other speakers, and it won hands down. The silver cone looks cool too.
Oh BTW the LE in the name stands for Liverpool Edition.