DIY Eurorack case

This is a work log of my DIY eurorack synth case.


I started out by doing some digital sketches of panel layout using jscad. Idea was to build out of oak boards:

I moved from openscad to jscad to be able to abstract using npm packages and such. Still a bit of a hassle to setup the desktop environmen:

but in the end it's pretty nice to do things like this:

// actual pieces
const bottom = color('orange', cube({ size: [innerWidth, caseDepth - woodThickness, woodThickness], center: false }))
const back = color('lightgrey', cube({ size: [innerWidth, caseHeight - 2 * woodThickness - a, woodThickness], center: false }))
const top = color('lightblue', cube({ size: [innerWidth, topDepth, woodThickness], center: false }))
const front = color('lightgreen', cube({ size: [innerWidth, frontHeight, woodThickness], center: false }))

const side3d = (() => {
  const side2d = new csg.CSG.Path2D([[0, 0], [0, frontHeight]])
    .appendBezier([[caseDepth - topDepth, frontHeight], [caseDepth - topDepth, caseHeight]], { resolution: 100 })
    .appendPoint([caseDepth, caseHeight])
    .appendPoint([caseDepth, 0])
  return linear_extrude({ height: woodThickness }, side2d)

and then see that it fits on the intended sheet material:

const panelLayout = union(
  translate([0, 600, 30], rotate([0, 0, -90], color('grey', cube({ size: [600, 2000, 18], center: false })))),
  // bottom,
  translate([400, 200, 0], frontAndTop),
  // translate([910, 0, 0], rotate([0, 0, 90], side3d, translate([0, 1150, 0], rotate([180, 0, 0], side3d))), translate([30, 0, 0], back))
  translate([880, 0, 0], rotate([0, 0, 0], side3d)),
  translate([600, 0, 0], rotate([0, 180, 0], side3d))

  // , translate([0, 1150, 0], rotate([180, 0, 0], side3d))), translate([30, 0, 0], back))

Wood working

Physical reality then! Double and triple checking layout:

Using tape to protect the wood from splintering:

Just using the first side as template for the next:

Routed out for back plate using a Dremel wasn't supersuccesful, but it worked ok. I later got a better plunge router.

Dry fitting with rails:

I always wanted a JEM guitar and of course I couldn't pass on the opportunity to route handles like that on my case. I did a template in openjscad and 3d printed it in PLA:

Routed this with better plunge router:

Also routed some vents in the back:

Starting to come together:

And now to my biggest mistake. I stained the Oak with some way too dark woodstain. At the moment it felt like a good idea, but I don't think I like how it turned out really:


I opted for some Meanwell LRS-100 for PSU:

I then designed my own distribution boards and had them fabed by JLC. Dip soldering!

Dip soldering!