SparkFun Qwiic MP3 Trigger

Sometimes you just need an MP3 to play. Whether it's a theme song as you enter the room or a power song when you are working out. The SparkFun Qwiic MP3 Trigger takes care of all the necessary requirements, all you need to do is send a simple I2C command and listen to whatever is on your micro SD card. Utilizing our handy Qwiic system, no soldering is required to connect it to the rest of your system. However, we still have broken out 0.1"-spaced pins in case you prefer to use a breadboard.

When a USB-C cable is connected to the Qwiic MP3 Trigger the contents of the microSD card appears as a jump drive. Simply plug in the Qwiic MP3 Trigger and you'll be transferring MP3s, no need for drivers and no need for WAV or Vorbis conversion! Sound output is provided via a 3.5mm headphone jack or poke-home connector allowing an external speaker to be connected without soldering. Your supplied speaker is boosted by a Class-D mono amplifier capable of outputting up to 1.4W making it capable of being incredibly loud! Volume is software selectable between 32 levels while equalization can be tuned to be sure your classical hits sound different from your jazz dance routines. If you don't want to deal with any programming, there are four trigger pins. When pin 3 is pulled low the T003.mp3 file will immediately be played. This allows you to start playing sound effects with the touch of a button! By pulling multiple pins down simultaneously the four triggers can play up to ten tracks: T001 to T010. Up to 255 tracks can be loaded onto the SD card and triggered via the I2C interface.

All settings including volume, EQ, and I2C address are stored in NVM and loaded at each power up. The I2C address of the Qwiic MP3 Trigger can be modified via a solder jumper or be assigned using a software command. Multiple Qwiic MP3 Triggers can be chained together on a single bus allowing for simultaneous track mixing and triggering.

We've written an extensive Arduino library to make MP3 playing over I2C a breeze. Play tracks, change volume, play next/previous, check if track is playing, stop play, change EQ, and change I2C address are all supported.


The SparkFun Qwiic Connect System is an ecosystem of I2C sensors, actuators, shields and cables that make prototyping faster and less prone to error. All Qwiic-enabled boards use a common 1mm pitch, 4-pin JST connector. This reduces the amount of required PCB space, and polarized connections mean you can’t hook it up wrong.


  • Operating voltage: 3.3V
  • Current consumption:
    • 40mA standy
    • 40mA when playing over headphones at any volume level
    • 150mA-300mA when driving external 8Ω speaker at full volume setting
  • microSD supports 128MB to 32GB cards
  • Volume, EQ setting, and I2C address settings stored in non-volatile memory and loaded at each power-on
  • WT2003S MP3 decoder IC provides USB access to microSD socket (up to 32GB) and MP3 decoding
  • ATtiny84 receives I2C commands and controls the MP3 decoder
  • Poke-home connector allows for sturdy but temporary speaker connection without soldering
  • Trigger pins 1, 2, 3, and 4. When pins 1+4 are pulled low simultaneously T005.mp3 will play
  • Up to 255 tracks can be loaded onto the SD card and triggered via the I2C interface
  • Built-in TPA2005D1 based 1.4W Class-D mono amplifier
  • Address jumper to select between I2C address 0x37 (default) and 0x38. I2C address is also configurable via software to one of 110 different addresses.
  • USB-C Connector
  • Qwiic Connector

SparkFun Qwiic MP3 Trigger Product Help and Resources

Build a Qwiic Jukebox that is Toddler Approved!

March 29, 2019

Follow this tutorial to build your own custom jukebox. Note, this is designed simple and tough for use primarily with toddlers. It's also a great introduction to SparkFun's Qwiic products!

Connector Basics

January 18, 2013

Connectors are a major source of confusion for people just beginning electronics. The number of different options, terms, and names of connectors can make selecting one, or finding the one you need, daunting. This article will help you get a jump on the world of connectors.

Test MP3 files.

If you need some properly named MP3 files to test your Qwiic MP3 Trigger, you can get them here!


Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

2 Programming

Skill Level: Rookie - You will need a better fundamental understand of what code is, and how it works. You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL.
See all skill levels


Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

2 Electrical Prototyping

Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels


Comments

Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • I bought mine to make a gift last week but suddenly when I use the triggers it starts playing the song but after a second it stops. Anyone might know why? Could it be a low battery issue?

  • Is it polyphonic? I know that's too much to ask in a $20 board with a lot of cool things but it doesn't say it anywhere!

Customer Reviews

4.3 out of 5

Based on 4 ratings:

Currently viewing all customer reviews.

1 of 1 found this helpful:

Great cost and setup

4 out 5 because the headphone port is wired backwards. I have not checked speaker port or line-out breakout connections. My headphones are on correctly :) Confirmed with an .mp3 with voice saying "Left" on left channel and "Right" on right channel. Not going to matter to me in the end, I can switch line outs to my amplifier that I am using for my project, but figured the review may be helpful to others considering the product.

Outstanding board for an outstanding application!

For Valentine's Day this year I wanted to make my sweet wife an electronic valentine. I'm a homemade paper hearts sort of guy, but thought I'd up my game. I had purchased the Velleman flashing heart kit and thought I'd mount it into a small cigar box. Then I got the idea, hey! What if there was some sort of a way to turn this into a music box to play our song [Moon River, Andy Williams] when the box opened. Well, the SparkFunQwiic MP3 Trigger was JUST THE THING! While I've been trying to do more with microcontrollers on my workbench, I haven't gotten too far. This SparkFun board performed just as promised - the online documentation was perfect. Want to see my music box valentine featuring the SparkFUn Qwiic MP3 Trigger? Check it out here: https://ab1dq.com/2019/02/14/my-funny-valentine THANKS SPARKFUN FROM A VERY SATISFIED CUSTOMER!!!

Thanks so much for the review, and your project looks amazing! Thank you for sharing that with us! :-)

Works

Everything works as expected. I wanted to use it has a simple trigger with no programming. I was a bit disappointed that the Volume setting is in NV memory and there is no apparent way to change it unless you have a working I2C port.

The volume is quite low. With a 4 watt make speaker it put out enough sound to work as say and alarm clock. I was hoping for a bit more in the way of volume.

What would have been nice is a config file that you could put on the root of the SD card.

Very easy and fast to get working

The file system and triggers on this card are great. The only CON is it does not have an external volume control. It must be adjusted thru external software. The volume is adjustable from 0 to 32... firmware has it at about 10... I had to I2C it to an Arduino Pro mini and have it up to 29.