Problème avec un module grove mp3 2.0

Bonjour, j'utilise ce programme et il marche très bien mais je peut lire seulement une musique et je n’arrive pas à lire plusieur musique (mp3)

#include <SoftwareSerial.h>
#include <MP3Player_KT403A.h>

SoftwareSerial mp3(9, 10); // ICI CHOISIR LES BONNES PIN (mais c'est idiot sur un MEGA !!)

void setup()
{
  mp3.begin(9600);   // le module grove est configuré pour discuter à 9600 bauds, donc c'est la vitesse que l'on choisit
  Serial.begin(9600);
  delay(100); // petit délai pour s'assurer que tout s'initialise bien
  SelectPlayerDevice(0x02);       // choisir la carte SD.
  SetVolume(20);                // définir le volume entre 0 et 30 (ou entre 0x00 et 0x1E)
 
}

void loop()
{
  SpecifyMusicPlay(2);            // lancer la chanson à l'index 1 (index entre 1-65535 - dans l'ordre d'ajout sur la carte SD sans doute)
  while (QueryPlayStatus() != 0); // uniquement si on veut que le programme attende activement la fin de la chanson
   
  }

Il y a un exemple de programme sur le github : est-ce que tu le comprends ?

La commande

/**************************************************************** 
 * Function Name: SpecifyMusicPlay
 * Description: Specify the music index to play, the index is decided by the input sequence of the music.
 * Parameters: index: the music index: 0-65535.
 * Return: none
****************************************************************/

SpecifyMusicPlay(n);

te permet de jouer le morceau de musique numéro 'n'. n doit être déclaré en uint16_t ou unsigned int
~~Je crois que les noms des fichiers mp3 doivent suivre un schéma particulier.~~Les fichiers sont lus dans l'ordre où ils ont été écrits sur la carte SD. Ce doivent être des fichiers mp3, je ne sais pas si les wav sont pris en compte, malgré ce qu'en dit la notice du module.

Un autre exemple de code proposé par J-M-L ici.