Dexy is a 10HP Eurorack module that does digital FM synthesis. Hardware and software are open source. GitHub repository is here.
Hardware Features
- 10 HP Eurorack module
- Based on an Adafruit KB2040 board with an RP2040 microcontroller (similar to Raspberry Pi Pico)
- Inputs: Gate, pitch (1V/octave), pitch modulation, timbre modulation
- Gate and 1V/oct inputs can be normalled from the Eurorack bus (jumper-selectable) – more info here
- Attenutators on the modulation inputs
- Timbre control knob
- Rotary encoder and OLED display for patch selection and note animations
- USB connection to download patches and firmware
Notes
This module requires a 16-pin Eurorack power cable that supplies +5 V power in addition to +12 V and -12 V.
The KB2040 microcontroller module is similar to a Raspberry Pi Pico but it’s smaller. The firmware will run on any Pico-compatible board with minor changes. (For example, my prototype used an Adafruit Feather RP2040 but it turned out to be too big.) Of course, the PCB layout must be changed if a different microcontroller module is used.The microcontroller board is powered by either the USB connection or the Eurorack +5 V supply, whichever is turned on. If both power supplies are on, a diode prevents them from fighting each other.
For the USB connection, I have the USB cable running through a hole in the front panel and a right-angle adapter to the KB2040. It looks a bit janky and it’s hard to plug and unplug, but I was worried about running USB data lines from one PCB to the other over a header connector. The data rate is only 12 MB/s (USB 1.1) so I think it would have been OK to run the data lines to a USB-B connector on the controls PCB.
An OLED display and a rotary encoder are used for a user interface to the microcontroller, mostly used for patch selection.
Analog CV inputs for pitch and timbre modulation are read by the RP2040’s built-in 12-bit ADC. This ADC isn’t great (see here for more info) and a 14-bit ADC would give better results for the the 1V/octave pitch CV input. I couldn’t find a good, cheap, usable 14-bit ADC chip, so I’m sticking with the built-in ADC.
The two pitch CV inputs – 1V/oct and modulation – are added together by an op-amp and read by a single ADC channel, instead of having separate ADC inputs for the two inputs. Same for the timbre control and timbre mod CV. These CV inputs need an op-amp stage to scale them down to the RP2040’s voltage range (0 to +3.3 V), so it’s easy to add them in hardware and use fewer ADC channels.
The audio output is generated digitally by the microcontroller and converted to an analog signal by a MCP4821 DAC chip, which is followed by a reconstruction filter made of two Sallen-Key filter stages.
The Dexy module is open source hardware. The hardware design is published under the Creative Commons Attribution license. Firmware and software are published under the MIT license.
Please note that I am a hobbyist, not a trained electronics engineer. No guarantees!
PCBs
PCB layouts are provided in KiCad and gerber formats, on GitHub. A PCB layout for a drilled front panel (with no labels) is also included.
The PCBs that I designed for this module can be ordered from OSH Park:
- Main board
- Controls board – Note: This version is missing the debouncing capacitors on the rotary encoder. The latest KiCad and Gerber files are correct.
- Front panel
Schematic
PDF version is here. KiCad files are on GitHub.
Software Used
KiCad 7.0.2