Welcome to our 9th blog post! In this update we are going to guide you through the process to play .wav files on the MKR1000. The components we have used are -
- Arduino MKR1000
- PAM 8403 Amplifier (5V with Potentiometer)
- Speaker (4 Ohms, 3 Watts)
- Jumper cables
Speaker (8 Ohms, 3 Watts) PAM 8403 Amplifier
The library designed for SAMD boards is called AudioZero. This library enables an Arduino Zero or MKR1000 board to play back .wav files from a storage device like an SD card. More information can be found on https://github.com/arduino-libraries/AudioZero
Pin diagram -
After connection -
Code -
#include <SD.h>
#include <SPI.h>
#include <AudioZero.h>
void setup()
{
// debug output at 115200 baud
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}
Serial.print("Initializing SD card...");
if (!SD.begin(4)) {
Serial.println("initialization failed!");
while (1);
}
Serial.println("initialization done.");
delay(2000);
// 44100kHz stereo => 88200 sample rate
AudioZero.begin(2*44100);
}
void loop()
{
int count = 0;
// open wave file from sdcard
File myFile = SD.open("a.wav");
if (!myFile) {
// if the file't opden, print an error and stop
Serial.println("error opening test.wav");
while (true);
}
Serial.print("Playing");
// until the file is not finished
AudioZero.play(myFile);
Serial.println("End of file. Thank you for listening!");
//while (true) ;
}
Demonstration -
Stay tuned for our next blog!






