BIG CAVEAT: I got this through a friend who bought 2 at 20 Eu ea PLUS required courier shipping at 20 Eu each. We're trying to see about getting many at reasonable price plus shipping. At USD$55 each these are not a deal. I am sure that those in Europe can do much better!

Note the docs download links on the right side of the page. The module pdf has schematics and instructions as well as specs. It's nice and complete. There is enough there to modify, compile and load new code though I haven't gotten that far just yet.

It plays OGG files and WAV files. VLSI has an OGG converter that I haven't tried. For testing I used Format Factory that doesn't always do such a great job though I understand at least part of that is because I changed the data rate by just using the default. OGG files are smaller than MP3 even at the same quality but the ones I made are tiny compared and only a little artifact-y.

With OGGs on generic 2G micro-SD connect power, grounds and speakers and it plays. If you don't have a micro-SD there are voice files on the internal flash that play.

I don't have a stereo connector so I got some cheap earbuds and soldered jumper wires to the jack. IIRC the tip is one channel, middle is the other and back section is ground.

I went with 5V external power, it can take up to 6V VCC. Running from Arduino, power went down to 4.75V which works too. The module has a 3.3V regulated output and a 3.6V power-out pin as well that us used on the MAX232 control schematic to power the MAX232 but can probably power a small AVR if you don't milk it.

The default serial control is 115200 baud. I tried using 2 UNOs at 115200 between each other running software serial at that speed with RX, TX and GND connected and got bad bits so for this I used a MEGA 2560 RX1/TX1 at 115200 with the module. There is one voltage level shift needed. I ran 5V TX from the MEGA through 4.7k ohms to the VS1000 AM RX and 2 4.7k resistors in series to GND from that connection as well. VS1000 AM TX is 3.6V and works connected directly to the MEGA RX.

And that's pretty much it. Make sure to connect all the grounds together!

I am able to enter commands through serial monitor and it responds as I expect. It's a bit picky about file names (the PfilenameOGG command) being upper case. I ended up making 8.3 file names with 8 characters though it probably doesn't need them. First thing I do is send f to get it out of continuous play mode into file mode, then C to stop (Cancel) play. When a file is playing only certain commands work. Pause (=), resume (>) and volume control (-, +) always work as does time (?).

This is the MEGA sketch I used just for test purposes. It blinks pin 13 to show correct running.

I've been playing around with this module too. It seems really nice and simple to trigger sounds by either filename or number using basic SoftwareSerial. One thing to remember when triggering by number is that the files are not numbered in alphabetical order, instead they are numbered in order of transfer - so transferring your sounds over 1 at a time is the way to go if you're going to trigger them by number.

To trigger a sound by filename, you start with a P character, then the 8 character filename followed by the extension (no dot). If the filename is shorter than 8 characters you must insert spaces in the command. For example...

vsSerial.print("C\n"); //cancel any current playbackIf the SD card is being used, this Cancel command can cause an unwanted pause. If the sounds are being played from the internal memory there is no pause and the VS1000 will be ready to play another sound straight away.

I've been looking at a fair few projects connecting Arduino UNO and VS1000 and they all seem to use SoftwareSerial. The guide says:

Quote

"HardwareSerial - Best performance. Always use this first, if available!".

Also

Quote

" The ATmega168 (328) provides UART TTL serial communication, which is available on digital pins 0 (RX) and 1 (TX). The Arduino software includes a serial monitor which allows simple textual data to be sent to and from the Arduino board via a USB connection."

But... what if I was using a Pro Mini (schematic)? I thought for a moment this might work, as the board doesn't direct pins 0 and 1 through the USB converted chip as there isn't one

I sent data between 2 UNO's using software serial on both. Some characters corrupted. Yes, I tried more than once and did change jumpers. Soldered, it may be okay. 57600 worked solid as rock. End of story.

I sent data between 2 UNO's using software serial on both. Some characters corrupted. Yes, I tried more than once and did change jumpers. Soldered, it may be okay. 57600 worked solid as rock. End of story.

Ah! I wonder if you can reduce the VS1000 to 57600...hmmm, might have to look into that!Still losing 2 pins though. On the other hand, I could pass off some of the "pin work" like LCD driving, to the VS1000.Swings and roundabouts!

For a one off, to test, it might be worth investing. But the difference between an Uno-compatible Pro Mini at £2 and the cheapest Mega 2560 clone at £16 is an 8x increase in price for that part, making the project unviable. So I'd rather avoid that route if possible!