raybellis / PicoSynth

Polyphonic wavetable synthesizer for the Raspberry Pi Pico
21 stars 2 forks source link
midi midi-device rp2040 rpi-pico synthesizer

PicoSynth

A polyphonic wavetable synthesizer for the Raspberry Pi Pico.

(C) Ray Bellis 2023-2024

NB: this is very much a work in progress!

Current Features

The RP2040 is overclocked to 250 MHz.

The I2S interface is configured for use with the Pimoroni Audio Pack. A PCB with MIDI DIN ports and I2S DAC is under development.

The Datanoise PicoADK board is also supported via CONFIG_HW_PICOADK in the CMakeLists.txt file.

Building

Familiarity with using the RP2040 Pico SDK is assumed.

My own development system is macOS and I use the arm-none-eabi-gcc compiler v13.2.0 from MacPorts.

Building the code requires the following repositories, as well as an installation of NodeJS which is used to construct the various lookup tables used by the code:

I use the following in my .cshrc with the above three repositories all checked out into ${PICO_HOME}:

setenv PICO_HOME "/opt/pico"
setenv PICO_SDK_PATH "${PICO_HOME}/pico-sdk"
setenv PICO_EXTRAS_PATH "${PICO_HOME}/pico-extras"

License

This source code is released under the GPLv3.0 License