Arduino VS1053 MP3 Audio Shield mit TF Karte

Last Updated on 1. April 2022 by sfambach

Diese Zusatzplatine, für rund 6€, kann eine Vielzahl an Musikformaten abspielen und besitzt neben einem SD Karten Steckplatz auch ein Mikrophon, einen Kopfhörer Anschluss und einen Line In Eingang. Somit macht sie aus dem Arduino einen Vollständigen MP3 Player und ist zum Digitalisieren von Audiosignalen geeignet.

Fakten

  • MP3 Chip VS1053 MP3
  • Anschluss über SPI interface
  • Kopfhörer 3,5 mm Klinkenanschluss
  • Line In 3,5 mm Klinkenanschluss
  • Microphon
  • Power LED
  • Spannungsregler AMS-1117 mit bis zu 800mA
  • Stronversorgung über +5 VDC
  • Christall 12.288 Mhz crystal
  • SD Karten Slot
  • Decodes formats Ogg Vorbis:
    • MP3 = MPEG 1 & 2 audio layer III (CBR+VBR+ABR)
    • MP1 & MP2 = MPEG 1 & 2 audio layers I & II optional
    • MPEG4 / 2 AAC-LC(+PNS), HE-AAC v2 (Level 3) (SBR + PS)
    • WMA4.0/4.1/7/8/9 alle Profile (5-384 kbps)
    • FLAC verlustfreies audio über Softwareinterface (upto 24 bits, 48 kHz)
    • WAV (PCM + IMA ADPCM)
    • General MIDI 1 / SP-MIDI format 0
  • Encodes formats Für das Microphon und Line-In Ogg Vorbis mit Software Plugin
    • IMA ADPCM
    • 16-bit PCM
BeschreibungKürzelPin
Aktivierung des Chips (low Aktiv)CS6
Daten Chip Auswahl (low Aktiv)DCS7
Data Anfrage Pin (Player fragt nach mehr Daten)DREQ2
Reset des MP3 Chips (Low = Reset)RESET8
Auswahl Pin für die SD Karte CS9
Ausgehende Daten (Master Output Slave Input)MOSI11
Eingehende Daten (Master Input Slave Output)MISO12
Serieller TaktSCK13
Arduino VS1053 MP3 Audio Shield – Pin Belegung

Anwendungsbereiche

  • MP3 Player
  • Audio aufnehmen
  • Audio abspielen
  • OGG Konvertierung

Ansichten

Programmierung

Es gibt eine Bibliothek von SparkFunk mit Beispielen die meiner Meinung nach ausreicht um die Platine zu testen. Deswegen habe ich an dieser Stelle das Rad nicht neu erfunden, sondern ein bestehendes Beispiel genutzt.

Bibliotheken

Die Bibliothek gibt auf github, leider entspricht sie nicht den Arduino Normen,

https://github.com/madsci1016/Sparkfun-MP3-Player-Shield-Arduino-Library

Datei entzippen und die Ordner SdFat und SFEMP3Shield in den Library Ordner kopieren.

S1053 Mp3 AudioShield – In libraries Ordner

Testprogramm

Als Testprogramm habe ich MP3Shield_Library_Demo verwendet.

S1053 Mp3 AudioShield – Demo Auswählen
S1053 Mp3 AudioShield – So schauts aus

Der Player ist über die Tastatur bedienbar h (+ Enter) zeigt das Menü. Ich habe einen Track auf eine SD Karte geladen und diese beim Start schon im Player gehabt dann kann mit f die Datei gestartet werden.

Probleme

Arduino reagiert nicht über Console

Beim Abspielen einer MP3 Datei reagiert der Arduino nur zögerlich oder garnicht.

Der Arduino scheint etwas zu langsam zu sein um das MP3 Board mit Daten zu versorgen. Eine Lösung hierfür habe ich leider nicht.

Sonstiges

Der VS 1053 kann noch einwenig mehr siehe hierzu auch das Datenblatt.

VS1053 Interner Aufbau und Anschlüsse

Fazit

Audio Aufnahme, abspielen von MP3s oder andere Audioanwendungen scheinen nun für den schwächsten Arduino kein Problem mehr zu sein. Schade dass der reguläre Arduino Uno ohne Wifi kommt, so ist ein Internetradio nicht ohne zusätzliche Anstrengungen machbar aber auch im Bereich des möglichen. Leider scheint der Arduino auch etwas zu langsam zu sein um mit dem MP3 Datenmengen klar zu kommen und gleichzeitig noch Aktionen zu ermöglichen. Um aber mal mit MP3s und dem arduino spass zu haben ist diese nettes kleines Board und mit seinen rund 6€ seinen Preis mehr als wert.

Verwandte Beiträge

Quellen

Mein GIT Ordner zur Platine

https://www.geeetech.com/wiki/index.php/Arduino_MP3_shield_board_with_TF_card

https://www.vlsi.fi/en/products/vs1053.html

VS1053 Datenblatt

https://tigoe.github.io/SoundExamples/vs1053-mp3.html

https://github.com/tigoe/SoundExamples

https://www.youtube.com/watch?v=a936wNgtcRA

https://github.com/pschatzmann/arduino-audio-tools

https://github.com/pschatzmann/ESP32-A2DP

https://funduino.de/mp3-shield-tutorial

https://github.com/mpflaga/Arduino_Library-vs1053_for_SdFat

https://www.arduino.cc/reference/en/libraries/sdfat/

https://www.elecrow.com/wiki/index.php?title=VS1053_MP3_Shield

Sparkfun MP3 Shield Arduino Library

https://www.elecrow.com/download/vs1053.pdf

https://draeger-it.blog/arduino-lektion-72-mp3-shield/

https://github.com/madsci1016/Sparkfun-MP3-Player-Shield-Arduino-Library

4 Gedanken zu „Arduino VS1053 MP3 Audio Shield mit TF Karte

    1. Schade dass es nicht geklappt hat. Habe es gerade nochmal bei mir probiert und funktionierte. Leider kann ich nicht einschätzen wo bei dir der Fehler liegen könnte.

  1. Die Bibliothek entspricht leider nicht nur den Arduino Normen, sondern auch den Codevorschriften von C++
    Man bekommt die Fehlermeldung:
    libraries\Arduino_Library-vs1053_for_SdFat-master\src\vs1053_SdFat.cpp:296:34: warning: ISO C++ forbids converting a string constant to ‚char*‘ [-Wwrite-strings]
    if(VSLoadUserCode(„patches.053“)) return 6;

    Es funktioniert nicht.

    1. Den Fehler habe ich neulich zum ersten mal unter Linux gesehen. Windows war zum Testzeitpunkt nicht so wählerisch. ALlerding habe die sourcen gerade nochmnal unter Linux compiliert und funktionierte. Für den Fehler gibt ne Menge Lösungen im Netz.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert