General questions on viability of porting open source vcv modules to a microcontroller.

I’m just curious to open a dialogue channel about something I don’t know a ton about.

It seems possible in theory to port the code for an open source module from here on Vcv to a microcontroller such as arduino for use in hardware.

Is this possible, has it been done? Are there serious limitations? What was involved in turning freak into hardware @modlfo ? Does ±10v to ±12 cause issues? Other code Formatting challenges?

Here are some of my thoughts. There are a bunch of things to consider when making hardware for a module. When porting a module that has been already designed and coded you may find a lot of issues. For example:

  • Ergonomics. In hardware you cannot physically put the knobs, jacks and other interface elements too close to each other. You will have to design the panel so the patching cables and knobs are somewhat comfortable and accessible.
  • CPU usage. You need to pick a microcontroller or microprocessor that can run the code as complex or simple as it is. Ideally, you need to pick a simple and cheap processor.
  • Sample rate. Related to the CPU usage, processing all signals at audio sample rate is expensive. The most common is having a stereo audio. More channels requires more complex processors. The controls and modulations can be read at a lower sample rate.

In the case of the Freak, I started by doing a prototype using as platform my Clouds module. Since it’s open source I was able of upload my firmware and start testing the filter algorithms. Probably the best starting point is to use the Daisy Patch module.

Regarding the code, I had it somewhat easy since all the DSP code is in Vult language. All the DSP code is portable and separate from the VCV Rack code parts.

As for the voltages. I design al the modules to be tolerant to any voltage from ±11 to ±15 volts.

7 Likes