Table of Contents

The Preview

Click to open in a new window.

Media ID: B30KSr3iJab

The Files

.blend/.stl: boombox-preview.zip

The Code

Backend: https://github.com/pauls-3d-things/panel-painter

Frontend: https://github.com/pauls-3d-things/esp8266-panel-painter

Audio Library: https://github.com/earlephilhower/ESP8266Audio

The Hardware

PCM5102A Datasheet: http://www.ti.com/lit/ds/symlink/pcm5102a.pdf PAM8406 Datasheet: https://www.diodes.com/assets/Datasheets/PAM8406.pdf

PAM8406 Pin settings

https://stereoauthority.com/class-ab-amplifier-vs-class-d/ –> Mode Class D -> Mode HIGH –> Mute -> HIGH –> SHD -> can float (is internally pulled up)

PCM5102A Pin settings

If you are using PCM5102, you need to pull the XMT pin high for it to output audio (0v = mute, 3.3v = unmute) .
|ESP32|PCM5102A| |—-:|:——-| |GPIO25/DAC1|LRCK| |GPIO26/DAC2|BCLK| |GPIO22|DATA|