FXDSP is an easily programmable DSP platform in a familiar guitar pedal form factor:
It's based around an STM32F405 microcontroller and runs on the WhateverDSP framework, offering low latency audio processing and fully class complicant USB audio and MIDI support.
FXDSP has interchangeable user interface PCBs so it can easily be tailored to the needs of each effect produced on the platform.
For more information about WhateverDSP, please see the WhateverDSP repository.
Here is a full example showing a simple volume control that scales the audio level using a potentiometer:
#include <libwdsp.h>
void wdsp_init(void)
{
io_digital_out(BYPASS_L, true);
io_digital_out(BYPASS_R, true);
}
void wdsp_process(float *in_buffer[BLOCK_SIZE], float *out_buffer[BLOCK_SIZE])
{
float volume = io_analog_in(POT_1);
for (int i = 0; i < BLOCK_SIZE; i++)
{
float l_sample = in_buffer[0][i];
float r_sample = in_buffer[1][i];
out_buffer[0][i] = l_sample * volume;
out_buffer[1][i] = r_sample * volume;
}
}
Check out the examples repository for more, or come chat with us on Discord.
You can chat with us on Discord.
FXDSP hardware is licensed under CC-BY-NC-SA.
The WhateverDSP library is licensed under GNU Lesser General Public License.