WAV Trigger – SparkFun WIG-13660
This WAV Trigger is a unique high-fidelity polyphonic audio player created by Sparkfun and Robertsonics. It supports up to 2048 uncompressed 16-bit, 44.1kHz wav files (which is actually the same quality as an audio CD)!!
It can play and mix up to 14 stereo tracks simultaneously, independently, and with very low latency. Your tracks can be controlled via 16 programmable trigger inputs, or by using a native serial control protocol or even MIDI.
Trigger inputs can be connected directly to switches and buttons, or to digital outputs from sensors or another microcontroller. Alternate functions can be specified using a free cross-platform GUI application, and allow triggers to play sequential or random tracks, pause and resume groups of tracks and even control volume. An Arduino library allows for complex serial control like real-time mixing, starting multiple tracks in sample-sync, and smooth cross-fading between tracks.
On-board sample rate conversion allows for smoothly changing playback speed/pitch from 0.5x to 2x. in real-time.
MIDI allows you to use the WAV Trigger as a polyphonic sampling synthesizer to play your own sounds from any MIDI keyboard controller. MIDI Channels and Note numbers are mapped to track numbers, and MIDI Controllers adjust volume as well as attack and release times. MIDI Program Change is supported to switch between up to 16 banks of 128 sounds. The WAV Trigger audio engine even implements, pitch bending, voice stealing (oldest playing voices are used for new MIDI Notes when all 14 voices are being used), note attack (fade-in), note release (fade-out), and latency averages 8 ms.
This WAV Trigger offers support for both SDSC (up to 2GB) and SDHC (up to 32GB) type microSD cards.
- Supports up to 2048 uncompressed 16-bit stereo WAV files up to 44.1kHz – CD quality
- Polyphonic! Play and mix up to 14 stereo tracks independently and simultaneously
- Sample-accurate starting and playback of up to 14 parallel stereo tracks
- Trigger-to-sound delay: 8 msecs typ, 12 msecs max
- MIDI control: Velocity-sensitive triggering of up to16 banks of 128 tracks
- Real-time playback rate control and MIDI Pitch Bend
- Pause and resume individual or groups of tracks. Multiple random trigger ranges
- True line-level stereo output: 2.1V RMS ground centered, 100dB SNR
- On-board mono audio amplifier and speaker connector: 2W into 4 Ohms, 1.25W into 8 Ohms
- 16 trigger inputs are individually adjustable for contact closure, 3.3V or 5.0V control
- Trigger inputs can be individually inverted, and/or set to be edge, latched or level sensitive
- Volumes adjustable from +10dB to -70dB in 0.5dB increments
- Firmware volume fades (attacks & decays) and cross-fades
- A dedicated Play status digital output pin
- 3.3V and 5.0V output pins
- Extensive serial control. Arduino library is available. Pin compatible with this FTDI adaptor
The WAV Trigger is a development platform that allows you to easily add music and sound effects to your project. The WAV Trigger plays uncompressed WAV files up to 16-bit stereo 44.1kHz, the same quality as audio CD’s. One significant feature is that the board has the ability to play multiple tracks at the same time, mixing up to 8 stereo tracks together on the fly. The board has an audio jack and a 2-pin output that can be connected to either headphones or speakers for audio output.
Tracks are played when some type of condition is met. For example, the most basic use is to connect a button between ground and a trigger. When the button is pressed, the track (.WAV file) on the micro SD card that corresponds to that trigger will be played. There are more advanced options however, that can be created with a configuration file that allows triggers to play random tracks, pause tracks, and change volume, amongst other operations.
You’ll need some:
Navigating the WAV Trigger Board:
- The barrel jack is where you supply power. Alternatively, you can use the nearby VIN and GND via’s for supplying power. Either way, any input voltage between 6V and 15V will work.
- There is a run/load switch that should always be set to run when you are using the board normally. The board is set to load only when updating the firmware on the ARM processor, which is done before hand at SparkFun. It will only be necessary to put the switch into the load setting if there is a newer version of firmware that you would like to use.
- The micro SD card is where your .WAV files and optional configuration file are stored. This micro SD card works well with the board and also includes a micro SD USB Card Reader for transferring the files to/from your computer.
- The audio jack is the standard 3.5mm variety and can be used with headphones or speakers of your choice. There is also a 2 pin header for direct wiring and soldering a speaker such as this to the board itself.
- The FTDI port is used to program the firmware or can be used with the WAV Trigger’s Remote Control App to test triggers using your computer instead of hardware. This way, you can test triggering tracks before soldering hardware to the actual trigger ports. The FTDI port can also be used in conjunction with WAV Trigger’s Initialization Editor so when you set a trigger to a non-default function such as playing a random track, you can experiment with the trigger’s functionality without first having to put the configuration file on the SD card.
- This button triggers the first track on the memory card.
- The row of 16 triggers is the core of this board’s utility. These are what we are going to use to start the playing of music or sound effect tracks on the SD card. We’ll also learn how to use them for more advanced options like playing a random track or changing volume with the help of a configuration file. Keep in mind, ground connections are closest to the edge of the board and are there for convenience to be used along with a trigger. The actual triggers are the second row from the edge.