Ce lecteur audio qui se base sur ma réalisation Lecteur audio 008 a été adapté pour un usage sur scène. Il permet de déclencher des fichiers audio (WAV ou MP3) au pied, de façon "immédiate" ou "préparée", grâce à des interrupteurs... au pied (footswitches).
Remarque : vu le principe de fonctionnement, cet appareil peut également trouver une place dans le salon en qualité de Juke-box.
Les fichiers audio au format MP3 ou WAV sont situés sur une carte SD ou micro-SD. Les formats pris en charge dépendent du module MP3 utilisés. Sur mon système, les caractéristiques sont les suivantes :
Agile des orteils ? Alors ce "pedalboard" doté de 45 boutons-poussoirs distants de 1,5 cm ou 2 cm est fait pour vous ;)
Bien entendu, les interrupteurs au pied (footswitches)
peuvent être remplacés par des interrupteurs manuels (handswitches).
Bien entendu (bis), il n'est pas obligatoire de câbler tous les
boutons-poussoirs s'il faut déclencher une dizaine de
morceau seulement.
Bien entendu (ter), il est possible d'espacer
davantage les boutons-poussoirs si la longueur de vos jambes dépasse
2 mètres.
La carte contrôleur pilote par liaison série un module lecteur de fichier audio dont la sortie audio doit être reliée à l'une des entrées "ligne" du système de diffusion sonore. La source d'énergie nécessaire à l'ensemble (+5 Vdc) est tirée du secteur 230 Vac.
A la mise sous tension, le système s'assure que le lecteur de fichiers audio est fonctionnel. En cas d'erreur (carte SD absente ou non reconnue par exemple), une LED rouge Error s'allume pour indiquer qu'un problème a été détecté. Chaque commande de démarrage ou d'arrêt d'un fichier audio fait également l'objet d'une vérification de bonne prise en compte, par contrôle des accusés de réception envoyés par le lecteur audio.
Pro - Schéma de la carte contrôleur seule.
Il est possible de commander la lecture de 200 fichiers audio différents, les fichiers étant "organisés" en 5 banques de 40 fichiers chacune. La sélection de la banque et du fichier de la banque sélectionnée s'effectue par les boutons poussoirs SW1 à SW5 et SW11 à SW58.
Les boutons-poussoirs SW1 à SW5 ont une double fonction :
- en les pressant brièvement (< 300 ms), ils permettent de
démarrer ou d'arrêter la lecture des morceaux (Play, Stop, ...).
- en les pressant longtemps (> 300 ms), ils permettent
de sélectionner la
banque (1..5).
Les boutons-poussoirs SW11 à SW58 permettent de sélectionner le morceau à jouer (1..40) dans la banque sélectionnée.
Si un morceau est en cours de lecture et que l'on choisit une nouvelle banque, la LED correspondant à la banque en cours reste allumée et la LED qui correspond à la nouvelle banque sélectionnée clignote. Pour éviter toute confusion, le numéro de banque du morceau en cours de lecture qui est affiché sous forme numérique reste celui de la banque en cours. La mise à jour du numéro de banque sur l'afficheur numérique n'est réalisée qu'après démarrage d'un morceau sélectionné dans la banque nouvellement sélectionnée.
Outre le mode classique de lecture à la demande d'un fichier
son (One-Shot),
trois autres modes ont été implémentés :
Les modes de lecture en continu Order et Random n'ont bien sûr pas été prévus pour la scène, je trouvais juste dommage de ne pas disposer d'une telle fonction (j'aime profiter de la fonction Random quand je fais la vaisselle ou le ménage). Dans ces deux modes, le maximum de fichiers gérés est de 2999.
Le choix du mode s'effectue avec un bouton-poussoir câblé sur la broche RB5/RA13 du PIC, selon l'indication donnée au paragraphe "Commandes optionnelles". En l'absence de ce bouton, le système reste continuellement en mode One-Shot, mode par défaut.
Le circuit d'affichage principal est composé de 8 afficheurs LED à 7 segments pilotés par un MAX7219. Les chiffres de 0 à 9 ainsi que quelques lettres de l'alphabet (plus ou moins bien représentées) suffisent pour indiquer le numéro de banque (1 à 5), le numéro du morceau (1 à 40) dans la banque en cours, ainsi que l'état en cours (Play, Pause, Stop).
Le circuit d'affichage secondaire est composé de 64 LED et permet de visualiser le mode de lecture, l'état, le numéro de banque et le numéro du morceau de la banque sélectionné.
Remarque : lors d'une lecture en mode continu ou aléatoire (Order ou Random), l'afficheur principal indique le numéro du morceau en cours de jeu (entre 1 et 2999), et non celui de la banque en cours et du morceau de la banque en cours (X.YY).
A gauche : mode "One-Shot" (1.01 à 5.40) ; à droite : mode "Random" (1 à 2999)
Des commandes additionnelles peuvent être utilisées en ajoutant quelques boutons-poussoirs : réglage de volume, choix d'une correction en fréquence (EQ), choix du mode de lecture (One-Shot, Prepare, Order ou Random) et reset du décodeur MP3.
Le choix du mode de lecture s'effectue avec le bouton-poussoir SW67. En l'absence de ce bouton, le système reste en permanence dans son mode par défaut One-Shot.
La version V3 du PCB que j'ai conçu (visible en fin de page) intègre cette extension.
Il existe plusieurs circuits intégrés spécialisés dans la lecture de fichiers audio MP3, WAV ou autres formats : YX5300, YX8002/DFR0299, GPD2846, JQ6500 ou encore WTV020 (à noter que certains modules ne peuvent lire que des fichiers audio compressés 4-bit PCM). J'ai retenu ceux qui se sont les mieux comporté (en terme de fiabilité et de rapidité de réaction) lors de mes divers tests avec des fichiers MP3.
Alimentation autorisée : +9 V à +15 V, à partir du secteur.
Les tensions requises pour le microcontrôleur PIC (+5V) et le lecteur audio (+5V ou +3V3 selon module utilisé) sont obtenues par des régulateurs intégrés.-
En attendant la réception des PCB finaux du lecteur 008c, les premiers essais ont été réalisés avec le circuit terminé du lecteur audio 008 auquel j'ai ajouté quelques fils soudés côté soudure pour l'extension d'affichage.
Connexion du lecteur 008 à l'un de mes modules décodeur MP3 et au module d'affichage à base de MAX7219 :
Tout fonctionne comme attendu, ordres de commande et vérification des messages retournés par le lecteur (feedback activé).
Comme il n'était pas pratique de tester le fonctionnement des 53 boutons-poussoirs avec les résistances en l'air, j'ai décidé de réaliser un PCB incluant le microcontrôleur et les boutons de commande (prototype #2). Seuls les circuits d'affichage ne sont pas inclus sur le PCB du prototype #2, car je disposais déjà de modules d'affichage prêts à l'emploi (comme celui visible sur la photo ci-devant).
PCB dessiné en double face, selon implantation montrée plus loin.
Pro - Logiciel "Lecteur audio 008c" non disponible.
Carte CPU réalisée par mes soins. Il s'agit (en gros)
du PCB du lecteur
audio 008 auquel j'ai ajouté les 53 boutons-poussoirs
(5+40+8) et
les borniers de connexion requis pour les deux circuits d'affichage.
Le module de lecture MP3 est un module acheté tout fait. J'aurais pu l'inclure sur le PCB contrôleur, en acceptant d'utiliser une seule et même puce de décodage MP3. Mais mon souhait actuel est toujours de pouvoir utiliser différents types de lecteurs MP3 en modules séparés.
26/09/2021
- Ajout photos prototype #2 sur PCB 3è génération (008c-V3).
12/09/2021
- Implémentation de plusieurs modes de lecture (One-Shot, Prepare, Order ou Random).
- Ajout de commandes pour le réglage du volume, le choix du correcteur
(EQ) et le Reset du décodeur MP3.
- Désormais, les mêmes boutons-poussoirs SW1 à SW5 peuvent être
utilisés pour la
navigation et de changement de banque, sans avoir besoin de spécifier
le mode de foncionnement désiré (suppression du bouton de mode SW6).
- Ajout d'un retour visuel de lecture de fichier audio par LED sur la
matrice des boutons-poussoirs de sélection de morceau (ajout d'un
second
circuit d'affichage MAX7219 associé à 64 LED câblées en matrice 8x8).
29/08/2021
- Première mise à disposition, avec fonctions de base (mode de lecture One-Shot).