Púca DSP Strawberry Edition
A PÚCA DSP development board with 4 MB of flash memory and 8 MB PSRAM. We ship with unsoldered male pin headers, a JST battery connector, and a test firmware application installed.
PÚCA DSP is an open-source, Arduino-compatible ESP32 development board for audio and digital signal processing (DSP) applications. It offers a comprehensive audio-processing feature set on a small-format, breadboard-friendly device that provides audio inputs, audio outputs, a low-noise microphone array, an integrated test-speaker option, additional memory, battery-charge management, and ESD protection all on one tiny PCB.
Synthesizers, Installations, Voice UI, and More
PÚCA DSP can be used for a wide range of DSP applications, including but not limited to music, art, creative technology, and adaptive technology. Music-related examples include digital-music synthesis, mobile recording, Bluetooth speakers, wireless line-level directional microphones, and the design of smart musical instruments. Art-related examples include acoustic sensor networks, sound-art installations, and Internet radio applications. Examples related to creative and adaptive technology include a voice user interface (VUI) design and Web audio for the Internet of Sounds.
Compact, Integrated Design
PÚCA DSP was designed for portability. An external 3.7 V rechargeable battery can be deployed almost anywhere or integrated into any device, instrument, or installation. Its design emerged from months of experimentation with various ESP32 development boards, DAC breakout boards, ADC breakout boards, Microphone breakout boards, and audio-connector breakout boards; despite its diminutive size—it manages to provide all of that functionality in a single board. And it does so without compromising signal quality.
Features and Specifications
Processor & Memory
– Espressif ESP32 PICO D4 processor
– 32-bit dual-core 80 MHz / 160 MHz / 240 MHz
– Choice of either 4 MB SPI Flash with 8 MB additional PSRAM or 16 MB External SPI Flash
– 2.4 GHz Wi-Fi 802.11 b/g/n
– Bluetooth BLE 4.2
– 3D antenna
-Wolfson WM9878 Stereo Audio Codec
-Audio Line In on a stereo 3.5 mm connector
-Audio Headphone / Line Out on stereo 3.5 mm connector
-Stereo Aux Line In, Audio Mono Out routed to GPIO Header
-2 x Knowles SPM0687LR5H-1 MEMS microphones, routed in a low-noise differential configuration, can be configured as broadside or end-fire beam-forming microphone arrays
-ESD protection on all audio inputs and outputs
-Support for 8, 11.025, 12, 16, 22.05, 24, 32, 44.1, and 48 kHz sample rates
-1 W Speaker Driver routed to GPIO Header
Form Factor & Connectivity
-70 x 24 mm
-11x GPIO pins broken out to a 2.54 mm pitch header with access to both ESP32 ADC channels, JTAG, and capacitive-touch pins
-USB 2.0 over a USB Type-C connector
-3.7/4.2 V rechargeable Lithium-Polymer battery or external 5 V power via USB
-ESP32 and Audio Codec can be placed into low-power modes under software control
-Normal: 100 mA with Wi-Fi off and mics active while running audio DSP code
-Standby: 52.4 mA with the audio codec in standby mode
-Low-power: 5.7 mA with the audio codec on standby and the ESP32 in deep sleep mode)
-Battery voltage-level detection
-ESD protection on USB data bus
Editions & Memory
On the back of the PÚCA DSP PCB, there is room for one external memory IC. Therefore, we are offering two different models of this board, and they differ only by the type and amount of memory they provide using this socket.
The Original Edition utilizes the internal ESP32 PICO 4 MB Flash memory and an external 64 MB pseudo-static (PSRAM) chip, of which up to 8 MB is currently supported by ESP-IDF. The PSRAM can be made available by enabling various options in the configuration menu in ESP-IDF, PlatformIO, or Arduino.
The Strawberry Edition has 16 MB of external NOR Flash instead of the above PSRAM. The EFUSES in the ESP32 are burnt with a new flash CS pin configuration, and the 2nd-stage bootloader will load the partition table and the main application image from the 16 MB external Flash memory. The EFUSES can be burnt only once. With this configuration, you cannot revert to using the internal 4 MB Flash with PSRAM.
What’s the Difference?
The Strawberry Edition is a more experimental hardware configuration intended for more experienced developers familiar with their application’s memory requirements and knows they need more than the 4 MB provided by the ESP32 PICO D4. In addition, the two models provide different types of memory. Depending on the firmware application, NOR Flash might be more appropriate than PSRAM or vice versa. (For example, your application might require a certain read/write speed.)
How do I Know Which One to Choose?
For new users who are looking to get started with audio programming on ESP32 and are using Arduino IDE for programming, we recommend the Original Edition. The same is true if you do not know the size requirements of your application. You can write many applications using this memory configuration.
The Microphone Array
PÚCA DSP has two Knowles SPM0687LR5H-1 MEMS microphones routed in a differential configuration to the codec’s left and right microphone inputs. The distance between the microphones on the PCB is related to the minimum delay time of a single sample for a sampling rate (fs) of 48 kHz and the speed of sound in the air, making it possible to adjust the microphone pickup pattern using DSP algorithms.
GPIO Selection & JTAG Debugging
PÚCA DSP’s GPIOs are carefully selected to allow access to ESP32 peripherals, including ADC1, ADC2, RTC, Capacitive Touch, and JTAG for debugging. Some of the pins from the audio codec—including Mono output, Auxiliary L & R inputs, and 1 W speaker outputs—are also broken out.
The analog and digital 3.3 V regulator outputs have broken out to GPIO for peripherals integration. The analog 3.3 V pin can be used for low-noise analog applications, such as connecting a potentiometer to the ADC inputs of the ESP32. The digital 3.3 V pin can connect digital peripherals such as I²C temperature sensors.