

ESP32AY
ZxPod - ESP32 based AY multiformat player
- Size
- 55 × 100 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 109
- Nets
- 155
- Pads
- 476
- Tracks, vias
- 1,458, 156
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 26 Jun 2024
- Updated
- 2 Nov 2026
Overview
ESP32AY is an open-source printed circuit board by djspawnbrest, from the djspawnbrest/ESP32AY repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 55 × 100 mm with 109 parts on 155 nets, routed with 1,458 tracks and 156 vias.
It is built around the ESP32-WROOM-32, CH340G and 74HC595, with the AMS1117-3.3, SM5308 and TPA6130A2RTJTG4 among its other parts. Its parts include 40 resistors, 32 capacitors, 9 ICs, 6 switches and 4 diodes. It belongs with the ESP32 boards of this library.
Main components
10ESP32-WROOM-32
SMD,18x25.5mm-40℃~+85℃ -98dBm 2.4GHz 2.7V~3.6V 20dBm Bluetooth4.2 ESP32-DOWDQ6 UART、SDIO、SPI、I2C、GPIO、PWM、ADC、DAC SMD,25.5x18mm WiFi Modules ROHSEspressif SystemsWiFi ModulesCH340G
SOP-16-40℃~+85℃ 2Mbps 3.3V、5V USB 2.0 USB to UART SOP-16 USB Converters ROHSWCH (Nanjing Qinheng Microelectronics)USB Converters74HC595
SOP-16-40℃~+85℃ 1 100ns@5V,50pF 10MHz 2V~6V 74HC 8 Serial-to-Serial or Parallel Tri-State SOP-16 Shift Registers ROHSGRShift RegistersAMS1117-3.3
SOT-223-40℃~+125℃ 0.003%Vout 1 1.1V@(800mA) 15V 1A 3.3V 5mA 72dB@(120Hz) Fixed Over Current Protection、Short Circuit Protection、Thermal shutdown Positive SOT-223 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSAdvanced Monolithic SystemsVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsSM5308
ESOP-8-40℃~+125℃ 1 10uA 2.1A 3V 4.2V 4.65V~5.5V Charging IC Lithium Battery Support Support ESOP-8 Battery Management ROHSHICHONBattery ManagementTPA6130A2RTJTG4
QFN-20QFN-20 New Arrivals ROHSTexas InstrumentsUncategorisedBC817
SOT-231 NPN 100nA 150MHz 300mW 40 45V 500mA 5V 700mV NPN SOT-23 Bipolar (BJT) ROHSShikuesBipolar (BJT)BC807
SOT-23-65℃~+150℃ 1 PNP 100 100nA 345mW 45V 500mA 5V 700mV 80MHz PNP SOT-23 Bipolar (BJT) ROHSNexperiaBipolar (BJT)EG1213
插件-10℃~+60℃ 10000 times 10mm 200mA 30V 5mm 8.8mm Black PC Pin Rectangular Columnar Right Angle SPDT 插件 Slide Switches ROHSE-SwitchSlide SwitchesZX62D-B-5P8(30)
插件-30℃~+85℃ 1 1.8A 30V 5P Black Female Micro-B USB 2.0 Plugin USB Connectors ROHSHirose ElectricUSB Connectors
README
README.mdZxPod - multiformat Turbo Sound player
ESP32 based AY Turbo Sound multiformat player
Fast flash firmware avaliable on Alex Spawn OTA web page
Starting with firmware version 3.41 - added support for external DAC's - read External DAC
IMPORTANT:
Firmwares from version 3.4 supports only PCB revision C! But you can soldering upgrade revision A and B to C:
Cut JP1 jumper on revisions A and B first!
From rev.A to B and C:
You need to cut the input track on the resistor R33(see Pic.2) and solder the wire from the ESP32 (see Pic.1) to the cut contact of the resistor. See the images below.
From rev. A and B to C:
You need to cut the tracks as shown in Figure 5 (red cut lines), then carefully strip the tracks from the solder mask and solder the wires (green lines) to the ESP32.
Features
Supported formats:
- .ayl - Ay_Emul by Sergey Bulba own playlist format
- .pt1 - Pro Tracker v1 file format
- .pt2 - Pro Tracker v2 file format
- .pt3 - Pro Tracker v3 (include Turbo Sound on two AY chips) file format
- .stc - Sound Tracker file format
- .stp - Sound Tracker Pro file format
- .asc - Sound Master file format
- .psc - Pro Sound Creator file format
- .sqt - SQ Tracker file format
- .ay - AY file format
- .psg - Programmable Sound Generator file format
- .rsf - Registers Stream Flow file format
- .yrg - Custom AVR-AY format
- .mod - Amiga MOD tracker format designed for creating, storing and playing music on an Amiga PC
- .s3m - (Scream Tracker 3 Module) is a module file format, based on the original MOD format used on the Amiga computer.
- .xm - The XM file format, also known as Extended Module, is a digital audio file type for music created in the FastTracker 2 software (rev.D and above only).
- .tap - A file format for emulating ZX Spectrum magnetic tape images, which stores data from standard Sinclair BASIC procedures for working with a cassette.
- .tzx - A file format used to store programs and games for the ZX Spectrum computer as audio data from magnetic tape.
- .mp3 - MP3 (MPEG-1 Audio Layer 3) is a widely used digital audio format that uses a lossy compression method to significantly reduce file size while maintaining near-CD quality audio.
- .wav - is an audio file format for storing uncompressed audio data, developed by Microsoft and IBM. It is known for high-quality audio that retains all original data, but results in large file sizes, making it popular for professional audio recording and editing. The format stores audio data in chunks and commonly uses linear pulse-code modulation (LPCM) for encoding.
- UART mode (available in player settings menu as Player source)
- SD forwarding via USB as Mass Storage device (rev.D and above only) (press left button("-") and turn ON player)
Controls
- Before player turning on - hold left button and turn on player to enter root config (needed for change encoder type). Encoder types:
- STEP 4L - active low (pull-up to VCC). Full cycle (4 phases) per click.
- STEP 4H - active high (pull-up to GND). Full cycle (4 phases) per click
- STEP 2 - half cycle (2 phases) per click (Set by default)
- STEP 1 - quarter cycle (1 phase) per click, and non-latching encoders
- Before player turning on - hold right button and turn on player to reset config to default.
- Before player turning on - hold encoder button and turn on player to reset last playing track (if player freezes or reboot on this file).
- Encoder Hold - change mode player/file browser
- Encoder Click - in player mode - play/pause; in file browser mode select track/playlist/directory; select - in config mode
- Encoder Double click - in player mode - open settings
- Encoder Push and turn right - fast forward (for ay format change next subsong, for tape formats - change next block)
- Encoder Push and turn left - slow down (for ay format change previous subsong, for tape formats - change previous block)
- Left button click/hold - volume - (in player mode); cancel - in config mode
- Right button click/hold - volume + (in player mode)
- Left button double click - change AY clock (in player mode) for PSG formats or change stereo panning for formats over DAC (mod,s3m etc.)
- Right button double click - change play mode: all/shuffle/once (in player mode)
- Right button hold and encoder click - remove file (only files, only in file browser).
- Right button click - change file sorting in file browser. (only in file browser).
Playing modes:
- Playing all tracks (in folder/playlist)
- Playing random track (in folder/playlist)
- Playing once track (loop)
Supports fully realtime file browser
Supports realtime AY layers change:
- ABC
- ACB
- BAC
- BCA
- CAB
- CBA
Supports realtime AY clock change:
- ZX SPECTRUM - 1773400 Hz
- PENTAGON - 1750000 Hz
- MSX - 1789772 Hz
- CPC - 1000000 Hz
- ATARI ST - 2000000 Hz
Built-in battery
Built-in charger and indication on LED and TFT
Built-in headphones stereo amplifier controlled by I2C bus
Demo video with digital sound record:
UPD 22.10.2024
- Add new feature: "UART mode" with AVR-AY player through UART.
UPD 04.03.2025
- Add new formats: .mod and .s3m tracker module formats
- Change PCB to revision C
UPD 18.06.2025
- Change PCB to revision D (ESP32 chip change to ESP32-S3 (N16R8) chip)
UPD 16.07.2025
- SD forwarding via USB as Mass Storage device (rev.D and above only)
UPD 12.09.2025
- Add .xm file format (rev.D and above only). Change Firmware version to 3.5
UPD 15.10.2025
- Add .tap, .tzx formats to play and loads programms on ZX-Spectrum.
UPD 08.10.2025
- Add .mp3, .wav formats.
UPD 10.10.2025
- Add file sorting in file broser on right button click!
Parts
109| Qty | Value | Footprint | References |
|---|---|---|---|
| 18 | 100n | Capacitor_SMD:C_1206_3216Metric | C1, C2, C3, C5, C6, C10, C16, C20, C24, C26, C27, C28, C29, C30, C31, C32 +2 |
| 16 | 10K | Resistor_SMD:R_1206_3216Metric | R2, R7, R10, R11, R15, R16, R18, R26, R27, R34, R35, R36, R37, R38, R39, R40 |
| 6 | 4.7K | Resistor_SMD:R_1206_3216Metric | R4, R5, R9, R12, R14, R17 |
| 4 | , , , | ||
| 4 | 470 | Resistor_SMD:R_1206_3216Metric | R21, R22, R28, R30 |
| 4 | 470n | Capacitor_SMD:C_1206_3216Metric | C11, C12, C13, C14 |
| 3 | 1K | Resistor_SMD:R_1206_3216Metric | R1, R3, R20 |
| 3 | 22uf | Capacitor_SMD:C_1206_3216Metric | C19, C21, C22 |
| 2 | 100u | Capacitor_Tantalum_SMD:CP_EIA-7360-38_Kemet-E | C9, C15 |
| 2 | 10uf | Capacitor_SMD:C_1206_3216Metric | C17, C18 |
| 2 | 220 | Resistor_SMD:R_1206_3216Metric | R29, R31 |
| 2 | 5.6K | Resistor_SMD:R_1206_3216Metric | R32, R33 |
| 2 | 510 | Resistor_SMD:R_1206_3216Metric | R8, R13 |
| 2 | 74HC595 | Package_SO:SO-16_5.3x10.2mm_P1.27mm | U8, U9 |
| 2 | AY-3-8910 | Package_DIP:DIP-40_W15.24mm_Socket | U1, U2 |
| 2 | BC817 | Package_TO_SOT_SMD:SOT-23 | Q2, Q3 |
| 1 | 0 | Resistor_SMD:R_1206_3216Metric | R19 |
| 1 | 0.1R | Resistor_SMD:R_0805_2012Metric | R23 |
| 1 | 100% | LED_SMD:LED_0805_2012Metric | D4 |
| 1 | 100K | Resistor_SMD:R_1206_3216Metric | R6 |
| 1 | 100uf | Capacitor_Tantalum_SMD:CP_EIA-7360-38_Kemet-E | C4 |
| 1 | 10K | Resistor_SMD:R_0805_2012Metric | R25 |
| 1 | 12MHz | mod:OSC_CSTCE16M0V53-R0 | Y3 |
| 1 | 1UH | Inductor_SMD:L_7.3x7.3_H3.5 | L1 |
| 1 | 22uf | Capacitor_SMD:C_0805_2012Metric | C23 |
| 1 | 25% | LED_SMD:LED_0805_2012Metric | D1 |
| 1 | 47uf | Capacitor_Tantalum_SMD:CP_EIA-7360-38_Kemet-E | C25 |
| 1 | 50% | LED_SMD:LED_0805_2012Metric | D2 |
| 1 | 75% | LED_SMD:LED_0805_2012Metric | D3 |
| 1 | AMS1117-3.3 | Package_TO_SOT_SMD:SOT-223-3_TabPin2 | U7 |
| 1 | BAT+ | TestPoint:TestPoint_Pad_D3.0mm | BAT+1 |
| 1 | BAT- | TestPoint:TestPoint_Pad_D3.0mm | BAT-1 |
| 1 | BC807 | Package_TO_SOT_SMD:SOT-23 | Q1 |
| 1 | BOOT | Button_Switch_SMD:SW_SPST_B3U-1000P | SW3 |
| 1 | CH340G | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U3 |
| 1 | DOWN | Button_Switch_SMD:SW_Push_1P1T_NO_6x6mm_H9.5mm | S2 |
| 1 | EG1213 | mod:SW_EG1213 | S6 |
| 1 | EN | Button_Switch_SMD:SW_SPST_B3U-1000P | SW2 |
| 1 | ESP32-WROOM-32 | RF_Module:ESP32-WROOM-32 | U4 |
| 1 | LOGO | mod:spawnllogo | G*** |
| 1 | MiniJack | mod:Jack_3.5mm_PJ320D_Horizontal | J2 |
| 1 | R50 | Resistor_SMD:R_0805_2012Metric | R24 |
| 1 | RotaryEncoder_Switch | Rotary_Encoder:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | Encoder1 |
| 1 | SD Card | mod:TFP09212B | J3 |
| 1 | SM5308 | Package_SO:HSOP-8-1EP_3.9x4.9mm_P1.27mm_EP2.41x3.1mm | U6 |
| 1 | ST7789 | mod:ST7789 | TFT1 |
| 1 | SW_Push | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | SW1 |
| 1 | TPA6130A2RTJTG4 | mod:QFN50P400X400X80-21N | U5 |
| 1 | UP | Button_Switch_SMD:SW_Push_1P1T_NO_6x6mm_H9.5mm | S4 |
| 1 | ZX62D-B-5P8 | mod:HRS_ZX62D-B-5P8 | J1 |
| 1 | jumper | Jumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm | JP1 |
Questions
How big is the ESP32AY PCB?
It measures 55 × 100 mm and has 2 copper layers, 1.6 mm thick.
What parts does the ESP32AY use?
109 parts, built around the ESP32-WROOM-32, CH340G, 74HC595 and AMS1117-3.3. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the ESP32AY KiCad files?
From the djspawnbrest/ESP32AY repository on GitHub, at the commit this page was made from: the board is PCB/revA/KiCad/ESP32AY.kicad_pcb and its schematic PCB/revA/KiCad/ESP32AY.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the ESP32AY design in my own project?
Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
More from djspawnbrest/ESP32AY
3- 2 layers55 × 100 mm

- 2 layers55 × 100 mm

- 2 layers55 × 100 mm

Similar boards
- 2 layers100 × 68 mm

- 2 layers59.3 × 38.1 mm

- 2 layers154.9 × 121.9 mm

- 2 layers89.6 × 79 mm

TDR 5351 core
MR-DOS/TDR_diploma_thesis
Time domain reflectometer. Includes Hardware, firmware and GUI in Octave. Also a diploma thesis.
199 parts33GPL-3.0 - 2 layers51 × 30 mm

- 4 layers117 × 60 mm

- 2 layers33.5 × 24.5 mm

- 2 layers28 × 48 mm

E meter hardware
www-ShapeLabs-de/sgm4_to_mqtt
ESP8266 electricity meter reading head for SGM-C4 meter with homeassistant mqtt-discovery
34 parts3MIT
