
The scale is correct with both of these methods, because I can align the image and model. I imported this file into FreeCAD, then exported it to STL. KiCad can export its 3D model to a STEP file. I then added a reference image (the PNG file exported above), and scaled/moved the reference image until the cross-hairs lined up with the vertex. In Blender, I added a single vertex at the origin, then extruded it on the X axis to match the measured dimension. I then used GIMP to add cross-hairs to the centre of the mounting holes. I used Inkscape to convert from SVG to PNG. In KiCad, I added two “dimensions” to show the distance between the centre of the mounting holes, then plotted the front copper layer as an SVG. There are guides on the web about how to set this. I’ve set it to millimetres, with a scale of 0.001. This is mostly just juggling file formats, but also note that Blender works in metres by default. My first challenge was to get the PCB into Blender at the correct scale, so that I could build a model around it. Blender is not a CAD tool, but it is excellent for general-purpose 3D work, and will do just fine for this task. My PCB design files are in KiCad, and I decided to design the case in Blender, since I already know how to use it.

I could have saved some time if I positioned the ports and mounting holes to match pre-made electronics enclosures, but I’ll take that as a lesson for my next project. Since this is my first electronics project, I’m working sequentially, and have completely ignored the need for a case until now. My effort on this project has been focused on making a design which works, then transferring that design to a PCB.

This is my first ever 3D print, so I had a few things to learn. This blog post is about the process of building a 3D-printed case to house this project, using Blender. I recently built a small 6502-based computer on a custom PCB, which I designed in KiCad.
