Modular Synth (Eurorack) - Notes
DIY Construction Notes
Bung all the components in, starting with the lowest in height eg diodes, then resistors, etc.
Check for shorts at the power terminals, turn it on and test it !
SMT - Mutable Instruments
I look in Eagle and create a pdf/image version of:
The schematic (print to pdf from the schematic)
The board (turn off lots of layers in layer settings and save as high res image)
BOM from schematic (export BOM, tick values)
I then thoroughly clean the board with IPA to remove grease
Order of Build
I look at (usually) the last page in Eagle to see the power section and build that
first. I then test for shorts at the power connector, then plug in and check all
reference voltages are correct.
I then place the MCU and associated decoupling caps. I also usually place the crystal
but that isn't usually necessary. I then flash the MCU.
Usually I'll then solder all the other ICs as it makes it a bit easier having more
space around them to drag solder. I'll carefully inspect all the solder joints under high
I'll then place all the rest of the components, testing all the passives with a multimeter
to ensure they are the correct values. It's a bit tedious testing each resistor and capacitor
but it's quite fast when you get into a rhythm. It's also a lot faster to test them now
than try to debug an incorrect or faulty component in a completed build (I once had a
dead resistor in a Ripples build which was a pain to track down - never again !)
I empty them into a tub to stop them flying away.
Once all components are soldered, I clean everything with IPA and a toothbrush to remove flux.
I then push fit the jacks, pots, switches, LEDs, etc. (It is far easier to sort out any issues
on the boards if these are not soldered !) I then test for shorts again at the power terminals and
I then test every pot, switch, jack using an oscilloscope. I'll use a function generator and
the Mutable Module tester.
I only power the module from a sacrificial power supply (from Frequency Central) that only
costs about £5 in parts if I fry anything. I don't use the power supply from the module tester
as a short on the module could fry the tester!
Flashing the MCU
I use an STLink V2 on a Mac from the Mutable Dev Environment. The Mutable modules need an adapter
from the large JTAG connector on the STLinkV2 to the mini JTAG port on the module. Olimex sell one for
a couple of quid. You need to make sure the connector is plugged in in the correct orientation - check
Eagle! (I have the red stripe on my adapter oriented towards pin 1, which is usually marked with a small
stripe on the PCB).
The module needs to be powered from a power supply.
I have tried using the ST software which worked perfectly well under Windows but I just prefer using
the dev environment (a virtual Linux machine that is fully cross-platform) as it means I can build and
debug the firmware. Flashing the MCU is a simple "make" command.
I have needed to edit the source code a few times - eg the Braids encoder that is commonly available eg
from Mouser, results in a reversed direction of travel compared to the factory module. A simple
two line code change corrects this.
I have also used the on-chip debugger (debug-client and debug-server) to sort out the calibration issues
on a couple of Peaks modules. This would have been impossible using the software GUI from ST.
Note that on the newer modules (plaits, stages, marbles so far as of Oct 2018) MI now use SWD to program the
MCUs rather than jtag. I jumper the pins of the STLink V2 to the SWD pins on the board. With the STLinkV2
pin 1 (target voltage) needs to be jumpered to pin 19 (3.3v *from* the programmer. Here is how I wired the
jumpers to flash marbles:
I use an Olimex AVRISP mkII. You need a 6-pin ICSP adapter to connect to the 10-pin ISP port on the
programmer to program the Mutable modules.
I use the Mutable dev environment to program the modules. I have used Atmel Studio (Windows based GUI)
but find the command line environment much faster and more straight forward. It is less prone
to error (as you don't need to transcribe the fuse settings from the makefile to the GUI, you just type "make"!).
There are a few hoops to jump through to get this to work. You need to use the "Flip" software to change
the firmware on the programmer to use avrdude. There is an issue with avrdude 6.x and the avrisp mkII.
You can either patch this or install 5.x. I use 5.x and specify the version of avrdude on the make
command line with "AVDUDE=". To compile 5.x you need to install the dependencies (eg yacc,
libusb etc - can do it manually or with sudo apt-get avrdude-dependencies). Once setup it all works seamlessly.
I install the crystal as well as decoupling caps. I power the MCU from the main eurorack power connector, rather
than from the programmer (I set the power jumpers on that to off).