Inhoudsopgave:
- Stap 1: Benodigde componenten en gereedschappen
- Stap 2: Schema
- Stap 3: constructie
- Stap 4: Software en installatie
- Stap 5: SD-kaart voorbereiding
- Stap 6: Standalone werking
- Stap 7: Normale browserwerking
- Stap 8: Basisbrowserbediening
Video: ESP8266 DfPlayer-audiospeler - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
Dit is een mp3-audiospeler opgebouwd uit een esp8266 wifi-module en een dfPlayer-mp3-module. Het speelt bestanden van een SD-kaart af.
Ik plaatste hem in een oude computerluidspreker en liet hem op batterijen werken, maar hij kan in elke luidsprekerbehuizing worden ingebouwd.
Functies omvatten:
- 4 lokale knoppen voor standalone gebruik (volume, eenvoudige selectie)
- Mobiele browserinterface met afspeelbediening en mapnavigatie
- Dempen om gebruik van een hoofdtelefoon mogelijk te maken
- Eenvoudige installatie via WifiManager
- Over-the-air firmware-updates
- Bestandsbrowser voor onderhoud
- dfPlayer tot 2W audio-uitgang naar luidspreker (mono). Stereo naar koptelefoon
Stap 1: Benodigde componenten en gereedschappen
De volgende onderdelen zijn nodig:
- ESP-12F wifi-verwerkingsmodule
- dfPlayer mp3-module met micro SD-kaarthouder
- 18650 batterij en houder
- LIPO-oplaadmodule
- Drukknopschakelaars x4
- Power schuifschakelaar x 1"
- Spanningsregelaar met low drop-out 3.3V-chip (bijv. XC6203)
- Schroot van printplaat om regelaar te maken;
- 2.2K weerstand
- 10K weerstand x 2
- 47K weerstand
- 220 uF ontkoppelcondensator
- Draad aansluiten
- Luidspreker + behuizing (bijv. computerluidspreker of oude radio)
- Koptelefoon aansluiting. Mogelijk al aanwezig op bestaande behuizing.
- SD-kaart (4 GB aanbevolen, maar bijna elk formaat kan worden gebruikt)
Deze kunnen allemaal voor zeer bescheiden bedragen worden gekocht op sites zoals eBay
Gereedschap nodig
- Boor en vijlen om gaten in de behuizing te maken
- Fijne punt soldeerbout
De dfPlayer-module kan lastig te monteren zijn, omdat deze externe toegang tot een slot nodig heeft om bij de SD-kaart te komen. Voor behuizingen met een plat paneel heb ik een 3D-geprinte beugel gebruikt die is ontworpen om de module stevig tegen het paneel te houden
Stap 2: Schema
Het schema is vrij eenvoudig.
Een LIPO-batterijoplaadmodule wordt gebruikt om de batterij op te laden.
De batterij voedt de dfPlayer-module rechtstreeks en de ESP-12F via een 3.3V-regelaar.
De dfPlayer wordt bestuurd via een seriële interface, dus 2 pinnen op de ESP-12F-module ondersteunen dit.
4 drukknoppen zijn gekoppeld aan de ESP-12F GPIO voor stand-alone bediening.
De luidspreker- en hoofdtelefoonaansluiting worden rechtstreeks ondersteund door de dfPlayer-module.
Stap 3: constructie
De details van de mechanische constructie zijn afhankelijk van het te gebruiken type behuizing. Het voorbeeld hier gebruikte computerluidspreker. Deze had veel ruimte binnenin voor de modules en elektronica.
De afbeelding toont de voltooide weergave voor dit voorbeeld. De USB, aan/uit-schakelaar en drukknoppen bevinden zich aan de rechterkant. De LIPO is op de achterkant gemonteerd. De ESP-12F-module, hoofdtelefoonaansluiting en dfPlayer zijn aan de linkerkant gemonteerd. De batterij was aan de achterkant gemonteerd.
De algemene stappen na het uitwerken van een lay-out die bij uw behuizing past, zijn:
- Boor en vijl gaten voor USB-ingang, schuifschakelaar, 4 drukknoppen, hoofdtelefoonaansluiting en slot voor micro SD-kaart. De SD-kaartsleuf moet zorgvuldig worden gedaan om uit te lijnen met waar de dfPlayer-module zal worden gemonteerd.
- Als u wilt dat de luidspreker wordt gedempt om de hoofdtelefoon te kunnen gebruiken, heeft de dfPlayer een kleine aanpassing nodig, zoals afgebeeld. Er is een mute op de kleine versterker aan boord, maar deze is geaard via een weerstand van 0 Ohm. Verwijder deze weerstand en vervang deze door een 10K weerstand. Soldeer een draad op de pad zoals afgebeeld. Dit is de mute die vervolgens kan worden bediend vanaf de ESP-12F
- Merk op dat u misschien eerst de ESP-12F-module wilt flashen voordat de definitieve mechanische constructie wordt uitgevoerd. Zie de softwarestap.
- Maak de 3.3V-regelaar op een stuk schrootstripbord. Er zijn slechts 2 componenten en deze kan worden bedraad en gemonteerd op de ESP-12F-module.
- Monteer de drukknopschakelaars mechanisch, zet ze vast met lijm en soldeer een aardlus door één kant van alle schakelaars.
- Soldeer 4 losse draden op de USB-connector en monteer deze in de behuizing en zet vast met lijm
- Soldeerkabels van batterijhouder naar LIPO-oplader en stroomschuifschakelaar. Lijmoplader en schuifschakelaar in behuizing.
- Soldeer de vliegende draden op de koptelefoonaansluiting, monteer en lijm ze op hun plaats.
- Voeg de 2.2K-weerstand, de ADC-verdeler en de CH/Up-verbinding toe aan de ESP-12F-module
- Soldeer vliegende draden op ESP-12F-module voor seriële interface, de 4 GPIO-knoppen.
- Monteer de dfPlayer op zijn plaats en zorg ervoor dat de sleuf toegang heeft voor de SD-kaart.
- Volledige bedrading van de ESP12-F naar stroomaansluitingen, drukknoppen, seriële interface en mute-bediening op de dfPlayer
- Volledige bedrading van stroom, USB-gegevenspaar, hoofdtelefoonaansluiting en luidspreker naar dfPlayer
Controleer de stroombedrading dubbel!
Stap 4: Software en installatie
De ESP-software is geschreven in de Arduino-omgeving. Broncode is beschikbaar op https://github.com/roberttidey/dfPlayer De bibliotheek die de dfPlayer bestuurt, is daar. De andere vereiste en daar vermelde bibliotheken zijn standaardmodules.
De ino-schets hoeft niet veel te worden gewijzigd, hoewel u de WifiManager- en firmware-updatewachtwoorden wilt wijzigen.
Compileer in een Arduino ESP8266 omgeving en doe de eerste flash over de standaard seriële verbinding. Verdere updates kunnen worden gedaan door een binair bestand in de Arduino IDE te exporteren en een OTA (over-the-air) update rechtstreeks naar het apparaat uit te voeren zonder kabels.
Bij het eerste gebruik heeft de software niet de lokale wifi-referenties, maar maakt in plaats daarvan zelf een toegangspunt met de naam dfPlayerSet up. Maak hier verbinding mee (bijvoorbeeld vanaf een telefoon of tablet) en blader vervolgens naar 102.168.4.1. Dit zal een interface openen om het echte netwerk te selecteren en het wachtwoord in te voeren. Vanaf dan wordt deze automatisch gebruikt.
Er is een eenvoudige bestandsuploader die moet worden gebruikt om basisbestanden naar het SPIFFS-bestandssysteem op de ESP-12F te laden (edit.htm.gz, index.html, basic.htm, favicon*-p.webp
Vanaf dat moment kunt u https://ip/edit gebruiken om meer gegevens op een vriendelijkere manier te uploaden.
U kunt de index.htm bewerken om naar een ander favicon-bestand te verwijzen en het indien nodig een andere titel geven.
Het favicon wordt gebruikt als u een snelkoppeling toevoegt aan het scherm op bijvoorbeeld een telefoon.
Stap 5: SD-kaart voorbereiding
De dfPlayer speelt bestanden rechtstreeks van de SD-kaart af, maar heeft een beperkt map- en bestandsnaamschema.
Om het gebruik en de controle te vergemakkelijken, wordt bij de software een script meegeleverd dat deze naamgeving kan ondersteunen, maar waarmee ook de oorspronkelijke namen op de webinterface kunnen worden aangeklaagd.
Om de SD-kaart te gebruiken, plaatst u de SD-kaart op een pc en kopieert u deze naar een map met tracks met hun oorspronkelijke naam (bijv. albums voor mappen en tracknamen voor bestanden).
Voer het script uit (dfPlayer-makeSD.vbs). Er wordt gevraagd naar het volume van de SD-kaart. Wijzig dit indien nodig. Het zal dan alle mappen en bestanden op de SD-kaart hernoemen en toewijzingsbestanden maken van de vereenvoudigde naamgeving terug naar de oorspronkelijke namen. Folders.txt bevat een lijst met mapnummers en -namen. Individueel Track.txt-bestand bevat de toewijzing in elke map. In dit stadium is alleen de Folders.txt nodig. Softwareverbeteringen kunnen in de toekomst gebruik maken van de tracklijsten.
Het bestand Folders.txt moet worden geüpload naar het ESP-12F SPIFFS-bestandssysteem via de /edit-uploader.
Merk op dat u mappen kunt verwijderen en nieuwe kunt toevoegen. Wanneer u een nieuwe toevoegt met de originele naamgeving, voert u het script gewoon opnieuw uit. Het zal alleen de nieuwe mappen en bestanden hernoemen en de kaarten opnieuw opbouwen. De nieuwe Folders.txt zou opnieuw moeten worden geüpload.
Stap 6: Standalone werking
De 4 knoppen werken als volgt.
- Volume omhoog. Kort indrukken verhoogt het volume, Lang indrukken schakelt de luidspreker weer in
- Volume omlaag Kort indrukken verlaagt het volume. Lang indrukken dempt de luidspreker
- Select1 Kort indrukken verhoogt het af te spelen mapnummer. Lang indrukken begint de geselecteerde map af te spelen
- Select2 Kort indrukken verlaagt het mapnummer. Lang indrukken begint willekeurige nummers af te spelen
Stap 7: Normale browserwerking
Dit is toegankelijk via https://ip (index.htm standaard)
Er verschijnt een eenvoudige webinterface met een volumeschuifregelaar en een set afspeelknoppen
- Pauze
- Toneelstuk
- Willekeurig
- Stop
- Ga naar volgende
- Ga naar vorige
- Luidspreker dempen
- Luidspreker dempen
Daaronder is een set knoppen één per map op de kaart gevuld met hun originele namen. Als u op een van deze klikt, wordt die map afgespeeld.
Stap 8: Basisbrowserbediening
Een vereenvoudigde browserinterface kan voornamelijk voor testdoeleinden worden gebruikt. Deze is toegankelijk via
Hiermee kunt u de opdracht en de bijbehorende parameters selecteren om naar de software te sturen.
Deze commando's worden naar de ESP12-F gestuurd met
ip/dfPlayer?cmd=command&p1=first&p2=second&p3=third
De beschikbare commando's zijn:
- ?cmd=afspelen&p1=map&p2=track
- ?cmd=playmp3&p1=track
- ?cmd=volume&p1=niveau (0-30)
- ?cmd=stop
- ?cmd=volume omhoog
- ?cmd=volume omlaag
- ?cmd=luidspreker&p1=uit (0/1)
- ?cmd=pauze
- ?cmd=start
- ?cmd=volgende
- ?cmd=vorige
- ?cmd=modus&p1=type
- ?cmd=loopFolder&p1=map
- ?cmd=willekeurig
- ?cmd=eq&p1=type
- ?cmd=apparaat&p1=type
- ?cmd=instelling&p1=instelling1&p2=instelling2
- ?cmd=slaap
- ?cmd=reset
- ?cmd=raw&p1=cmdcode&p2=par1&p3=par2
- ?cmd=init
ip/dfPlayerStatus geeft een basisstatus van de speler inclusief batterijspanning
Aanbevolen:
Telegram Bot met NodeMCU (ESP8266): 3 stappen
Telegram Bot met NodeMCU (ESP8266): Heeft u een bot nodig om meldingen van uw systeem te geven? of iets doen door gewoon een bericht te sturen? Telegram Bot is jouw oplossing!In deze tutorial zal ik Telegram Web en BotFather gebruiken om mijn bot te maken
Hoe NodeMCU ESP8266 te verbinden met MySQL-database: 7 stappen
Hoe NodeMCU ESP8266 te verbinden met MySQL-database: MySQL is een veelgebruikt relationeel databasebeheersysteem (RDBMS) dat gebruikmaakt van gestructureerde querytaal (SQL). Op een gegeven moment wilt u misschien Arduino/NodeMCU-sensorgegevens uploaden naar de MySQL-database. In deze Instructable zullen we zien hoe verbinding te maken
ESP8266 - Deur- en raamsensoren - ESP8266. Ouderenhulp (vergeetachtigheid): 5 stappen
ESP8266 - Deur- en raamsensoren - ESP8266. Ouderenhulp (vergeetachtigheid): ESP8266 - Deur- / raamsensoren met GPIO 0 en GPIO 2 (IOT). Het kan worden bekeken op het web of op het lokale netwerk met browsers. Ook zichtbaar via de "HelpIdoso Vxapp" sollicitatie. Maakt gebruik van een 110/220 VAC voeding voor 5Vdc, 1 relais/spanning
ESP8266 NODEMCU BLYNK IOT-zelfstudie - Esp8266 IOT Blunk en Arduino IDE gebruiken - Led's bedienen via internet: 6 stappen
ESP8266 NODEMCU BLYNK IOT-zelfstudie | Esp8266 IOT Blunk en Arduino IDE gebruiken | LED's bedienen via internet: Hallo jongens, in deze instructables zullen we leren hoe we IOT kunnen gebruiken met onze ESP8266 of Nodemcu. We zullen daarvoor de blynk-app gebruiken. Dus we zullen onze esp8266/nodemcu gebruiken om de LED's via internet te bedienen. Dus de Blynk-app wordt verbonden met onze esp8266 of Nodemcu
Beginnersgids voor ESP8266 en tweeten met ESP8266: 17 stappen (met afbeeldingen)
Beginnersgids voor ESP8266 en tweeten met ESP8266: ik leerde over Arduino 2 jaar geleden. Dus begon ik te spelen met eenvoudige dingen zoals LED's, knoppen, motoren enz. Toen dacht ik dat het niet cool zou zijn om verbinding te maken om dingen te doen zoals het weergeven van de het weer van de dag, aandelenkoersen, treintijden op een LCD-scherm. Ik