Il existe une version anglophone de ce dossier.
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 (multipiste possible). 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".
Voici l'illustration de ce qu'il est possible de faire avec un DFPlayer + Arduino. Mon fameux "Quiz'O'Phone, spécial Noël" :
Mais aussi :
VOTRE ATTENTION !
Les DF Player Mini existent en diverses versions, par divers fabricants, chez divers fournisseurs. Je ne sais pas quel DFPlayer vous avez, ou aurez, et ce qu'il sera possible d'en faire.
Plus d'informations sur mon dossier relatif au "DF Player Mini".
Le DFPlayer un petit composant qui lit les fichiers audio contenus dans sa carte micro-SD. Il dispose d'une sortie "Line" stéréo et même d'une sortie amplifiés 3W (mono). Il est très simple d'utilisation, mais il est assez bête, tout seul. C'est l'Arduino qui va se charger de lui donner des ordres.
L'Arduino est donc 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 :
Prenez un Arduino. La version "Nano" est suffisamment puissante pour notre utilisation peu gourmande. Pas la peine d'en acheter un de marque "Arduino" à 20€, un clone chinois à 3€ fonctionne tout aussi bien. C'est ce que j'utilise... 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, une résistance de 1 kOhm (1 000 Ohms), ainsi qu'une prise jack et un casque, ou bien un HP de 3 Watts sous 4 Ohms. 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, WAV ou WMA. De préférence des fichiers courts, téléchargés sur LaSonotheque.org, pour rapidement voir le résultat de ce tuto.
Nous allons disposer le jack (ou HP), l'Arduino et le DFPlayer sur la plaque de prototypage de manière à ce que les pattes soient toutes indépendantes. Puis on suit ce schéma de câblage.
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 3 Watts / 4 Ohms en sortie du DF Player. Ne pas oublier la résistance 1 kOhms.
En gros, ça doit ressembler ça, avec une alimentation via USB, et un HP de 3 W :
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" de l'Arduino
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 :
Il est possible de faire appel à de nombreuses autres fonctions :
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, comme toujours : contactez-moi !
♥ - Joseph SARDIN - Fondateur et Sonothécaire de BigSoundBank.com et LaSonotheque.org - Contact
Soyez premier à émettre un avis !