Table des matières:

Lecteur audio ESP8266 DfPlayer : 8 étapes
Lecteur audio ESP8266 DfPlayer : 8 étapes

Vidéo: Lecteur audio ESP8266 DfPlayer : 8 étapes

Vidéo: Lecteur audio ESP8266 DfPlayer : 8 étapes
Vidéo: Welcome Audio Played When Motion Detected: DIY Home Automation Tutorial 2024, Novembre
Anonim
Lecteur audio ESP8266 DfPlayer
Lecteur audio ESP8266 DfPlayer
Lecteur audio ESP8266 DfPlayer
Lecteur audio ESP8266 DfPlayer
Lecteur audio ESP8266 DfPlayer
Lecteur audio ESP8266 DfPlayer

Il s'agit d'un lecteur audio mp3 construit à partir d'un module wifi esp8266 et d'un module mp3 dfPlayer. Il lit les fichiers d'une carte SD.

Je l'ai logé dans un vieux haut-parleur d'ordinateur et je l'ai fait fonctionner sur batterie, mais il pouvait être intégré dans n'importe quel boîtier de haut-parleur.

Les fonctionnalités incluent

  • 4 boutons locaux pour une utilisation autonome (volume, sélection simple)
  • Interface de navigateur mobile avec commandes de lecture et navigation dans les dossiers
  • Contrôle muet pour permettre l'utilisation du casque
  • Configuration facile via WifiManager
  • Mises à jour du firmware en direct
  • Navigateur de fichiers pour la maintenance
  • dfPlayer jusqu'à 2 W de sortie audio vers le haut-parleur (mono). Stéréo vers casque

Étape 1: Composants et outils nécessaires

Composants et outils nécessaires
Composants et outils nécessaires
Composants et outils nécessaires
Composants et outils nécessaires
Composants et outils nécessaires
Composants et outils nécessaires
Composants et outils nécessaires
Composants et outils nécessaires

