Faire un don
Fichiers audio libres de droits et gratuits.
EN - FR
English - Français
Logo du site LaSonotheque.org
Logo du site LaSonotheque.org
⚠️ LaSonothèque a du mal... elle a besoin de vous pour rester en vie ! Faites un (petit) don ⚠️

< Tous les dossiers

Fabriquer une boite à sons (avec un Arduino et un DFPlayer)

Nous avons vu, dans un précédent dossier, comment utiliser le lecteur audio "DFPlayer" pour réaliser une boite à sons très simplement. Aujourd'hui, je vous propose d'y brancher un microcontrôleur "Arduino" pour le rendre plus polyvalent et "intelligent". Dans un autre dossier, je vous ai aussi décris comment réaliser une boite à sons avec un Raspberry Pi. Comme toujours, si vous avez la moindre question : contactez-moi !

Si vous n'êtes pas bricoleur, je vous propose d'acheter l'ensemble, déjà réalisé et soudé, sur ma boutique : le module "Ambi'son Mini".

Voici l'illustration de ce qu'il est possible de faire avec un DFPlayer + Arduino. Mon fameux "Quiz'O'Phone, spécial Noël" :

https://www.youtube.com/embed/RkAtNBXJRT0

Mais aussi :

Présentation

Le DFPlayer un petit composant qui lit les fichiers audio contenus dans sa carte micro-SD. A la base, il était stéréo, mais depuis peu je n'en trouve que des mono. Il dispose d'une sortie "Line" et même d'une sortie amplifiés 3W. Il est très simple d'utilisation. Mais il n'est capable que de lire ce qu'on lui demande : si on appuie sur un bouton, il lit ceci ou cela, il peut même lire un fichier en boucle, mais il ne va pas pouvoir être autonome car il va attendre un ordre manuel pour agir.

L'Arduino, quant à lui, est un "microcontrôleur", c'est à dire un petit ordinateur. Il ne dispose pas d'OS (contrairement aux Raspberry Pi), mais il est capable de faire tourner un petit programme en language C++. C'est lui qui va contrôler notre DFPlayer pour le rendre autonome.

A terme, comme l'Arduino dispose de nombreuses entrées et sortie, il serait possible de faire ce que vous souhaitez sur la base de ce dossier :

Voici une courte vidéo d'illustration, avant de vous détailler, étape par étape, comment réaliser la même installation :

Étape par étape

1. Préparation

Prenez un Arduino "nano". Cette petite version est suffisamment puissante pour notre utilisation peu gourmande. Pas la peine d'en acheter un de marque "Arduino" à 20€. Un équivalent chinois à 3€ fonctionne tout aussi bien. Sachez qu'en tous les cas, l'un comme l'autre est fabriqué en Chine...

Il vous faut aussi un DFPlayer, une plaque de prototypage, quelques fils, deux résistances de 1kOhm, ainsi qu'une prise jack et un casque. Il vous faudra un ordinateur pour alimenter l'Arduino, et le programmer.

Il faut aussi mettre une carte micro SD dans le DFPlayer, contenant plusieurs fichiers MP3 ou WAV. De préférence des fichiers courts, téléchargés sur LaSonotheque.org, pour rapidement voir le résultat de ce tuto.

2. Branchement

Nous allons disposer le jack, l'Arduino et le DFPlayer sur la plaque de prototypage de manière à ce que les pattes soient toutes indépendantes. Puis on suit le schéma de câblage.

dossiers/dossier-62/raspberry-dfplayer.webp

Sur ce schéma, on alimente le DFplayer avec le 5V et le GND de l'Arduino. On relie les TX, RX et Busy du DFPlayer au pattes D13, D12 et D11 de l'Arduino et on branche une prise jack ou un haut parleur 3W/4Ohms en sortie du DF Player. Ne pas oublier les résistances 1 kOhms.

Il n'est pas obligatoire de relier la sortie Busy du DFPlayer, peu de tutos l'indiquent. Mais je la trouve personnellement indispensable dans de nombreuses utilisations, alors je vous conseille de l'utiliser aussi.

L'alimentation électrique de l'ensemble sera fournie par le câble USB que vous allez brancher de l'ordinateur à l'Arduino, pour le programmer. Par la suite, vous pouvez mettre de 5 volts à la patte "5V" ou entre 7 et 12 volts à la patte "Vin".

3. Programmation

L'idée est d'écrire un programme en C++ depuis l'ordinateur, puis de le transmettre à l'Arduino.

Téléchargez et installez sur votre ordinateur l'application "Arduino IDE" (pour Mac, Linux et Windows). Un IDE ou EDI en français, est un "environnement de développement intégré" qui rassemble un tas d'outils indispensables à la programmation de l'Arduino.

Une fois dans IDE, allez dans "gérer les bibliothèque" et installez "DFRobotDFPlayerMini.h". La version 1.0.3 est la celle qui fonctionne le mieux à mes yeux.

En suite, je vous propose de copier/coller l'intégralité de ce code. Ou de cliquez droit sur ce lien pour télécharger directement le fichier :

#include "SoftwareSerial.h"
#include "DFRobotDFPlayerMini.h"

SoftwareSerial mySoftwareSerial(12,13);
DFRobotDFPlayerMini myDFPlayer;

void setup() {
  delay(3000);
  
  mySoftwareSerial.begin(9600);
  Serial.begin(9600);
  
  pinMode(11,INPUT_PULLUP);
  
  if (!myDFPlayer.begin(mySoftwareSerial)) {
    Serial.println(F("Pb communication : verifier SDcard"));
    while(true);
  }
  
  myDFPlayer.setTimeOut(500);
  
  myDFPlayer.volume(30);
  myDFPlayer.play(1);
}

void loop() {
  if(digitalRead(11)==1) {
    lecture();
  }
}

void lecture() {
  myDFPlayer.next();

  delay(500);
}

Une fois le programme collé, il faut cliquer en haut, sur la flèche qui va vers la droite, pour "Téléverser". Quelques secondes après, le programme est sur l'Arduino.

Celui-ci va lancer le fichier suivant, à chaque fois que le précédent est finit.

Pour expliquer simplement ce code :

4. Aller plus loin (facultatif)

Il est possible de faire appel à de nombreuses autres fonctions :

Problèmes connus

Une réalisation technique n'est jamais exempt de problèmes. En effet, j'en ai rencontré de nombreux :

Donc, avec ces quelques points, j'espère vous aider à régler les principaux que j'ai trouvés :

Conclusion

La réalisation d'un tel bricolage n'est pas difficile. Il suffit de suivre mes indications avec précision. Cependant, si vous avez le moindre problème, contactez-moi !

- Joseph SARDIN - Fondateur et Sonothécaire de BigSoundBank.com et LaSonotheque.org - Contact

Notez, Commentez !


Commentaires

Soyez premier à émettre un avis !

Découpez suivant les pointillés