Categories

Newsletter

MP3 SD Shield for Arduino Maximize

MP3 SD Shield for Arduino

Place this shield on top of your Arduino to play mp3 files off an SD card! Add sound to your projects! Solder the headers on to use as a shield or solder to wires to use as a module.

More details

Availability: IN STOCK

View Product Location Store Map
Tinkersphere

TS-975

$39.99

This assembled Audio shield gives you the ability to play audio files off an SD card with ease. With onboard Volume +/-, Play, Previous, and Next buttons along with Audio output via standard headphone jack you can easily add music/audio to your Arduino project. Connect your headphone or speaker to the output jack to control your MP3 files via Arduino.

Specifications:

  • Audio Output:
    • 1/8" 3.55mm Mono(the kind used for headphones / speakers)
    • Solder Pads for Stereo Left and Right Speakers
  • Full size SD card Slot
  • Audio File Types Supported:
    • 16K-320Kbps MP3 files
    • 8K-44.1KHz sampling rate WAV files (SPI-FLASH)
  • Onboard buttons:
    • Prev
    • Play
    • Next
    • Volume +
    • Volume -
    • Copy
    • Sleep
  • Control via serial with Arduino or press the keys onboard
  • Can directly drive 32 ohm headphones
  • Audio Amplifier onboard
  • to drive 3W/4Ω external loudspeaker.
  • Adjustable Volume Resolution: 32 steps
  • Supports FAT16/FAT32 file system
  • Supports both SD/SDHC card and U-Disk cards
  • On board 64MBit SPI-FLASH
  • Supports copying audio files from SD card or U-Disk to SPI-FLASH
  • Sleep Mode

 

#include <SoftwareSerial.h>
SoftwareSerial Geno(7,8); // Rx , Tx

unsigned char Data[10];
unsigned char i;

void setup() {
delay(1000);
Geno.begin(9600);
delay(1000);
SetVolume(30);

}

void playTrack(int num){

delay(1000);

Data[0] = 0x7E;
Data[1] = 0x04;
Data[2] = 0xA0;
Data[3] = 0x00;
Data[4] = 0x00 + num;
Data[5] = 0x7E;
Command(Data,5);

play_pause();

delay(3000);

}

void SetVolume( int vol){
Data[0] = 0x7E; // START
Data[1] = 0x03; // Length Not 0x02
Data[2] = 0xA7; // Command
Data[3] = vol; // new volume
Data[4] = 0x7E; // END
Command(Data,5);
}

void play_pause(){
Data[0] = 0x7E; // START
Data[1] = 0x02; // Length
Data[2] = 0xA3; // Command
Data[3] = 0x7E; //Mode parameter
Command(Data,4);
}

void Command(unsigned char *Data, int length){
for(int i=0; i<length; i++){
Geno.write(Data[i]);
}

}

void loop() {

playTrack(1);

playTrack(2);

}