Music Shield not playing

May be a little late to post this, but I had the same problem and so I started working on porting an alternate library. Its working well so far, the code isn’t very good but then again i just wanted to get the thing playing music!

Thread Link:

<LINK_TEXT text=“ … =23&t=4075”></LINK_TEXT>

hey , thanks for your sharing.

we’ll fine down our forum later,hope you would enjoy there!

Sorry for the cross-post, but I am desperate. Anyone else having trouble with WAV playback? Shield specs indicate 44.1 khz 16 bit should be possible, but I get static on playback and jumbled sound. Files are fine otherwise. Only on Seeed do they sound bad. MP3s are OK though. Would really like help on this, otherwise this board is useless.


Okay, time to get serious. WAVs are HUGE files (i think they aren’t compressed) so your issue is most likely that your microSD card just isn’t fast enough. You can look through the patches for the vs1053b(<LINK_TEXT text=“ … tches.html”></LINK_TEXT>) Also make sure that your WAV file is in the PCM format, Audacity is a great tool for conversions (

If none of these work, please post as much info as you can on the hardware and problem.

The first time I worked with this board, I was running the Arduino IDE from my MacBook. The original source code from Seeed was very convoluted, and neither of their demos worked. Only after finding corrected code on GitHub did I get the shield working… to some extent. MP3 playback, volume and track forward/backward were fine. WAV playback was not crystal clear, and when playing WAVs, track volume and navigation were also compromised. The selling point of 44.1 Khz, 16-bit WAV playback was the whole reason I purchased this board!

Seeed support was useless and requests for help on did not result in any groundbreaking tips.

In order to start fresh – and retrace my steps – I came back to the original demos using the Arduino IDE 1.0.3 on my PC. That way I knew I was starting with clean libraries, and could more easily control the testing scenarios without botching other projects.

The first problem I ran into was that the ZIP files for the demos would not download onto a PC running XP with Firefox. So I actually had to download the files onto my MacBook first, then transfer the files to the PC via thumb drive.

The second problem I ran into was that the Seeed sketches were referring to WProgram.h, not Arduino.h. I also had to overcome incompatibilities in the New Serial libraries – help for which is easily found from a number of places by searching on the error codes. I even changed the pins library, even though this was only recommended for Linux users.

Over the course of about 2 hrs, I did some troubleshooting for the 1.4 and 1.7 demo examples. Both tests were performed separately – with only the libraries for the specific test installed at once (because Seeed tells you that the libraries can’t coexist). SD card was freshly formatted, with files in correct format and naming structure.

The first demo (1.4) failed miserably. The sketches compiled, and uploaded, but none of them resulted in playback – MP3 or WAV.

Demo 2 (1.7) eventually worked for MP3s, but WAVs were still played back with extra static and noise, similar to my other experiences with the GitHub code. At times it just sounds like the device is choking on the WAV data, which would make sense since there’s more data to process. No difference running via battery, USB or 9V adapter.

I can only conclude that a) this board is defective, or b) there is a user-definable codec setting somewhere in the Arduino code/library that is simply set incorrectly. Unfortunately, if the problem is a codec setting, I am not experienced enough to track that down. I tried to explore the code/libraries with my basic understanding, hoping there would be some obvious setting, but I didn’t find any. I could be looking for something that doesn’t exist.

For now I have a glorified MP3 player, which I guess is something. Other people have not even gotten this far with this board, but I appear to be the only one who has experienced the WAV issue. I will send a free CD out of my catalog (visit to anyone who can help me figure this out.

Why do I need WAV playback?

Hi-res MP3 is very good, and in most cases playback from this shield will not happen on a system with suitable 20 Hz-20 Khz speakers for full 44.1 Khz playback. My problem with using MP3 in this case is more about time than it is audio quality. MP3 requires a step for conversion. I’d like to be able to drag/drop WAV content directly from my writing/recording platforms, without the extra step of compressing the files.

Hey all,

now i have a project with arduino mega 2560 + music shield v1.2. i search all demo and didn’t work at all.

any one can help me in this problem?

i wanna play .wav from music shield when it call from that program.


Surprise! no one from seedstudio is going to respond.

It’s obvious that they don’t give a shit about answering questions (beyond just saying “look for answers on our wiki and forums” - guess what, there’s mainly just MORE QUESTIONS on the forums) or creating an easy to use, bug free product.

I’m having the same problem(s) and can’t find any answers anywhere - just lot of people complaining.

Why the hell are there 3 different “demo code” versions on the main page?

Why are they “not compatible” with each other (to the point where you have to actually remove the libraries associated with other demos)?

Why do 2 of them not even compile without a shopping list of errors?

Why is there no list of the library functions and how to use them???

I suggest you just go and buy a wave shield from ladyada.

This report would have more information with

“Show verbose output during compilation”

enabled in File > Preferences.

Arduino: 1.0.6 (Windows 7), Board: “Arduino Mega 2560 or Mega ADK”

musicPlayAll.ino:16:21: error: filesys.h: No such file or directory

musicPlayAll.ino:19:20: error: record.h: No such file or directory

musicPlayAll.ino: In function ‘void setup()’:

musicPlayAll:38: error: ‘InitFileSystem’ was not declared in this scope

musicPlayAll.ino: In function ‘void loop()’:

musicPlayAll:56: error: ‘Record’ was not declared in this scope

musicPlayAll:60: error: ‘Play’ was not declared in this scope

This report would have more information with

“Show verbose output during compilation”

enabled in File > Preferences.

Arduino: 1.0.6 (Windows 7), Board: “Arduino Mega 2560 or Mega ADK”

player.cpp: In function ‘int playFile()’:

player.cpp:136: error: ‘listoffset’ was not declared in this scope

player.cpp:137: error: ‘indexlist’ was not declared in this scope

what is wrong?