Electronique > Réalisations > Lecteur audio 008c - Pro

Dernière mise à jour : 12/09/2021

Présentation

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). 


lecteur_audio_008c_pcb_3d_a_front  lecteur_audio_008_pcb_3d_rear  lecteur_audio_008c_proto_rm_001b

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 :


lecteur_audio_008c_front-panel_001a

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.


Vue d'ensemble

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.


lecteur_audio_008c_syno

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. 


Schéma

Pro - Schéma de la carte contrôleur seule.


lecteur_audio_008c
Circuit de commande pour 200 morceaux... Qui tentera de placer l'intégralité des 45 interrupteurs au pied sur son pedalboard ?

Sélection et affichage du morceau à jouer

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.


Sélection et démarrage d'un morceau

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). 

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.


Affichage du morceau sélectionné et de l'état du système

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).


Commandes optionnelles

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.


lecteur_audio_008c_ext

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.


Choix du module de décodage MP3

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

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.

Prototypes

-

Prototype #1

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.


lecteur_audio_008_proto_rm_001b lecteur_audio_008_proto_rm_001d

Connexion du lecteur 008 à l'un de mes modules décodeur MP3 et au module d'affichage à base de MAX7219 :


lecteur_audio_008_proto_rm_001f lecteur_audio_008c_proto_rm_001a

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).


Prototype #2

PCB dessiné en double face, selon implantation montrée plus loin.

< PCB V3 fabriqué (12/09/2021) - en attente de réception (prévue le 20/09/2021) >

Photos second prototype à venir...


Logiciels du PIC

Pro - Logiciel "Lecteur audio 008c" non disponible.


Circuit imprimé (PCB)

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.


lecteur_audio_008c_pcb_top_components    
Carte contrôleur Lecteur audio 008c = base du lecteur audio 008 avec logiciel 008c

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.


Historique

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).