Little Soundie Audio Player Hookup Guide a learn.sparkfun.com tutorial

Available online at: http://sfe.io/t576

Contents

Introduction

The Little Soundie is a fun and easy-to-use audio playback device breaking out VLSI's VS1000D audio codec. The Little Soundie can decode ogg vorbis (license free) and WAV type files.

SparkFun Little Soundie Audio Player

DEV-14006
2 Retired

No programming is required to get started but it will help to know binary. There are only a couple steps to set up your Little Soundie:

From here, audio playback is a matter of attaching a powered speaker and triggering the GPIO pins at 3.3V logic.

Required Materials

To follow along with this tutorial, you will need the following materials. You may not need everything though depending on what you have. Add it to your cart, read through the guide, and adjust the cart as necessary.

Tools

You will need a soldering iron, solder, and general soldering accessories.

Solder Lead Free - 100-gram Spool

Solder Lead Free - 100-gram Spool

TOL-09325
$9.95
8

Weller WLC100 Soldering Station

TOL-14228
2 Retired

Suggested Reading and Viewing

If you aren’t familiar with the following concepts, we recommend checking out these tutorials before continuing.

How to Solder: Through-Hole Soldering

This tutorial covers everything you need to know about through-hole soldering.

Binary

Binary is the numeral system of electronics and programming...so it must be important to learn. But, what is binary? How does it translate to other numeral systems like decimal?

Working with Wire

How to strip, crimp, and work with wire.

How to Use a Breadboard

Welcome to the wonderful world of breadboards. Here we will learn what a breadboard is and how to use one to build your very first circuit.

You may also want to check out this Audacity Tutorial on YouTube.

Hardware Overview

Little Soundie Audio Player

Details:

Connect a micro-USB cable from the Little Soundie to a computer and press the "Power/Play" button. You should now see a mass storage device that you will need to format before you can drag and drop your audio files into. You can name your files whatever you want to - the audio files are assigned a number based on the order you place them on your Little Soundie. The hardware maps a GPIO pin to a specific audio file number.

Power/Play Button

The Power/Play button is exactly what it says it is. This button needs to pressed once after connecting to a computer and needs to be pressed once it is in a project. This button turns on the VS1000D which then triggers all the internal voltage regulators. The "PB" (Power Button) pin has been broken out in case you want to trigger that interaction hands-free or remotely. If your project gets stuck in an unknown state, pressing and holding the button down for 5 seconds will reset the VS1000D.

Power Play button

Trigger Pins

The trigger pins can be found on the left side of the board. A momentary connection to 3.3V will trigger the audio to playback. Leaving the pin high will cause the file to play on repeat. This is great for leaving a cricket in someone's office! In the Audio Files section this is outlined more exhaustively but a HIGH signal on pin 00 will trigger file 1, on 00 and 01 will trigger file 3, and on 00, 02, and 03 will trigger file 13.

Trigger Pins

3.5mm Jack

The Little Soundie comes equipped with a 3.5mm jack for attaching a powered speaker. If this does not work for your application the AC coupled left and right channels have been broken out so you can amplify the signals individually. We recommend using the Noisy Cricket and a speaker or transducer but you can also use two SparkFun Mono Audio Amp Breakout. The 3.5mm jack is not for headphones.

3.5mm jack

VSIDE Pins

If you wanted to change any functionality of the Little Soundie you will need VSIDE. VSIDE is an IDE for VSDSP signal processor chips like the VS100D. There are several example projects you can build from or simply use. Programming is through UART so you'll only need to connect TX, RX, VCC, and GND. You can even use one of our FTDI breakout boards.

VSIDE Pins

You do not need to reprogram your Little Soundie. The VS1000D programming pins are broken out if you wish to update the firmware in VSIDE.

Assembly Tips

Very minimal assembly is required to get started.

Breadboard, little soundie, two sets of male headers

To connect the Little Soundie's 6 I/O pins to external components, apply power, connect audio out, and use the VS1000D programming pins, you'll need to do some soldering. It is much easier to solder when the headers are placed in the breadboard.

Soldering on the breadboard

For a flat project like a birthday card or a wearable gauntlet I'd recommend soldering the right angle headers instead.

Little Soundie with right angle headers

Audio Files

You can trigger about 20 files (2-3 seconds sound bites each) from the SPI flash storage (USB mass storage). The total SPI flash size is 4 megabits (Mb) (approximately a .5 megabyte (MB)). OGG files take up much less space than .WAV so I recommend using OGG if more then 5-6 sound bites are to be used.

Quick Note about using WAV: The VS1000 developer library contains a simple WAV decoder, which is included in the firmware on the Little Soundie. Currently the WAV decoder supports 8-bit ulaw, 8-bit linear PCM, and 16-bit linear PCM formats.

Ogg Vorbis is an audio file format developed by xiph, an open source multi-media company.

Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format for mid to high quality (8kHz-48.0kHz, 16+ bit, polyphonic) audio and music at fixed and variable bitrates from 16 to 128 kbps/channel. This places Vorbis in the same competitive class as audio representations such as MPEG-4 (AAC), and similar to, but higher performance than MPEG-1/2 audio layer 3, MPEG-4 audio (TwinVQ), WMA and PAC.

