Table des matières:

Le lecteur de musique MP3 Shuffle "Jumbleum": 8 étapes (avec photos)
Le lecteur de musique MP3 Shuffle "Jumbleum": 8 étapes (avec photos)

Vidéo: Le lecteur de musique MP3 Shuffle "Jumbleum": 8 étapes (avec photos)

Vidéo: Le lecteur de musique MP3 Shuffle
Vidéo: Mettre des musiques sur un iPod shuffle 2024, Novembre
Anonim
Les
Les

Pour ce projet, j'ai décidé de créer un lecteur puissant et facile à utiliser dans mon atelier.

Après avoir essayé d'autres modules MP3, j'ai choisi le module "DFPlayer Mini" facilement disponible et bon marché.

Il a un mode "Random play" MAIS parce qu'il est aléatoire, il est possible que des morceaux se répètent !

Ma conception utilise un microcontrôleur PIC pour "embrouiller" la musique à jouer de manière aléatoire sans répétitions. (lorsque sous tension).

Il surmonte également les restrictions sur les noms de fichiers et les dossiers causées par le système de fichiers limité des DFPlayers. Vous pouvez désormais mettre tous vos fichiers musicaux directement sur une carte micro SD ou une clé USB sans avoir à les renommer ou à vous soucier des noms de dossier.

Caractéristiques

  • À la mise sous tension, les morceaux sont mélangés pour éviter les répétitions.
  • Simplement contrôlé par un bouton, tournez pour le volume, appuyez pour la prochaine chanson !
  • Utilise un module MP3 « DFPlayer » prêt à l'emploi pour lire jusqu'à 32 Go de morceaux !
  • Les morceaux peuvent être joués à partir d'une carte Micro-SD ou d'une clé USB
  • LED RVB pour l'éclairage d'ambiance pendant la lecture et les indications d'état.
  • Utilise deux modules amplificateurs de puissance de classe D de 60 W.
  • Un capteur interrompt la lecture lorsqu'aucun mouvement de l'utilisateur n'est détecté.
  • Peut également être contrôlé par une télécommande IR (protocole NEC)
  • Bouton-poussoir pour choisir et enregistrer les modes d'égalisation
  • Le réglage du volume est enregistré même après la mise hors tension.
  • L'amplificateur est coupé entre les pistes et à la mise hors tension pour éviter les « pops ».

Pour le cas, j'ai utilisé un ancien lecteur de télévision en streaming "Boxee Box" qui a été abandonné par le fabricant en 2012.

Étape 1: Fournitures et outils

