Let's Make Robots!

Arduino audio player

Sound and speech with Arduino

A small audio chip is available on the market at low cost (20 euros) that allows to build an audio player managed with buttons or via serial port, for example with Arduino (link).

The SOMO-14D is an audio chip that can play back pre-stored audio files such as voice and music from a micro-SD memory card (max. 2 gb).

The chip can be managed with a small microcontroller. Arduino is perfect. There are 4-wires connections and then you can use directly the Arduino to set the play, stop etc.

I got this chip because i’m interested on to make a talking robot. It is possible to use a sw in a PC to make the text-to-speech. After that you can save the audio file obtained on the SOMO-14D in order to let the robot to say the right word at the right moment.

Some details on my Arduino audio player here: http://robottini.altervista.org/simple-audio-player-with-arduino/

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

I've also tried the somo a while back and it's great. Only one thing: playback is not instant, it takes a while for the audio to start playing (something like 500ms i guess). For most robotic applications that's no big deal though :)

dude thats half a second, id say that sucks pretty hard if u want your robot to be expressive.


that was just an approximation though, i haven't used that thing in ages (1 year, probably more), so i don't remember exactly how much. 

I do remember though that for my project (laser-tag) it wasn't fast enough: i would press the trigger and the sound didn't come out fast enough...and that's the reason i went for the arudino waveshield, which is also an interesting board, but much bigger than the somo (probably not if you made your own smd version of it!).

I've been wanting to build a talking weather station with a audio module, it'd be neat to hear how warm it is outside. In my searching for the perfect audio module (which I have since discovered doesn't exist) I came across this conversation on the Picaxe forums [http://www.picaxeforum.co.uk/showthread.php?t=16353]. While the microcontroller of choice in this case was Picaxe, it would be easy to use an Arduino as well. Good work!

Very very interesting module. Thanks!

right on :D

i love the idea of a talking robot, and one of these units will be on my list
the next time i'm shopping for robot parts.

I already built a  speaking robot with this chip: I think next week I will publish a new post with a description of this new robot!

How many pins used on Arduino?

4 digital pins:

const int pinClock= 3;
const int pinData =4;
const int pinBusy =6;
const int pinReset=7;