Lettore Bluetooth per vecchie casse con ESP32 e DAC PCM5102
Ho trovato la descrizione di una realizzazione che mostra bene come si possa mettere insieme un impianto audio davvero utile partendo da componenti dimenticati. L'autore, che scrive su Habr, teneva da anni su uno scaffale due casse Yamaha da 50 watt, e in un cassetto c'era una scheda con un ESP32. Ha deciso di unire le due cose e costruirsi un lettore Bluetooth.
Il cuore del dispositivo è un modulo ESP32 WROOM-32, che gestisce il Bluetooth e le periferiche, e un DAC GY-PCM5102 che riceve l'audio tramite interfaccia I2S. Volume e pausa si controllano con un encoder rotativo, e un display OLED mostra una visualizzazione dello spettro. Ha scelto l'amplificatore XH-A232 semplicemente perché ce l'aveva già. La sua potenza di picco è di 30 watt per canale, contro i 50 watt nominali delle casse, ma per una stanza, dice, il volume basta e avanza.
La parte più interessante per me riguarda i dettagli di cui si parla raramente. Tra l'ESP32 e il DAC c'è un partitore di tensione che abbassa l'uscita del DAC da 2,1 V a 0,27 V efficaci, perché altrimenti l'amplificatore va in sovraccarico e fischia. Il rapporto è stato trovato per prove, e l'autore avverte che con un altro amplificatore potrebbe cambiare.
Un altro problema era il rumore digitale dovuto all'alimentazione comune di DAC ed ESP32. La soluzione è stata alimentarli con convertitori separati. Hanno aiutato anche i fili corti e intrecciati tra DAC e amplificatore, e i due condensatori ceramici da 0,1 µF dopo il DAC.
Il software è scritto in PlatformIO con le librerie arduino-audio-tools ed ESP32-A2DP, quindi non ha dovuto implementare lui il trasferimento audio A2DP a basso livello. Il codice è pubblicato su GitHub. È un buon esempio di come moduli economici possano dare qualcosa di utile e, nel frattempo, insegnare da dove arrivano i rumori.
Fonte: Habr
Il cuore del dispositivo è un modulo ESP32 WROOM-32, che gestisce il Bluetooth e le periferiche, e un DAC GY-PCM5102 che riceve l'audio tramite interfaccia I2S. Volume e pausa si controllano con un encoder rotativo, e un display OLED mostra una visualizzazione dello spettro. Ha scelto l'amplificatore XH-A232 semplicemente perché ce l'aveva già. La sua potenza di picco è di 30 watt per canale, contro i 50 watt nominali delle casse, ma per una stanza, dice, il volume basta e avanza.
La parte più interessante per me riguarda i dettagli di cui si parla raramente. Tra l'ESP32 e il DAC c'è un partitore di tensione che abbassa l'uscita del DAC da 2,1 V a 0,27 V efficaci, perché altrimenti l'amplificatore va in sovraccarico e fischia. Il rapporto è stato trovato per prove, e l'autore avverte che con un altro amplificatore potrebbe cambiare.
Un altro problema era il rumore digitale dovuto all'alimentazione comune di DAC ed ESP32. La soluzione è stata alimentarli con convertitori separati. Hanno aiutato anche i fili corti e intrecciati tra DAC e amplificatore, e i due condensatori ceramici da 0,1 µF dopo il DAC.
Il software è scritto in PlatformIO con le librerie arduino-audio-tools ed ESP32-A2DP, quindi non ha dovuto implementare lui il trasferimento audio A2DP a basso livello. Il codice è pubblicato su GitHub. È un buon esempio di come moduli economici possano dare qualcosa di utile e, nel frattempo, insegnare da dove arrivano i rumori.
Fonte: Habr
Commenti 0
Lascia il primo commento, in qualsiasi lingua.
Accedi per commentare