Pico Audio Pack (Line-Out and Headphone Amp)
Make some noise with this high quality stereo I2S audio add-on board for your Raspberry Pi Pico, with amplified headphone AND unamplified line level outputs!
Pico Audio Pack uses its PCM5100A DAC to output up to 32-bit, 384KHz stereo audio along its 3.5mm line out connector, ready for plugging into an external amp or powered speakers. If you're after something a little louder for your ears, it can also pump out amplified stereo audio from its 3.5mm headphone jack.
You could generate interesting noises with code on your Pico to output into a lo-fi synth, hook your Pico up to another device and use it as a custom USB sound card, or use it to give your Pico project the ability to play sound effects or short audio clips.
Please note that I2S audio on Pico/RP2040 is not currently supported in MicroPython. You can use Pico Audio Pack with CircuitPython though!
- PCM5100A stereo DAC (datasheet)
- PAM8908JER stereo headphone amp (datasheet)
- 3.5mm stereo headphone jack connector
- 3.5mm stereo line out jack connector
- Switch to adjust headphone amp gain (low / high)
- Pre-soldered female headers for attaching to Pico
- Compatible with Raspberry Pi Pico
- Fully assembled
- No soldering required (as long as your Pico has header pins attached).
- Dimensions: approx 53mm x 29mm x 11mm (L x W x H, including headers and audio jacks)
- Raspberry Pi C/C++ experimental examples
- More C/C++ examples
- CircuitPython tutorial
The labels on the underside of Pico Audio will show you which way round to plug it into your Pico - just match up the USB port with the markings on the board.
If you want to get your Pico making some noise super quick, check out this fine CircuitPython tutorial which includes code for playing sine waves and wav and mp3 files. To get the example code working with Pico Audio Pack, you'll just need to point it at the correct pins, like this:
audio = audiobusio.I2SOut(board.GP10, board.GP11, board.GP9)
Pico Audio Pack provides a high quality stereo DAC which uses I2S_DATA, I2S_BCK, and I2S_LRCK to recieve audio data.
There is also a MUTE pin which can be used to silence the output.
You can use Pico Audio Pack with the I2S audio examples provided by Raspberry Pi in their experimental examples (usb_sound_card and sine_wave_i2s). You'll need to #define PICO_AUDIO_I2S_DATA_PIN and PICO_AUDIO_I2S_CLOCK_PIN_BASE to 9 and 10 respectively to tell the examples which pins are being used for the audio data.