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.

Note: This unit has the firmware updated to v1.2 to avoid the auto-loop bug of DEV-16892 (the previous version). All aspects of the board function identically but the 'Pause' command is no longer 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

Revision Changes: This revision of the SparkFun Qwiic MP3 Trigger, we have only made one change to improve the ease of use of the board, listed below. If users are unsure about which version they purchased, please refer to the product pictures.

  • The SparkFun Qwiic MP3 Trigger uses the TPA2005D1 Audio AMP IC. In the past we have noticed some "popping noises and found that we should update some capacitor values in the audio path to prevent this. According to the the TPA2005D1 datasheet: "If the corner frequency is within the audio band, the capacitors should have a tolerance of +/-10% or better, because any mismatch in capacitance causes an impedance mismatch at the corner frequency and below, and causes "pop."

SparkFun Qwiic MP3 Trigger Product Help and Resources

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.

Customer Reviews

3 out of 5

Based on 2 ratings:

Currently viewing all customer reviews.

1 of 1 found this helpful:

Great little mp3 trigger

Very simple trigger to set up. The file names are a little wonky, but once I read the documentation it kind of made sense. The connection options are great. Having options for jack or wires is nice. The USB-C port is a great addition, since that's the de-facto standard now. Connecting the 4 buttons were simple with a little solder, and with only 3 songs I was able to use the last button as a stop button.

It would be nice if the device to read the SD card when it's inserted without power cycling, but it wasn't too hard to figure out that it needed to be reset in order to read the new songs.

One suggestion for future versions would be to include analog volume control via a potentiometer connection. It didn't look like that's an option. The default volume is plenty loud and the power output is adequate for 2 small speakers running in a parallel connection.

0 of 2 found this helpful:

Sadly many things not functioning after countless hours of fiddling

Using the examples provided hasCard often returns false & I need to recycle power to correct. isPlaying often returns true when nothing is playing getSongCount never works, returns 0 Example 2 playNext displays playing but often doesn't play anything & sometimes skips a track Example 3 with files named T001.mp3;T002.mp3 often plays the wrong Track I renamed files to F001.mp3;F002.mp3 etc and changed to playFile and it appears to consistently play the correct file then. Don't know how to resolve any of the rest of the issues.

Seems like you might just have a faulty product. Fill out a return ticket and we will make it right: https://www.sparkfun.com/returns