Raspberry Pi as Eurorack synthesizer module

Processing realtime EEG data from the OpenBCI system requires software running on a computer. For the EEGSynth project we do the rapid application development using the platforms that we are most familiar with, i.e. standard laptops and the FieldTrip toolbox, which is based on MATLAB. However, in the end we want to implement as much as possible using affordable and open hardware and software. Hence we opted for the Raspberry Pi, a credit card–sized single-board computer. It runs Linux, which makes it easy to use standard programming platforms and interfaces such as Python and Redis to implement the software stack.

In the first EEGSynth studio performance you can see Stephen in the middle, operating the MATLAB-based GUI for the EMG/EEG processing, and Jean-Louis at the back operating the synthesizer. The goal of the technological development is to put Jean-Louis completely in control and to make the interface of the EEG synthesizer as similar as his other modular synthesizer modules. Hence the need for fitting the Raspberry Pi into a Eurorack synthesizer case.

Here you can see some photo’s from the construction of the front panel.

2015-11-14 15.32.52 2015-11-14 16.30.57

The front plate has holes for the various interface ports to interface with the Raspberry Pi. For a sturdy mount I glued a section of L-profile rails to the front plate.

2015-11-14 21.36.36

After mounting the Raspberry Pi, I connected the HDMI and audio port with a short cable to the front panel.

DSC_0061

Here you can see the Raspberry Pi in the Eurorack case, next to the power supply.

DSC_0084

10 thoughts on “Raspberry Pi as Eurorack synthesizer module

  1. mathewpeterson

    Thank you for posting project. I would like to do something similar with the Raspberry Pi and other single board computers. Would you be willing to publish any of your design files?

    Reply
    1. Robert Post author

      The wooden enclosure is made of laser-cut plywood. I started with a design from http://boxmaker.connectionlab.org (matching the tickles of the plywood), after which I deleted the front panel and “cut off” (in Adobe Illustrator) the teeth on the front-panel side, before sending it to the laser cutter (which operates as a printer driver, i.e. the lines in the AI drawing is where it cuts). The eurorack rail in the enclosure is a 86 HP long one cut in half (effective 2x 42 HP), from http://clicksclocks.de.

      The aluminum front plates are cut from a piece of 2 mm anodized aluminum that I ordered from https://www.aluminiumopmaat.nl. You could also use blind faceplates from Doepfer. I don’t have design files for the metal work, that is all just invented on the fly. I wish I had access to a CNC machine, since that would save a lot of time and make the metal work much more precise.

      The cable to expose the Raspberry Pi to the front panel is this one http://www.ebay.com/itm/361138871473 from Ebay.

      Reply
  2. Vittorio

    Thank you for your work. I would like to use my raspberry inside the eurorack case and I would like to add some rotary encoder to change parameters in pure data software. Some idea about this? Thank you for your help.

    Reply
    1. Robert Post author

      The power supply is not using USB but has 110-230V input, and consists of three (2x12V and 1x5V) switching PSUs. You can find details here.

      Reply
      1. Just-Geoff

        Right, but to get it to the eurorack power supply how is the raspberry pi adapted to the 12v/5v? Specifically the USB is converted to the pins for the Euro power, and I was just wondering how that was done.

        Reply
        1. Robert Post author

          The 5V and GND of the eurorack power supply cable are connected to a 5V and GND pin of the Raspberry Pi GPIO expansion port. See this post for details. Although I am not using the USB port, you could also take a micro USB cable, cut it in half, and connect the right wires to the eurorack power supply.

          Reply

Leave a Reply to Robert Cancel reply

Your email address will not be published. Required fields are marked *