
Louis T
I started testing some alternative MP3 Sound Modules, my goal to get similar functions but at 50% less than the cost of MP3 Trigger ($50 + s/h). This could help people with low budget that want to get into robotics or just wanted to build a low cost robot. I choose these two modules in theory from reading their data sheet should work with EZ-B thru very simple sendserial command already built into EZ-Builder:
This MP3 module im testing and is working very well with EZ-B, it supports 40 MP3 files, 6 outputs:
40MP3 Module
Specification
This MP3 module supports 199 MP3 files and 8 outputs but I can't get it to work because it required baud rate of 4800 which ARC doesn't support but i would like to have it working because it supports 199 MP3 files and have better features than the above module:
199MP3 Module
Specification
However both modules needs an audio amplifier but for the price you can't beat for small to large robot projects that don't need a lot of sound files.
I have already got it working well with my Wall-E project, there is just one problem because the volume reset once power is disconnected so i found a way around that by using a init script at connection to change to max volume and a start up sound. All costs less than half price of MP3 Trigger :).
Here is a rough wired pic using Wall-E own speaker, MP3 module, and a dual 3W amplifier. I will post more details soon but still i would like to be able to use the 199 mp3 module, nice thing is both module output stereo sound and you are not limited to small speakers, just use bigger amp for bigger speakers and blue color matching EZ-B board
More details on wiring and custom scripting coming soon...might make a demo video if i have some free time.
MP3_Module.EZB
Make sure your SD Card is formatted in FAT in Windows (not a camera or any other devices), name your MP3 files to 01.mp3, 02.mp3,...40.mp3, drag and drop each file one by one to ensure they are playing back in the correct order.
The files are being read by the index not by file name or what you see in Windows explorer, you may even just leave the file name don't have to rename but i haven't test this, best rename or leave it short. Any questions, feel free to ask.
mp3 units as well for my omnibots project.
So they work ok, just need a cheap amplifier.
That's good to know, i've been at it for a while and just now able to test it some more. There is only one problem i didn't like was the volume control and the order are read by index hex instead of file name, it could be tricky to get it working right. For the volume, you can't set it to a certain volume because it'll reset once the power is disconnected, at default it is not loud enough, but the init script i provided get around that, just need to have a start up sound, can even be a dummy Mp3 silent file if you don't want noise at connected. Let me know how it works out for you.
@robotmaker
Sorry for my lack of knowledge but I don't fully understand why it wouldn't work with another robot. I dig around the forum first for an alternative MP3 module but didn't find any real details or instruction for ARC, just useless stuff. Can you post details on how you get it to work? which model did you use?
Found the post:
www.ez-robot.com/Community/Forum/posts.aspx?threadId=846
it use simple i2c commands
EZB only has one TTL PORT so if you are using that port for like ROOMBA or other robots or modules that uses A TTL port it wont work
most good for for some robots,that TTL port is good for other computer boards I THINK IF using a second EZB you need that port
its not the module is bad its that the EZB ONLY HAS ONE TTL PORT
@Louis_T, those are fantastic mp3 player findings. Thank you very much for the ground work. I'll see which modules we can get and use for our EZ-Bit. I had one module selected for an EZ-Bit, but it required a seperate control chip for the 2-wire interface. Be careful, some devices say 2-wire serial interface and appear to be i2c, but they are not. They are not addressable like i2c, and therefore have similar connectivity method (clock/signal) but the signal is different.
DJ WHY does port 2 only for roomba only
ON I2C what is the speed of it,i see i2c MP3 supports up to 400k and think high speed 4.3mb
i2c speed buss info
There are three data transfer speeds for the I2C bus: standard, fast-mode, and high-speed mode. Standard is 100 Kbps. Fast-mode is 400 Kbps, and high-speed mode supports speeds up to 3.4 Mbps. All are backward compatible. The I2C bus supports 7-bit and 10-bit address space devices and devices that operate under different voltages
DJ your are right some are SPIwitch is close to i2c but not real I2C
on the MP3 PLAYER i found is real I2C buss
sorry about my caps DJ my brand new stupid laptop from dell doest have a caps light
one last QUESTION can TTL PORTS only transmitt or do they receive.i know I2C is bi-directional
i thought it wass 100k on I2C buss but didnt see any info on it
Glad to help, it's the least i can do. I'm excited to see either one of these units or both supported in future version of ARC.
Also scooped up (2) of the same little amp in your pic.
Looking at your EZB file. Your init file, is the multiple commands to
basically ramp up the volume on power up?
Other than that looks pretty easy to use. Only real difference from
the Sparkfun unit is no external triggers and max .MP3 capacity. No
biggie as I will either put on random or use voice command.
Great find! Thanks for sharing.
on my ROOMBA project will use I2C one i found since it will run at a faster baud rate
amp circuit fairly easy to design made so many at my work
reading the specs can only use 9600 buad rate not that great ,but i guess it will work
Yes the init file is basically to ramp up volume to Max, but it won't work if you just ramp up without playing the track first, know that thru trial and error :). Also i like the fact that the sound fades in due to the volume up.
Not true, if you look at the specs sheet, there are 6 output control :). Only come down to 40 files limit but like said for the price you can't beat it!
It shows 1-6 as I/O but no real information.
Just thinking out loud. Would you have to script in a serial command
to monitor a trigger(s) high/low and use a IF statement?
IF IO1 High = Play Track 3
That kind of scenario?
I asked customer support and this is what they said:
If you want to set output(1) high, just send D1 to the module via the TTL (with a terminal software or you can download one here: http://mdfly.com/productfiles/Development%20Tool/COMTOOL.rar . To set the output(1) low, send C1.
My guess use send serial command like this: sendserial(port#, 9600, 0xD1) set output 1 high and sendserial(port#, 9600, 0xC1) set output 1 low, replaced D1 with D2 and C1 with C2 for output 2 and so on.
I'm no programmer so if you know more please post.
I am not a programme too.i most test and know about every sensor made
and electronic engineer,but if you need help on any electrical design or any sensor made for robots or commerical products le me know ,or anyone else,i have alot in test equipment
I am using an AP-16+ audio player in my current robot project. It plays .wav files rather that .mp3 files, but it has a built in 20 watt/channel amplifier. Rather than request a special control for this board, would you consider creating a generic matrix control? Similar to the MP3 control with an array of buttons, the user would specify the actual scripting command to be executed with each button press. This control could be used for a wide range of applications.
Jim
does it have serial or I2C buss or buttons you want to control using digital I/O
i can design a matrix circuit using digital I/O
The AP-16+ has a 3 pin header for serial input control from a digital i/o port. The board was obviously desgned for the special effects market but, it has a lot of useful functionality for robot builders. It is available from Parallax. It's more expensive than the Sparkfun MP3 but, it fit my application perfectly.
Jim
but the onethats post here can work on some designs
looking to get 5 of them
That would be ideal if you could add only as many buttons as you needed and you could label the buttons with a descriptive name. I hope DJ is listening.
Jim Milan
www.open-electronics.org/embedded-mp3-module/
looks very good the design,but very hard for robot builders to make,its surface mount parts
also looking at the design of the circuit the main chip VS1011 IS HIGH COST sparkfun does make a breakout board for $19.95 ,a i see the sell the 48 pin surface mount chip for $19.95,something must be wrong
other micro chip can through hole chip,then need a sd card holder looking at may be $60 total in parts and pcb
can get a much lower price on parts from china ,since most chips are cheap there ,but need to buy a lot of them
My sound boards came in today.
I'll be tinkering around with them tomorrow night. The wiring looks to be pretty basic.
Still not sure on the whole Input/Output ports.
I understand we can set I/O 1-6 high/low via serial command.
I want to be able to wire a button (or whatever) that when depressed plays
a certain sound track. So not quite sure, would the input need to be pulled
to ground? Then have a script to monitor the inputs for high/low and play
the audio file accordingly?
I'll tinker with it, no biggie If it won't do that. It's still perfect for cheap audio
for my Omnibots.
Yes, the I/O port only support input over serial command, it acts like a digital switch so you can turn LED on/off, you can connect low current device like LED directly to each port but not buttons. Looking on the bright side you get 6 extra digital on/off switches that don't take up EZ-B digital ports
The other MP3 module i shown does have direct play mode for up to 8 tracks with push buttons, that's why i wanted to get that working, with DJ latest release to support 4800 baudrate, i will do some testing when i get the time.
These are just going into the Omnibots. I'll just use the digital on/offs as suggested.
Still a good cheap alternative MP3 module.
file supplied in this thread.
Definately need an amp to use. I'm waiting for my amps to arrive but
tried it direct to my Omnibot speaker. You can just barely hear it. Very
easy to send serial commands and control.
Recommend to anyone looking for a simple MP3 playback module. $16.95
Now to create some random sound scripts.
Good thing is you get to choose your amp and speakers size what suits your robots. Best thing is even with amp still cheaper than MP3 Trigger, speaker is free from your robot/toys usually
If you get a chance to get the random sound script done, can you post it? Thanks.
about the DFRduino Player for $25 i found out it does serial and true I2C buss
plus not limited to 40 or 199 MP3 songs,can play as many that will fit on a SD CARD
mp3 player
mp3 player at robotshop
at robotshop its $29.95 at other places its $25
$24.95 mp3 player
very simple serial commands.
The MP3 trigger is also very simple to use. I have one in my R2 droid.
You just need to decide what features are important to you.
How many MP3's do you want to play?
Do you require external triggers?
I've got the smaller 40 track MP3 modules for my two Omnibots and Wall-E. I use the larger MP3 trigger for my R2 which uses a schwack of MP3's.
but i loved the most is unlimited mp3 files ,where on the MP3 can only add up to 40 mp3 files
plus if high speed uart is needed you are out of luck,only one high speed port left on EZB other is used for bluetooth module
so if using a roomba ,cant use the MP3 trigger and other robot and devices using high speed port
Can you post example of how to play different track using i2c command? perhaps it will make it easier for all of us with trouble understanding the data sheet.
Why would you need high speed for MP3 Trigger? you can use any of the other 19 digital ports.
plus on my design all I/0 PORTS are used up,i/o ports are for sonars,servo's and controlling led or relays and mp3 or others and after using them ,pretty soon none left over, i do see its great for small robots like WALL-E and few others
but what i look at is using very little digital ports as you can
thats the best thing about I2C ,i think KKEAST is using I2C MP3 or looking in to it since he using I2C port for other modules on his rad robot
the one that crapped out.
I received this response and picture when I was inquiring about the replacement
module.
"We recommend that you connect a resistor between the audio output and
the amplifier input. This may prevent the amplifier from damaging the module."
Can someone translate? How would adding a potentiometer help/work?
That's odd, i don't why you need the pot, may be someone else will have a better idea. Was there anything burnt on that broken one? Are you combining all these into one robot or use for separate robots?
motions of playing an MP3 but nothing would come out. Just started
doing that out of the blue.
I confirmed with my other MP3 module, it wasn't the MP3's on the memory
card, amplifier, speaker or cabling. Just kinda gave out on me.
So ya I'm kinda curious how adding resistors to the picture would help?
These are all for separate robots (2-Omnibots, 1-Wall E) for now.
@ jstarne1...I believe you can hook up as many boards as you need, because it doesn't use the native ARC MP3 scripts, so just use the sendserial command to different digital ports so it can tell which board to play which track.
Just doing a little snooping on Ebay and seen this.
Less then 6 bucks ... WOOT WOOT ... will it work?
http://www.ebay.com/itm/MP3-Voice-module-U-disk-audio-player-SD-card-voice-module-WTV020-SD-16P-/160806790230?pt=LH_DefaultDomain_0&hash=item2570d4e456
Heres more info if needed:
http://www.elechouse.com/elechouse/images/product/MP3%20Sound%20Mini%20SD%20Card%20Module/MP3%20Mini%20SD%20Card%20Module.pdf
Please send a link if possible to the one you are all talking about.
Herr
Thanks, Bret
SD/TF Card
Thanks,
Bret
Best robot building!
Louis
Linky
and took the R Out from the MP3Trigger into this and the output from this to my LED's. This way I can adjust the power to the LEDs via the op-amp and they light up with the output from the MP3. It works really well.
op amp kit
HELP!
Seems I'm going backwards, rather than forwards : (
Just installed the AU5032 TF CARD MP3 PLAYER MODULE. Linky
The data sheet says it needs a Logic level TTL voltage converter: Linky
However, this converter seems to be just that, the logic signal and voltage. The "power" to activate the MP3 card requires that you feed another 3.3v source into the line:
So I wired it all up, and it works fine (although you will still need an amp.)
Any ideas on how to power this thing without an external supply?
do you think it will work with ez-b ?
any idea how to hook it up ?
thanks...