Pico-dsp-front-02.png

Code it Yourself!

PÚCA DSP is an open source, Arduino compatible, audio development board. It can be used for a wide range of digital signal processing applications including;

  • Digital music synthesis

  • Smart musical instrument design

  • Sound art installations

  • Acoustic sensor networks

  • Internet radio

  • Web audio for the Internet of Sounds

  • Mobile recording

  • Bluetooth speaker

  • Wireless line level directional microphone

  • Voice user interface design

Compact, Integrated Design

PÚCA DSP was designed for portability. When used with an external 3.7 V rechargeable battery, it can be deployed almost anywhere or integrated into just about any device, instrument, or installation. It’s 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, and, despite its diminutive size it manages to provide all this functionality in a single board without compromising signal quality.

Features & Specification

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

Audio

  • 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

  • Breadboard friendly

  • 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

Power

  • 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

  • Power consumption:

    • 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 in standby and the ESP32 in deep sleep mode)

  • Battery voltage-level detection

  • ESD protection on USB data bus

Visit the project’s Github page and download firmware examples here;

The Microphone Array

PÚCA DSP has two Knowles SPM0687LR5H-1 MEMS microphones that are routed in a differential configuration to the left and right microphone inputs of the codec. 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 air, making it possible to adjust the microphone pickup pattern using DSP algorithms. The audio clip above was made using the microphones in a broadside array configuration.

Thanks again for an amazing piece of hardware!
Note that on the other ESP32 development board we were getting WiFi noise in the audio chain, but on the puca this is not an issue, clear signal when running the WiFi.
Now on to making this really cool board do really cool things

PÚCA Eurorack Module

Want to code your own Eurorack module? PÚCA is a shapeshifting module with a web browser interface for quickly flashing new firmware to the module. Powered by a PÚCA DSP which sits into the back of the module on stackable headers. Current firmwares include a SNES reverb emulator, a digital oscillator, and a stereo chorus.

  • 6HP Eurorack format

  • OTA Firmware updates over a WiFi network

  • Multiple DSP patches

  • 3 x CV inputs including a scaled V/Oct input

  • 2 x Trigger inputs

  • Dual mono or stereo I/O

  • 1 x Capacitive touch sensor

  • Reverse polarity and overcurrent protected

  • Input Impedance ~ 100k, Output Impedance ~ 1k

  • Skiff friendly

  • +12V 110.8mA, -12V 15.6mA (with Wi-Fi active)