# Kidsbox This is a battery-powered rfid-tag-controlled audio player meant to be used by kids. You can bundle audio-files to rfid tags and let your kids choose the music or audiobook of their favour by placing the corresponding tag atop of the box. |Front|Side| |-|-| |![Frontal View](docs/img/front.jpeg)|![Side View](docs/img/side.jpeg)| ## Todo - Volume buttons - Playlists - Pausing - ... I have a lot of ideas :) ## Setup 1. Install ESP-ADF and ESP-IDF according to the [install guide](https://docs.espressif.com/projects/esp-adf/en/latest/get-started/index.html#installation-step-by-step). 2. Clone this repository and `cd` into the repository directory. 3. `git submodule init --recursive` 3. `cd device` 4. Make sure that you have `idf.py` available in your environment. This is described in the install guide. 5. Execute `idf.py build` to compile, `idf.py build flash monitor` to flash it to your board. ## Hardware ### Parts _TBD_ |Part|Links| |-|-| |ESP32-LyraT 4.3|[Mouser](https://www.mouser.de/ProductDetail/Espressif-Systems/ESP32-LyraT?qs=MLItCLRbWsxPzPCja546ZA%3D%3D)| ### Hardware Setup The peripherals must be configured for: - SD Card - RFID-module - Vol+/- buttons The ESP32-LyraT board has only a few exposed GPIO pins. To save pins, the SD-Card reader runs only in 1-Wire mode. I have actually no idea what the limitations and differences are, but I didn't encounter any problems yet. #### DIP-Switch The switches must be exatly in the positions outlined in the table. |Number|Setting|Purpose| |-|-|-| |1|OFF|Disconnects GPIO 12 from SD-D2| |2|OFF|Disconnects GPIO 13 from SD-D3| |3|OFF|Connects GPIO 15 to SD CMD| |4|ON|Connects GPIO 13 to the JTAG header| |5|ON|Connects GPIO 12 to the JTAG header| |6|OFF|Connects GPIO 13 to SD CLK| |7|OFF|Disconnects GPIO 12 from the AUX-in-detection| |8|OFF| - | #### RFID _The MISO/MOSI pins are not inverted on host/chip_ Connection Table: |RC522 Pin|ESP32 Lyrat v4.3 Pin|GPIO Number| |-|-|-| |3.3v|3.3v|-| |RST|3.3v|-| |GND|GND|-| |SDA|I2C SDA|18| |SCK|I2C SCL|23| |MOSI|JTAG MTCK|13| |MISO|JTAG MTDI|12|