How to Make 3D-Printed Circuit Boards And An LED Flashlight

Constructing the Circuit

3 of 9
led light photo

credit: CarryTheWhat via Instructables

3 of 9

Component layout: You have a circuit diagram, like the conceptual schematic attached. The library currently supports the following features: battery holder (AA, AAA, and coin cell), capacitor, resistor, transistor, 1xLED, 2xLED, base board, peg (and cap, for wrapping and holding things together), an SPST slide switch, and a trace hop (for intersecting threads). This example is of a simple analog transistor circuit which causes an LED to blink.

Unfortunately, there is not yet a way to automatically place the components, so you will place each component manually. Spend a few minutes analyzing the circuit, and think about how to arrange it into a grid. I have found the grid layout the easiest for placement and wrapping, but it's by no means the only possibility!

I recommend you sketch out the circuit by hand, roughly how you intend to place them (orientation and relative locations). Also, it might be a good idea to test the circuit with the components you have on a conventional breadboard.

If you prefer Blender or SketchUp, then you can import each component separately (STL files), and place them manually. If you do this, make sure you maintain the orientation so that they will print nicely.

If you are building the circuit in OpenSCAD, download the library file '3D-PCB.scad' via thingiverse or github, and put it in the same folder as your project. You will also need to do the same for the MCAD library. At the top of your .scad file, import the library, along with the MCAD dependencies (with the paths appropriately altered if necessary):
use ;
use ;
include <3D-PCB.scad>;

Each component in the library has a standardized spacing: the pegs that make up a component are a set distance from that component's center. This value can be accessed by a call to 'get_component_distance()'. If you arrange your components in rows and columns like the example, the distance between the rows and columns should be 2 times this distance. Then if components are placed next to each other on this grid, they can share a peg. Do this where possible, and you will minimize the number of threads you need to wrap. The caps that go over the pegs will hold your components to a snug connection.

Place your components with calls to the library, along with translate and rotate about z, with as many components sharing pegs as possible. Tip: OpenSCAD has two rendering options: a quick render and a full render. I suggest using 'quick render' (F5) to preview while placing components. But do not try to rotate or move the rendered 3D model, this only works well after a 'full render' (F6) which in this example took around 10 minutes!

When you are finished, render and export the STL circuit.