Fournitures et outils
Fournitures et outils
Fournitures et outils
Fournitures et outils
Fournitures et outils
Fournitures et outils
  • Module régulateur D-SUN 3 Amp (Ebay ou Aliexpress)
  • Module Mini MP3 DFPLAYER (Ebay ou Aliexpress)
  • MODULE AMPLIFICATEUR MONO 60W TPA3118 PBTL (Ebay ou Aliexpress) X 2
  • Microcontrôleur PIC18F14K50-I/P PIC (type DIP)
  • Condensateur 100uF Radial Electrolytique 25V Fonctionnant
  • 47uF condensateur radial électrolytique 16V fonctionnant
  • Condensateur 0.1uF 2.5mm Y5V Céramique 50V fonctionnant X 5
  • 0.47uF Condensateur 2.5mm Y5V Céramique 50V fonctionnant
  • Condensateur 100uF électrolytique radial 16V fonctionnant X 2
  • Diode barrière Schottky BAT85
  • Fusible 3A poly réinitialisable (30v fonctionnant)
  • Longueurs de bande d'en-tête de 2,54 mm à couper selon les besoins
  • Douilles femelles à sertir type "Dupont" 2.54mm. 2 voies X 3 & 3 voies X 3
  • 2.1mm DC Socket PCB R/Montage en Angle
  • USB A femelle traversant PCB Socket
  • BC327 Transistor TO-92L
  • Résistance à film de carbone 10k 1/8W (5%)
  • Résistance à film de carbone 22R 1/8W (5%) X 2
  • Résistance à couche de carbone 470R 1/8W (5%)
  • Résistance à film de carbone 10K 1/8W (5%) X 9
  • Résistance à film de carbone 100R 1/8W (5%)
  • Résistance à film de carbone 1K 1/8W (5%)
  • Potentiomètre préréglé 10k 6mm X 2
  • Encodeur rotatif avec interrupteur type EC11 (Ebay ou Aliexpress)
  • LED adressable PL9823 5mm ou WS2812B SMD (1 ou plus)
  • Récepteur infrarouge TL1838 VS1838B HX1838 - EN OPTION (Ebay ou Aliexpress) (voir étape 6)
  • Module de capteur radar à micro-ondes RCWL-0516 - OPTIONNEL (Ebay ou Aliexpress)
  • Prise CI 28 broches DIP / DIL PCB (0,3 ") (pour le PIC)
  • Petit bouton poussoir (normalement ouvert)
  • Télécommande infrarouge IR (protocole NEC) - EN OPTION (Ebay) (voir étape 6)
  • Bouton pour encodeur rotatif
  • Bornes de haut-parleur à ressort à 4 voies (Ebay)
  • Carte PCB en cuivre double face de 1,6 mm d'épaisseur
  • Adaptateur d'alimentation CC (bloc d'alimentation PC 12 V 5 A ou 19,5 V 4 A)
  • Haut-parleurs X 2 (j'ai utilisé une impédance de 6 ohms jusqu'à 65 W)
  • Souder
  • Fil d'équipement
  • Papier pour imprimante laser « transfert de toner »
  • Outils de gravure de PCB - Chlorure ferrique et récipient en plastique, etc.
  • Vis et écrous d'entretoise en plastique PCB X 4
  • Vis et écrous M3 (pour bornes d'enceintes) X 4
  • Manchon thermorétractable

Outils

  • Petit fer à souder à pointe fine.
  • Lunettes de sécurité à utiliser pendant le soudage, la gravure, etc.
  • Imprimante laser avec alimentation papier manuelle (pour la méthode PCB de transfert de toner)
  • Fer à repasser domestique (pour la méthode PCB de transfert de toner)
  • Dragonne ESD (pour la manipulation de pièces sensibles à l'électricité statique)
  • perceuse PCB
  • Forets pour PCB, 0,8 mm, 1 mm et un foret étagé (3-13 mm)
  • Pinces, coupeuses, scie à métaux fine, lime
  • ordinateur
  • Programmeur Microchip PIC (par exemple Pickit2)
  • Logiciel de programmation autonome Microchip MPLAB ou PICkit2
  • Pistolet à colle thermofusible et bâtons de colle
  • Outil rotatif type "Dremel"
  • Pince à sertir (SN-28B) pour douilles "Dupont" (Ebay ou Aliexpress)

Étape 2: Schéma de circuit et comment cela fonctionne

Schéma de circuit et comment cela fonctionne
Schéma de circuit et comment cela fonctionne

Microcontrôleur PIC à puce électronique

Le cœur du circuit est un microcontrôleur Microchip PIC18F14K50. Cette puce a été choisie car elle a juste assez de mémoire disponible pour brouiller la musique, assez petite (20 broches) et peu coûteuse. Il est programmé en langage assembleur pour contrôler un module DFPlayer Mini MP3 à l'aide d'un protocole de données série. (9600 bauds).

Module MP3 Dfplayer

Le module DFPlayer est un appareil à très faible coût pour la lecture de fichiers MP3 à l'aide d'un support Mini-SDCard intégré ou via une clé USB externe si elle est installée. Il a une sortie DAC 24 bits et un amplificateur de 2 watts (non utilisé dans ce projet). Ce module est facilement disponible sur Ebay.

Il a quelques problèmes.

  • La disposition du module provoque des interférences sonores audibles (en particulier lors de la sélection d'un morceau ou lors de la lecture de sections très calmes.
  • Tous les vendeurs ne fournissent pas les modules avec la puce YX5200-24SS d'origine. (Certaines des puces alternatives peuvent ne pas fonctionner comme prévu.)

Cette conception essaie de minimiser le problème de bruit en désactivant les modules d'amplification chaque fois que la musique n'est pas diffusée.

Le PCB a des plans de masse pour aider à réduire le bruit. (N'utilisez pas de planche à pain !).

A la mise sous tension, le PIC demande le nombre total de morceaux disponibles sur la carte SD ou la clé USB du DFplayer.

Il mélange ces morceaux et commande ensuite au joueur de commencer à jouer.

La séquence de lecture complète est conservée dans la mémoire du PIC pendant la mise sous tension. Cela garantit que pendant la mise sous tension, un morceau ne peut pas se répéter tant que tous les morceaux de la carte SD n'ont pas été joués.

Lorsqu'un morceau se termine, la ligne occupée du joueur passe au niveau haut, le PIC sélectionne le morceau suivant et envoie la commande de lecture au joueur.

Codeur rotatif

Le volume du lecteur est contrôlé par un encodeur rotatif. À chaque tour de bouton, le PIC détecte le sens de rotation et envoie des commandes au joueur pour régler le nouveau niveau de volume. Le niveau de volume sélectionné est enregistré dans l'eeprom du PIC pour être conservé même après la mise hors tension.

Le bouton de l'encodeur rotatif

Un appui court indique au PIC de sélectionner une nouvelle mélodie. Si le bouton est maintenu enfoncé pendant quelques secondes, le PIC arrête la mélodie en cours et coupe les amplis. La prochaine pression sur le bouton sélectionne et joue un nouveau morceau.

Le bouton EQ

Chaque pression sur le bouton EQ fait passer le PIC à travers les modes EQ disponibles et envoie la commande au lecteur. Le mode choisi est enregistré dans l'eeprom.

Les six modes d'égalisation disponibles sont indiqués par la couleur de la LED RVB:

  1. Désactivé (pas d'égaliseur)
  2. Rouge (Pop)
  3. Vert (roche)
  4. Bleu (Jazz)
  5. Blanc (Classique)
  6. Magenta (basse)

Ces modes d'égalisation ne semblent pas très bien correspondre à leur description ! (Le mode Bleu (Jazz) est mon préféré).

Module régulateur de tension D-SUN

Le microcontrôleur PIC, le module DFplayer et les LED RGB sont alimentés en 5V par un module régulateur à découpage haute efficacité D-Sun 3A. (disponible sur Ebay).

Le module régulateur a une résistance variable qui doit être ajustée pour produire exactement 5 volts avant de le connecter à n'importe quelle partie du circuit. Alternativement, il existe une version similaire du module régulateur D-SUN disponible auprès de certains vendeurs Ebay qui a une sortie 5V fixe. Il semble identique au module d'origine, sauf que la petite résistance variable a été remplacée par une résistance SMD de 44,2 KOhm (63C).

Modules amplificateurs TPA3118

Les deux modules amplificateurs de puissance TPA3118 classe D (numérique) 60 W sont alimentés directement à partir d'une alimentation CC externe pouvant être comprise entre 8 et 19,5 volts, avec une puissance nominale d'au moins 3 ampères. (Un bloc d'alimentation pour ordinateur portable 12 V ou 19,5 V peut être utilisé).

La puce TPA3118 est en fait un ampli stéréo de 30W qui est utilisé en mode mono (PBTL) pour atteindre une puissance maximale de 60W à 10% THD (en utilisant un haut-parleur de 4 Ohm et une alimentation 21V).

En réalité, environ 30 W maximum par module sont possibles à moins de 1% THD car ils n'ont pas de dissipateur thermique. Il y a une entrée « Standby » (mute) sur chaque module. Ceci est commuté par le transistor PNP Q1. Le PIC les met en veille lorsqu'ils ne jouent pas de morceaux et également pendant la mise hors tension, la diode D1 et le condensateur C11 maintiennent une tension pour maintenir Q1 suffisamment longtemps pour empêcher le haut-parleur de « pop ».

Le cavalier JP1 règle le signal de polarité de veille pour qu'il corresponde au module d'amplification (cela permet d'utiliser différents types de modules d'amplificateur si vous le souhaitez).

LED RVB adressables

L'éclairage d'ambiance et d'état est assuré par une ou plusieurs LED RVB adressables. Un trou traversant de 5 mm de type PL9823 ou SMD WS2812B peut être utilisé.

Le cavalier JP2 doit être réglé pour correspondre au type de LED car ils ont des tables de couleurs légèrement différentes. Cela garantit que les couleurs d'état correctes sont toujours affichées.

Si plusieurs LED sont utilisées, elles peuvent être connectées en parallèle avec la première. (La broche Data OUT n'est pas utilisée).

Télécommande

Un capteur à distance VS1838B IR 38Khz peut être monté sur J4. Cela permet au lecteur d'être éventuellement contrôlé par une télécommande IR à protocole NEC.

La télécommande remplit les mêmes fonctions (volume, sélection de piste suivante, arrêt et égaliseur) plus Pause/Resume. La télécommande a été obtenue sur Ebay.

Le lecteur est préprogrammé pour fonctionner avec les codes clés NEC pour ce modèle précis. D'autres types qui utilisent le protocole NEC peuvent être configurés (voir la section Configuration de la télécommande ci-dessous).

Capteur de mouvement

Cela met le lecteur en pause si personne ne l'écoute. Un capteur de mouvement corporel peut être connecté à J5. Un module micro-ondes de type "radar" RCWL-0516 fonctionne bien car il a une bonne sensibilité/portée de mouvement et peut facilement être installé à l'intérieur du boîtier du lecteur mp3 (pas en métal).

Tout mouvement détecté maintient les airs joués. S'il n'y a aucun mouvement dans les 5 minutes, le lecteur met la mélodie en pause et met les amplis en mode veille. Lorsqu'un mouvement est à nouveau détecté, la mélodie reprend.

Si le capteur de mouvement n'est pas installé, le lecteur n'expire pas.

Étape 3: Construction

Construction
Construction
Construction
Construction
Construction
Construction
Construction
Construction

J'ai réalisé le PCB en utilisant la "méthode de transfert de toner" sur une carte double face (environ 10,3 x 7,3 cm). Voir les deux fichiers PDF à la fin de cette section (un pour chaque couche de cuivre). Imprimez-les sur le transfert de toner papier à l'aide d'une imprimante laser à l'échelle 100%. Les deux feuilles de transfert doivent être alignées avec précision. (J'ai obtenu les meilleurs résultats en utilisant du papier de transfert spécial (feuilles jaunes brillantes minces) obtenu sur Ebay ou Aliexpress).

Le régulateur D-SUN doit être préparé en soudant des paires de broches d'en-tête de 2,54 mm sur le côté composant des trous d'entrée et de sortie du module, comme indiqué sur la photo. (cela permet de monter ultérieurement le module à l'envers sur la platine). Connectez une alimentation CC (environ 9-12 V) aux broches IN+ et IN- et mesurez la tension sur les broches OUT+ et OUT-. Ajustez la petite résistance variable pour obtenir la tension aussi proche que possible de 5,00 V. Le réglage de la résistance est très sensible, si 5.00V est difficile à atteindre, réglez-le légèrement en dessous.

Les deux modules TPA3118 Amp peuvent être équipés de broches d'en-tête sur la face inférieure pour le montage sur le PCB. Une petite modification peut être apportée pour améliorer la qualité sonore. Par défaut, le gain de l'amplificateur est préréglé très haut (36dB) pour un volume maximum. Cela provoque un sifflement et une instabilité. Il peut être éventuellement réduit à 20dB, résultant en beaucoup moins de sifflement et une meilleure qualité audio (au détriment du volume maximum) en supprimant une résistance SMD R27 sur chaque module.

La résistance R27 (voir photo) peut être retirée en la chauffant soigneusement avec une pointe de fer à souder fine puis en la retirant avec une pince à épiler. (C'est une très petite résistance, une loupe peut être nécessaire pour cela !).

Cavalier JP1 (Polarité d'inhibition de l'amplificateur)

Lors de l'utilisation du module TPA3118 par défaut. Jumper les deux pads gauches de JP1 comme indiqué sur la photo.

Cavalier JP2 (type LED RVB)

Si vous utilisez la LED WS2812, Jumper les deux pads gauches de JP2 comme indiqué sur la photo.

Pour les LED de type PL9223, jumper les deux plots de droite de JP2 à la place.

Étape 4: Logiciel

Voici le firmware du fichier HEX pour le microcontrôleur PIC18F14K50.

Étape 5: Préparation de la carte mémoire et des fichiers MP3

Le lecteur peut utiliser une carte Micro-SD ou une clé USB d'une capacité allant jusqu'à 32 Go.

Avant la première utilisation, la carte mémoire/clé devra être formatée à l'aide d'un PC.

Si la capacité de la carte est inférieure à 4 Go, les PC utilisent généralement automatiquement le système de fichiers FAT ou FAT16 (ce qui est bien).

Si la carte fait plus de 4 Go, vous devrez peut-être sélectionner manuellement le système de fichiers FAT32 lors du formatage pour qu'il fonctionne.

Si vous avez une collection de musique trop grande pour tenir sur votre carte mémoire, utilisez un programme de gestion de musique tel que MediaMonkey pour créer une nouvelle liste de lecture. Modifiez la nouvelle liste de lecture et triez par « aléatoire » pour mélanger toute votre collection de musique. Ensuite, choisissez l'option « Envoyer vers », puis « Copie de dossier » et sélectionnez pour copier vers la lettre de lecteur de votre carte mémoire. MediaMonkey copiera ensuite une sélection aléatoire de votre collection de musique sur la carte mémoire jusqu'à ce qu'elle soit pleine.

Étape 6: Vérifications initiales et configuration

Vérifications initiales et configuration
Vérifications initiales et configuration

À la mise sous tension, la LED RVB doit briller en bleu. Le DFPlayer a une LED rouge ou bleue qui doit s'allumer lorsqu'il commence à jouer. La LED RVB doit commencer à changer lentement de couleur. Tournez le bouton pour vérifier qu'il contrôle correctement le volume. (S'il descend plus bas lorsqu'il est tourné dans le sens des aiguilles d'une montre, les connexions des broches A et B de l'encodeur doivent être transposées). Appuyez sur le bouton et le morceau suivant devrait jouer. Ajustez les deux résistances variables pour obtenir le meilleur volume et la meilleure balance des haut-parleurs.

Configuration de la télécommande

Seul le protocole de télécommande NEC est pris en charge. Le lecteur est préprogrammé pour fonctionner avec la télécommande illustrée sur la photo ci-dessus.

Je l'ai obtenu sur Ebay (décrit comme: HX1838 VS1838 Arduino Infrared IR Wireless Remote Control Sensor Module Kits). Il est venu complet avec le capteur IR sur un petit PCB.

Il a les boutons fléchés sous le clavier comme indiqué sur la photo.

(Un type similaire disponible marqué "KEYES" avec les boutons fléchés au-dessus du clavier a des codes de touches différents vous obligeant à le programmer comme indiqué ci-dessous)

Si votre télécommande n'est pas exactement la même que la photo ci-dessus, il faudra la configurer:

  • Maintenez le bouton de l'encodeur enfoncé et mettez l'appareil sous tension. (La LED doit clignoter en vert)
  • Relâchez le bouton (la LED arrête de clignoter et reste verte claire).
  • Appuyez sur le bouton de la télécommande que vous souhaitez utiliser pour NEXT Tune, par ex. " >"
  • Le joueur devrait alors commencer à jouer une mélodie et la LED devient rouge.
  • Appuyez sur le bouton de la télécommande pour utiliser pour VOLUME UP, par ex. " ^"
  • La LED doit devenir jaune.
  • Appuyez sur le bouton de la télécommande pour utiliser pour VOLUME BAS, par ex. " v"
  • La LED doit passer au vert
  • Appuyez sur le bouton de la télécommande à utiliser pour STOP, par ex. "D'ACCORD"
  • La LED devrait devenir bleu ciel • Appuyez sur le bouton de la télécommande pour l'utiliser pour PAUSE, par ex. "#"
  • La LED doit devenir violette • Appuyez sur le bouton de la télécommande pour l'utiliser pour l'égalisation, par ex. "1"
  • La LED doit devenir blanche pendant 1,5 seconde
  • Ensuite, la LED clignote en vert
  • Appuyez sur le bouton de l'encodeur jusqu'à ce que la LED cesse de clignoter - pour enregistrer les paramètres.

Étape 7: Codes d'erreur

La LED clignote rapidement en bleu - Soit aucune carte SD, clé USB ou fichiers trouvés

Si cela se produit à la mise sous tension - Vérifiez que la carte SD ou la clé USB est correctement formatée et que les fichiers mp3 sont présents. Si cela se produit pendant la lecture, cela peut être un problème de lecture d'un fichier en raison d'une carte SD/clé USB lente ou incompatible. Essayez d'utiliser une autre carte SD/clé USB.

La LED clignote rapidement en rouge - délai d'attente pour l'initialisation du module Dfplayer

Cela peut se produire à la mise sous tension si le module dfplayer ne s'initialise pas dans les 5 secondes. Cela peut être causé par une carte SD/clé USB lente ou incompatible, un module Dfplayer défectueux ou un défaut de circuit.

Essayez d'utiliser une autre carte SD/clé USB. Si c'est toujours le cas, retirez la carte SD/la clé USB et mettez sous tension. La LED devrait maintenant clignoter en vert si le Dfplayer fonctionne. S'il clignote toujours en rouge, vérifiez tout le câblage ou remplacez le module Dfplayer.

La LED clignote rapidement en vert - Aucune carte SD ou clé USB trouvée à la mise sous tension

Insérez une carte SD ou une clé USB.

Étape 8: le mettre dans un étui

Le mettre dans un étui
Le mettre dans un étui
Le mettre dans un étui
Le mettre dans un étui
Le mettre dans un étui
Le mettre dans un étui
Le mettre dans un étui
Le mettre dans un étui

Vous pourriez probablement simplement le mettre dans un boîtier en plastique à usage général ou dans un autre boîtier d'équipement redondant.

J'avais une vieille boîte de streaming TV "Boxee Box" qui traînait depuis que le fabricant a cessé de la prendre en charge en 2012

J'ai retiré les cartes électroniques puis remonté les deux moitiés du châssis métallique qui retenaient la carte principale. J'ai percé des trous dans le haut du châssis et installé des entretoises en plastique pour maintenir la nouvelle carte grande découpe où la quatrième entretoise devrait aller.)

J'ai gardé le bouton poussoir boxee (alimentation) et le câble pour être réutilisé comme bouton EQ.

Le boxee avait un logo éclairé par les bords sur le panneau avant. J'ai retiré les deux leds d'origine et les ai remplacées par deux leds pixel WS2812 RGB fixées avec de la colle thermofusible.

(J'ai également changé le logo "BOXEE" pour afficher "BOX" en utilisant un peu de peinture noire.)

Un trou a été percé dans le haut pour l'encodeur rotatif.

Le panneau arrière devait avoir plusieurs découpes soigneusement faites avec un cutter rotatif "Dremel" et un fichier pour l'alimentation, la prise USB, la fente pour carte SD et les deux connecteurs de haut-parleur.

Le récepteur à distance IR a été installé sur le panneau avant près du logo en perçant un petit trou partiellement dans le plastique noir juste assez loin pour atteindre la feuille de plastique transparente du panneau avant (et en grattant le revêtement arrière noir). Il a ensuite été fixé dans placer avec de la colle thermofusible.

Le capteur de mouvement "radar" a été isolé avec un manchon thermorétractable et collé sur le panneau avant.

Le coffret a ensuite été remonté (il est difficile de tout remonter !).

Conseillé: