NCCR-MICS Project
Devlopment of a MP3 interface for the BTnode
Sébastien Rumley, Luc-André Burdet, Harald Vogt, ETHZ
Goal : To be able to manage sound and music with the BTnode. As the raw sound format takes too much space and demands a too big bitrate, compression and decompression will be useful. The most widely used music codec at this time is MP3, so this one will be used.
In two words : According the poor MIPS rate of the Microcontroller placed on the BTnode, no software solution is possible. Fornunatly, one can find in the market many embedded chip designed specially for mp3 handling. One of them will be use in this project.
Contents of the project :
- Design of a PCB prototype, where the MAS 3587 mp3 chip and its external components will take place
- Fill and test the prototype
- Write a driver for the microcontroller to interconnect the MAS chip with the BTnode
- Implements an adapted protocol for transfer of mp3-bitstream between a BTnode and a PC or between two BTnode
- Make some experiments and see where are the main Problems.
Length of the project : 10 weeks
After that :
- Two differents PCB has been designed (rev. 2 and 3, revision 1 was unusable)
- A C-driver with control routines has been written to control the chip
- A basic transfer application (between PC and BTnode) has been developed
Rev3 PCB placement. Dimensions : ~32mm x 33mmResults :
- The hardware-software stack is complete, no further hardware programming or design needed
- It's possible to send and to play some mp3 file (with a bitrate up to 96 kbps) for half a minute, without stops
Global view of the work.Main problems :
- The encoding part hasn't be done
- The transfer protocol is faulty and not optimal. The application gets blocked after a certain time
- No BTnode to BTnode application
- No GUI for PC-application
Possible things to upgrade :
- Finalize the protocol, test it and put it in a library
- Design an imdependant protocol permitting the transfer between pc or BTnode independtly
- Popup the bitrate limit (theorically, it should be possible to reach at least 160 kbps)
- Design a friendly User-Interface, or even a PC-driver so that BTnode acts like a sound card
Also to see
PCB design file (Eagle format) :
Microcontroller C sources : Visual C++ Workspaces (PC application) Others :
Links :
Full report (in German) BTnode home-pageUseful material : MAS3587f datasheet Atmega 128L Microcontroller datasheet Bluetooth specifications Bluetooth Windows SDK datasheetFor more information, please contact :
Harald Vogt (vogt@inf.ethz.ch)
Sébastien Rumley (sebastien.rumley@epfl.ch)
Luc-André Burdet (lburdet@student.ethz.ch)