While developing a multigame arcade project using a Raspberry Pi Pico, I had to find a way to produce and mix multiple sounds simultaneously without interrupting or slowing down the graphics and user interface: and that's how this library was born.
PicoSound delivers glitch-free audio for any RP2040 application by dedicating Core1 exclusively to audio processing. While your main program runs on Core0 (handling graphics, I/O, calculations, or game logic), Core1 produces sounds and manages the audio mixer and output independently.
The library produces both synthesized sounds (waveforms, melodies, effects) and streaming from WAV files and can be used for synthesizers, musical instruments, notification systems, interactive installations, games or educational tools.
It's available with both Arduino IDE and PlatformIO and uses standard C++ structure (.h/.cpp files) ensuring compatibility across development environments.
Features- Non-blocking audio on Core1
- 8-channel mixer
- I2S (MAX98357A) or PWM output
- Synthesized sounds (sine, square, sawtooth, triangle, noise, explosion)
- Melody sequencer
- WAV streaming (LittleFS or PROGMEM)
- Frequency sweeps
- Arduino IDE and PlatformIO compatible
Here you can see the library at work in my multigame arcade project









Comments