Ultimate Kids Musicbox ESP32 Based
Introduction: Ultimate Kids Musicbox ESP32 Based
There are already some NFC jukeboxes.
Off the shelf like those "Toni" boxes. For do-it-yourself: lots of instructables.
This device should cover as much as possible, which could come into question sometime and somehow.
It should have as few weak points as possible, (in which a 3-year-old could put things).
Easy to use, easy to maintain and hard to destroy.
And there I came across a project that uses an ESP32 as a base.
In addition a NFC reader, a small amplifier ... stuff.
And all in a very sturdy box made of wood.
No openings, foolproof.
NFC, WLAN, FTP, BT ... hellyeah :)
How loud at start, how bright, when go to sleep??? ... everything in one webinterface.
Supplies
Basicly you will need an ESP32.
There are many options. I've bought one with an build in sd-reader.
* ttgo t8 v1.7 esp32 4MB PSRAM
You should look at least for PSRAM. Online-Radio works realy much better.
And if i would build it againg, i would look for more RAM (to use the OTA feature).
biologist (https://forum.espuino.de/u/biologist) has some nice boards to solder all the stuff on it.
I can highly recommend his boards (but you don't need them).
Depending on which ESP you use, you still need an
* SD reader module
I would choose one with SD-MMC (over SPI) as it is considerably faster:
SD_MMC:
FTP (up): 3:57min => 298 kiB/s
FTP (down): 3:45 => 314 kiB/s
HTTP: 3:10min => 372 kiB/s
SPI:
FTP (up): 6:38 => 178 kiB/s
FTP (down): 5:38 => 208 kiB/s
HTTP: 6:24min => 184 kiB/s
You may need an external Power-Supply. 382
I'm using a quite special USB-Powerbank.
It delivers 3.3V and 5V with common ground. That makes wiring much simpler.
https://de.aliexpress.com/item/4000112237395.html?spm=a2g0s.9042311.0.0.5d514c4dogsadB
If you use an external powerbank, however, you can no longer see the current battery status via the RGB LED ring.
As amplifier I use the classic "Max" from Adafruit.
* https://de.aliexpress.com/item/<PHONE_NUMBER>.html
By the way, I operate it with 5Volt to get the full volume.
* NFC-Reader (Arduino)
* Rotary-Encoder
* Arcade-Buttons, new LEDs
* magnetic usb-loader
* visaton speaker (4ohm)
* wires, wires, wires
* LED-RGB-Ring (i'm using 12 LEDs)
* some transistors / mosfets / resistors
* 9mm wood
Tools:
It depends on your skills and what you want to use as a box.
I used a drill-press, jigsaw, miter-saw and a router. But...
you could also use an old speaker and put all electronics in it.
Step 1: Software
OK. One hurdle. Software.
- Install Visual Studio Code (https://code.visualstudio.com/)
- Insert Platformio (https://platformio.org/install/ide?install=vscode)
- install Git (https://gitforwindows.org/)
- clone the current state (git clone https://github.com/biologist79/ESPuino.git)
* import this folder into Platformio as a project
- learn a little bit about Visual Studio (crash course)
- compile the first code several times and then push it to the ESP
Detailed instruction if you get stucked: https://github.com/biologist79/ESPuino#getting-started
All compiling-options can be done at a later step. There are several tweaking-options.
But at first you should be able to compile and upload and to see a serial output.
If it worked, you are able to connect to the Wireless Access Point with its own webinterface, which will lead you through the WLAN configuration.
Now it's time to get the hardware working. Power off your ESP and start with a breadboard. 382