Figure 1 : Le concept original de 2013 (à gauche) rencontre la technologie de 2026 (à droite).
Bienvenue sur TechFix Hub ! Vous souvenez-vous des lecteurs MP3 sur clé USB des années 2010 ? Souvent limités au format MP3, avec des interfaces capricieuses et des boîtiers en plastique bas de gamme, ils ont rendu de fiers services. Mais pourquoi s'arrêter à un simple circuit propriétaire quand on peut construire son propre Juke-Box Hi-Fi sur mesure ?
Aujourd'hui, nous reprenons ce concept classique et nous le propulsons en 2026. Fini les puces audio obscures : nous allons utiliser un ESP32-S3 (qui possède un port USB OTG natif), un décodeur audio I2S de qualité studio, et nous finirons par un boîtier conçu sur mesure et imprimé en 3D. Préparez vos fers à souder et vos clés USB !
🚀 1. Pourquoi Moderniser ce Projet en 2026 ?
Si l'idée de base (3 boutons, une clé USB, une sortie audio) reste pertinente, les composants ont radicalement évolué :
- Support Multi-Formats : Grâce à la puissance de l'ESP32-S3, notre Juke-Box ne lira pas que du MP3. Il décoderont nativement le WAV, le FLAC (sans perte), l'AAC et l'OGG.
- Qualité Audio I2S : Nous abandonnons la sortie PWM "bas de gamme" pour le protocole I2S, offrant un rapport signal/bruit digne d'une chaîne Hi-Fi.
- Connectivité cachée : L'ESP32-S3 intègre le WiFi et le Bluetooth. Nous pourrons ajouter un contrôle à distance via une page web locale ou streamer du Bluetooth vers le Juke-Box.
- Capacité illimitée : Les contrôleurs USB modernes gèrent des clés de 32 Go, 64 Go, voire des disques SSD externes alimentés.
🛠️ 2. La Liste du Matériel (BOM)
Pour ce projet, nous privilégions des modules standards, faciles à sourcer et extrêmement fiables :
| Composant | Rôle |
|---|---|
| ESP32-S3 DevKit | Le cerveau. Gère l'USB Host, le décodage et l'interface. |
| Module MAX98357A | Amplificateur I2S 3.2W (Sortie vers HP ou pré-ampli). |
| Clé USB 3.0 (FAT32) | Le stockage. Privilégiez les modèles compacts sans LED. |
| 3 Boutons Poussoirs | Précédent, Play/Pause, Suivant. |
| Batterie LiPo 3.7V + TP4056 | Pour rendre le Juke-Box totalement nomade. |
🔌 3. Le Câblage : USB OTG et Audio I2S
L'ESP32-S3 possède des broches USB natives (GPIO 19 et 20). Le protocole I2S nécessite 3 fils pour l'audio numérique. Voici le schéma de câblage :
ESP32-S3 GPIO 19 ---> USB D- (Data Minus)
ESP32-S3 GPIO 20 ---> USB D+ (Data Plus)
5V (VBUS) ---> USB VCC (Alim clé)
GND ---> USB GND
// --- BROCHES I2S (Pour le MAX98357A) ---
ESP32-S3 GPIO 4 ---> BCLK (Bit Clock)
ESP32-S3 GPIO 5 ---> LRC (Word Select / LRCLK)
ESP32-S3 GPIO 6 ---> DIN (Serial Data)
5V (VBUS) ---> VIN
GND ---> GND
// --- BROCHES BOUTONS (Avec Pull-up interne) ---
GPIO 1 ---> Bouton Précédent
GPIO 2 ---> Bouton Play/Pause
GPIO 3 ---> Bouton Suivant
💡 Astuce TechFix : Si vous utilisez une clé USB qui consomme beaucoup (ex: disque dur externe), ajoutez un condensateur de 470µF sur la ligne 5V pour éviter les resets de l'ESP32 lors du "spin-up".
💻 4. Le Code Arduino (ESP32-S3)
Pour ce projet, nous utilisons l'excellente bibliothèque open-source ESP32-audioI2S (disponible via le gestionnaire de bibliothèques Arduino). Elle gère nativement le montage USB MSC (Mass Storage Class) et le décodage multi-format.
#include <Arduino.h>
#include <USB.h>
#include <USBMSC.h>
#include "Audio.h" // Bibliothèque ESP32-audioI2S
// Définition des broches I2S
#define I2S_DOUT 6
#define I2S_BCLK 4
#define I2S_LRC 5
// Définition des boutons
#define BTN_PREV 1
#define BTN_PLAY 2
#define BTN_NEXT 3
Audio audio;
bool isPlaying = false;
void setup() {
Serial.begin(115200);
// Configuration des boutons en entrée avec pull-up
pinMode(BTN_PREV, INPUT_PULLUP);
pinMode(BTN_PLAY, INPUT_PULLUP);
pinMode(BTN_NEXT, INPUT_PULLUP);
// Initialisation de l'USB en mode Host
USB.begin();
// Configuration de la sortie audio I2S
audio.setPinout(I2S_BCLK, I2S_LRC, I2S_DOUT);
audio.setVolume(15); // Volume par défaut (0-21)
// Connexion à la clé USB (Lecture du premier fichier trouvé)
// La bibliothèque gère le montage FAT32 automatiquement
audio.connecttoFS(SD_MMC, "/"); // Adapté pour USB MSC dans les versions récentes
Serial.println("Juke-Box TechFix Hub initialisé !");
}
void loop() {
audio.loop();
// Gestion des boutons (avec anti-rebond logiciel)
if (digitalRead(BTN_PLAY) == LOW) {
if (isPlaying) audio.pauseResume();
isPlaying = !isPlaying;
delay(200); // Anti-rebond
}
if (digitalRead(BTN_NEXT) == LOW) {
audio.nextTrack();
delay(200);
}
if (digitalRead(BTN_PREV) == LOW) {
audio.previousTrack();
delay(200);
}
}
🖨️ 5. Le Boîtier : L'Apport de l'Impression 3D
Un vrai Juke-Box mérite un vrai écrin. Plutôt qu'une boîte en plastique générique, nous avons conçu un boîtier au style "Rétro-Futuriste" inspiré des Walkmans des années 80, mais avec les tolérances millimétrées de l'impression 3D (PLA ou PETG).
Le boîtier intègre :
- Une trappe latérale aimantée pour insérer et éjecter la clé USB facilement.
- Trois boutons poussoirs ronds en laiton (récupérés sur de vieilles radios) qui s'enclenchent parfaitement dans les logements imprimés.
- Une grille de ventilation discrète pour le MAX98357A et l'ESP32.
📥 Le fichier STL du boîtier est disponible en téléchargement sur notre page GitHub TechFix Hub !
✨ 6. Le "Upgrade" TechFix Hub (Niveau Avancé)
Vous maîtrisez la version de base ? Voici comment transformer ce lecteur en véritable centrale multimédia :
- Contrôle WiFi (WebUI) : Ajoutez un petit écran OLED SSD1306 en I2C pour afficher le nom de la piste, et hébergez une page web locale pour contrôler la lecture depuis votre smartphone.
- Mode Bluetooth A2DP Sink : Utilisez la bibliothèque
ESP32-a2dppour que votre Juke-Box devienne aussi un récepteur Bluetooth. Vous pourrez streamer Spotify depuis votre téléphone vers la chaîne Hi-Fi. - Intégration Domotique : Rendez le Juke-Box compatible Home Assistant via MQTT pour le contrôler à la voix avec Alexa ou Google Home.
🎯 Conclusion
Repenser un projet classique de 2013 avec les outils de 2026 est l'essence même de l'électronique DIY. L'ESP32-S3 a transformé un simple lecteur de clé USB en une plateforme audio puissante, ouverte et évolutive. Que vous l'utilisiez pour votre atelier, votre garage ou comme cadeau personnalisé, ce Juke-Box prouve que la musique et le "Fait Maison" font toujours bon ménage.
Et vous, quel format audio privilégiez-vous sur vos clés USB ? Le MP3 classique ou le FLAC sans perte ? Dites-le-nous en commentaire !