Les pièces suivantes sont nécessaires

  • Module de traitement wifi ESP-12F
  • Module mp3 dfPlayer avec support de carte micro SD
  • 18650 batterie et support
  • Module chargeur LIPO
  • Interrupteurs à bouton-poussoir x4
  • Interrupteur à glissière d'alimentation x 1
  • Régulateur de tension utilisant une puce 3.3V à faible chute (par exemple XC6203)
  • Rebut de circuit imprimé pour faire un régulateur
  • Résistance 2.2K
  • Résistance 10K x 2
  • Résistance 47K
  • Condensateur de découplage 220 uF
  • Brancher le fil
  • Haut-parleur + enceinte (par exemple haut-parleur d'ordinateur ou vieille radio)
  • Prise casque. Peut-être déjà présent sur l'enceinte existante.
  • Carte SD (4 Go recommandés mais presque toutes les tailles peuvent être utilisées)

Ceux-ci peuvent tous être obtenus pour des montants très modestes sur des sites comme eBay

Outils nécessaires

  • Percez et limez pour faire des trous dans l'enceinte
  • Fer à souder à pointe fine

Le module dfPlayer peut être difficile à monter car il doit avoir un accès externe à un emplacement pour accéder à la carte SD. Pour les boîtiers dotés d'un panneau plat, j'ai utilisé un support imprimé en 3D conçu pour maintenir le module fermement contre le panneau

Étape 2: Schéma

Schématique
Schématique

Le schéma est assez simple.

Un module de charge de batterie LIPO est utilisé pour charger la batterie.

La batterie alimente directement le module dfPlayer et l'ESP-12F via un régulateur 3,3V.

Le dfPlayer est contrôlé via une interface série, donc 2 broches du module ESP-12F le prennent en charge.

4 boutons-poussoirs sont liés à l'ESP-12F GPIO pour un fonctionnement autonome.

Le haut-parleur et la prise casque sont directement pris en charge par le module dfPlayer.

Étape 3: Construction

Construction
Construction
Construction
Construction

Les détails de la construction mécanique varieront selon le type d'enceinte à utiliser. L'exemple ici utilisé unité de haut-parleur d'ordinateur. Cela avait beaucoup de place à l'intérieur pour les modules et l'électronique.

L'image montre la vue terminée pour cet exemple. L'USB, l'interrupteur d'alimentation et les boutons-poussoirs se trouvent sur le côté droit. Le LIPO est monté sur le dos. Le module ESP-12F, la prise casque et le dfPlayer sont montés sur le côté gauche. La batterie était montée à l'arrière.

Les étapes générales après avoir élaboré une disposition qui convient à votre boîtier sont

  • Percez et limez des trous pour recevoir une entrée USB, un interrupteur à glissière, 4 boutons poussoirs, une prise casque et un emplacement pour carte micro SD. L'emplacement de la carte SD doit être fait avec soin pour s'aligner avec l'endroit où le module dfPlayer sera monté.
  • Si vous souhaitez couper le haut-parleur pour permettre le fonctionnement du casque, le dfPlayer a besoin d'une petite modification, comme illustré. Il y a une sourdine sur le petit amplificateur à bord mais il est câblé à la masse via une résistance de 0 Ohm. Retirez cette résistance et remplacez-la par une résistance de 10K. Soudez un fil sur la pastille comme indiqué. C'est la sourdine qui peut ensuite être contrôlée depuis l'ESP-12F
  • Notez que vous voudrez peut-être flasher le module ESP-12F avant la construction mécanique finale. Voir l'étape du logiciel.
  • Composez le régulateur de 3,3 V sur un morceau de planche de ferraille. Il n'y a que 2 composants et il peut être fait pour être câblé et monté sur le module ESP-12F.
  • Montez mécaniquement les interrupteurs à bouton-poussoir, fixez avec de la colle et soudez une boucle de masse à travers un côté de tous les interrupteurs.
  • Soudez 4 fils volants sur le connecteur USB et montez-le dans le boîtier et fixez-le avec de la colle
  • Souder les fils du support de batterie jusqu'au chargeur LIPO et à l'interrupteur coulissant d'alimentation. Chargeur de colle et interrupteur à glissière dans le boîtier.
  • Soudez les fils volants sur la prise casque, montez et collez en place.
  • Ajoutez la résistance 2.2K, le diviseur ADC et la connexion CH/Up au module ESP-12F
  • Souder les fils volants sur le module ESP-12F pour l'interface série, les 4 boutons GPIO.
  • Montez le dfPlayer en place en veillant à ce que la fente ait accès à la carte SD.
  • Câblage complet de l'ESP12-F aux connexions d'alimentation, aux boutons-poussoirs, à l'interface série et à la commande de sourdine sur le dfPlayer
  • Câblage complet de l'alimentation, de la paire de données USB, de la prise casque et du haut-parleur vers dfPlayer

Vérifiez le câblage d'alimentation!

Étape 4: Logiciel et installation

Le logiciel ESP est écrit dans l'environnement Arduino. Le code source est disponible sur https://github.com/roberttidey/dfPlayer La bibliothèque qui contrôle le dfPlayer est là. Les autres bibliothèques requises et répertoriées ici sont des modules standards.

L'esquisse ino n'a pas besoin de beaucoup de modifications, bien que vous souhaitiez modifier les mots de passe de mise à jour du WifiManager et du micrologiciel.

Compilez dans un environnement Arduino ESP8266 et effectuez le premier flash sur la connexion série standard. D'autres mises à jour peuvent être effectuées en exportant un fichier binaire dans l'IDE Arduino et en effectuant une mise à jour OTA (over the air) directement sur l'unité sans aucun fil.

Lors de la première utilisation, le logiciel n'aura pas les informations d'identification wifi locales mais créera à la place un point d'accès lui-même appelé dfPlayerSet up. Connectez-vous à celui-ci (par exemple à partir d'un téléphone ou d'une tablette), puis accédez à 102.168.4.1. Cela fera apparaître une interface pour permettre la sélection du réseau réel et entrer son mot de passe. À partir de ce moment-là, cela sera utilisé automatiquement.

Il existe un simple téléchargeur de fichiers qui doit être utilisé pour charger des fichiers de base dans le système de fichiers SPIFFS sur l'ESP-12F (edit.htm.gz, index.html, basic.htm, favicon*-p.webp

À partir de là, vous pouvez utiliser https://ip/edit pour télécharger d'autres données de manière plus conviviale.

Vous pouvez modifier le fichier index.htm pour faire référence à un fichier favicon différent et lui donner un titre différent si nécessaire.

Le favicon sera utilisé si vous ajoutez un raccourci à l'écran sur, par exemple, un téléphone.

Étape 5: Préparation de la carte SD

Le dfPlayer lit les fichiers directement à partir de la carte SD, mais il a un schéma de nommage des dossiers et des fichiers limité.

Pour faciliter l'utilisation et le contrôle d'un script est fourni avec le logiciel qui peut prendre en charge ce nommage mais également permettre de poursuivre les noms d'origine sur l'interface web.

Pour utiliser, montez la carte SD sur un PC et copiez le dossier avec les pistes avec leur nom d'origine (par exemple, des albums pour les dossiers et des noms de piste pour les fichiers).

Exécutez le script (dfPlayer-makeSD.vbs). Il vous demandera le volume de la carte SD. Modifiez-le si nécessaire. Il renommera ensuite tous les dossiers et fichiers sur la carte SD et créera des fichiers de mappage à partir de la dénomination simplifiée jusqu'aux noms d'origine. Folders.txt contient une liste des numéros et des noms de dossier. Le fichier Track.txt individuel contient le mappage dans chaque dossier. Seul le fichier Folders.txt est nécessaire à ce stade. Les améliorations logicielles peuvent utiliser les listes de pistes à l'avenir.

Le fichier Folders.txt doit être téléchargé sur le système de fichiers ESP-12F SPIFFS via le téléchargeur /edit.

Notez que vous pouvez supprimer des dossiers et en ajouter de nouveaux. Lorsque vous en ajoutez un nouveau avec le nom d'origine, exécutez à nouveau le script. Il renommera uniquement les nouveaux dossiers et fichiers et reconstruira les cartes. Le nouveau Folders.txt devra être à nouveau téléchargé.

Étape 6: Fonctionnement autonome

Les 4 boutons fonctionnent comme suit.

  • Monter le son. Un appui court augmente le volume, un appui long réactive le haut-parleur
  • Baisser le volume Un appui court diminue le volume. Un appui long coupe le son du haut-parleur
  • Select1 Appuyez brièvement pour incrémenter le numéro du dossier à lire. Un appui long démarre la lecture du dossier sélectionné
  • Select2 Un appui court décrémente le numéro de dossier. Un appui long commence à jouer des pistes aléatoires

Étape 7: Fonctionnement normal du navigateur

Ceci est accessible à https://ip (index.htm par défaut)

Il affiche une interface Web simple avec un curseur de volume et un ensemble de commandes de lecture

  • Pause
  • Jouer
  • Aléatoire
  • Arrêter
  • Passer au suivant
  • Passer au précédent
  • Rétablir le son du haut-parleur
  • Haut-parleur muet

En dessous se trouve un ensemble de boutons un par dossier sur la carte rempli de leurs noms d'origine. Cliquer sur l'un d'eux lancera la lecture de ce dossier.

Étape 8: Fonctionnement de base du navigateur

Fonctionnement de base du navigateur
Fonctionnement de base du navigateur

Une interface de navigateur simplifiée peut être utilisée principalement à des fins de test. Ceci est accessible à

Il permet de sélectionner la commande et ses paramètres à envoyer au logiciel.

Ces commandes sont envoyées à l'ESP12-F à l'aide

http:/ip/dfPlayer?cmd=command&p1=first&p2=second&p3=third

Les commandes disponibles sont

  • ?cmd=play&p1=folder&p2=track
  • ?cmd=playmp3&p1=piste
  • ?cmd=volume&p1=niveau (0-30)
  • ?cmd=arrêter
  • ?cmd=volumeup
  • ?cmd=volume bas
  • ?cmd=haut-parleur&p1=offon (0/1)
  • ?cmd=pause
  • ?cmd=démarrer
  • ?cmd=suivant
  • ?cmd=précédent
  • ?cmd=mode&p1=type
  • ?cmd=loopFolder&p1=folder
  • ?cmd=aléatoire
  • ?cmd=eq&p1=type
  • ?cmd=appareil&p1=type
  • ?cmd=réglage&p1=réglage1&p2=réglage2
  • ?cmd=sommeil
  • ?cmd=réinitialiser
  • ?cmd=brut&p1=cmdcode&p2=par1&p3=par2
  • ?cmd=init

ip/dfPlayerStatus donne un état de base du lecteur, y compris la tension de la batterie

Conseillé: