pico_synth_sandbox¶
A CircuitPython library designed for the pico_synth_sandbox device to provide hardware abstraction and a number of additional audio synthesis features.
Features¶
Device-level settings using
settings.toml
file to generate audio driver, display, MIDI, and other hardware objectsKeyboard handling for key priority and voice allocation
pico_synth_sandbox.arpeggiator.Arpeggiator
andpico_synth_sandbox.sequencer.Sequencer
classes based onpico_synth_sandbox.timer.Timer
class with support for bpm, step, and gatepico_synth_sandbox.waveform generators to quickly create numpy arrays
Voice based structure to simplify note and parameter management among multiple
synthio.Note
instancesMultiple
pico_synth_sandbox.voice.Voice
types available:Fully featured oscillator (
pico_synth_sandbox.voice.oscillator.Oscillator
) with glide, pitch bend, frequency lfo (vibrato), amplitude envelope and lfo (tremolo), filter envelope and lfo, and panning lfoAnalog-based
pico_synth_sandbox.voice.drum.Drum
voices:pico_synth_sandbox.voice.drum.Kick
,pico_synth_sandbox.voice.drum.Snare
,pico_synth_sandbox.voice.drum.ClosedHat
andpico_synth_sandbox.voice.drum.OpenHat
pico_synth_sandbox.voice.sample.Sample
voice with WAV audio file support, auto-tuning, and all aforementedpico_synth_sandbox.voice.oscillator.Oscillator
features
Time-based synthio helpers for advanced block inputs (
pico_synth_sandbox.synth.LerpBlockInput
andpico_synth_sandbox.synth.AREnvelope
)pico_synth_sandbox.microphone.Microphone
level monitoring and trigger-based recordingGeneral audio helper functions such as FFT, resampling, and normalization
Table of Contents¶
- Home
- Software Installation
- Examples
- Library Reference
Display
Encoder
DebouncerKey
Key
Keyboard
get_keyboard_driver()
TouchKeyboard
TouchPad
Arpeggiator
Sequencer
Audio
I2SAudio
PWMAudio
get_audio_driver()
get_amplitude()
get_noise()
get_offset_sine()
get_offset_sine_noise()
get_samples()
get_saw()
get_sine()
get_sine_noise()
get_square()
get_triangle()
Midi
- Build Guide