Information courtesy of xiph.org

There are sites out there that will do the conversion for you without having to open a program, like this one.

Audacity is a great open source resource for all things audio that also has fantastic documentation.

There are several sound effects sites such as Zapsplat and Soundbible. You can grab license-free sound bites from these locations and then convert to .OGG or .WAV using the methods listed above.

Binary Coded Playback

To get the most out of your device and trigger more sounds than there are available pins, the firmware is set up to trigger pins based on a binary code. The binary associates an audio file with a specific set of pins held either high or low. While the pin combinations on Little Soundie can trigger up to 64 files, it is likely you will only be able to fit about 20 .OGG files on the device. In the binary column below, the number represents which pins on the Little Soundie are pulled high and which pins are held low. Pin 04 is the first digit and pin 00 is the last. Pin 05 is there in case you want to reprogram the VS1000D to change the playback functions.

File No.Binary/IO Pin State
100001
200010
300011
400100
500101
...
1610000
1710001
1810010
1910011
2010100


Hardware Example

The Little Soundie includes almost everything you'll need to add sound effects to your project. You'll need, a USB cable to connect to your computer, a power supply of 3.3V to 5.5V, and either a button, a switch, or anything that will set a pin HIGH at 3.3V logic.

For this project you will need the following the parts:

Load Your Audio Clip

Load the sound clips you wish to use for this project. Simply connect the board to your computer through USB and press the power/play button, drag and drop your audio files, and safely remove the hardware via your computer (don't just unplug it). Remove the USB. You can not power your project from the USB port - this causes the VS1000D to boot into "USB, Mass Storage Device" mode.

Power

Since you can power your project from 3.3V to 5.5V, I used a LiPo battery to power this project. Keep in mind that the I/O is not 5V tolerant.

Buttons

The Little Soundie's GPIO pins are connected to GND through pull-down resistors. This makes the hardware wiring a bit easier. For each switch connected to a GPIO pin you'll need to connect one side of the switch to a GPIO pin on the Little Soundie and the other side to the 3.3V rail. When the button is pressed the file corresponding to the pin(s) sent HIGH will trigger playback of the audio file. With this set-up it may appear as though you can only trigger 5 files, but you can actually trigger 32. Since the GPIO are binary coded, pressing button 1 will correspond to the first file saved to the drive. If the first and third buttons are pressed at the same time the fifth file saved to the drive will play. Remember - the naming conventions of your audio files does not matter; what matters is the order in which they are loaded onto the USB drive.

Hardware Hookup

For a clearer look at the wiring hookup, see the Fritzing diagram below.

Warning: Do not strip your lithium battery's JST connector. Please use M/M jumpers to connect your lithium battery to the breadboard!

Little Soundie Fritzing

Having a hard time seeing the circuit? Click the image for a closer look!

Once your wiring is set up, plug in a powered speaker to the 3.5mm jack. Alternatively, you can use the left and right audio signals that are broken out on a Mono Amp Breakout Board or use the Noisy Cricket.

Little Soundie Hooked up

When you are all set up and ready to hear some sounds press the power/play button and you should hear a little pop in the speaker. This lets you know the VS1000D is powered and ready to go.

This project is easily extensible by replacing the buttons with connections to a microcontrollers I/O. Hands-free, sensor-based, or remote controlled sound effects are just a Pro-Mini and Arduino sketch away!

Troubleshooting

Little Soundie Not Working?

Try pressing the reset button for 5 seconds. If that doesn't work you can reflash the VS1000D using VSIDE.

VLSI Software Page for VSIDE

Resources and Going Further

Additional Modes

If you have the VSIDE software downloaded and installed, this would also be a good opportunity to experiment with other modes of play. There are source code examples to control volume, features like play/pause, FF/RW, next and previous, as well as other types of triggering modes.


Now that you've successfully got your Little Soundie up and running, it's time to incorporate it into your own project! For more information, check out the resources below:

If you're looking for inspiration for other fun projects, check these out:

Hackers in Residence - The ElectricBone

Drum machines and keyboards have been the standard for making digital music, but how do you make electronic music if you're trained to play the trombone? One of our Hackers in Residence, Carlos Mello, took it upon himself to find a solution to that very question.

Bare Conductive Musical Painting

Learn how to make a musical painting using the Bare Conductive Touch Board and Conductive Paint.

Proto Pedal Example: Analog Equalizer Project

Building a gyrator-based analog equalizer using the Proto Pedal.

Qwiic Speaker Amp (TPA2016D2) Hookup Guide

The SparkFun Qwiic Speaker Amp includes the Texas Instruments TPA2016D2 stereo, filter-free class-D audio power amplifier. This tutorial will help you get started and configure the amplifer settings using an Arduino microcontroller.

Or check out this blog post for ideas:

Project Showcase: DIY Ray Gun

July 17, 2018

learn.sparkfun.com | CC BY-SA 3.0 | SparkFun Electronics | Niwot, Colorado