3D Designing a Butterfly in OpenSCAD

Mostly 3D.

I’m just building more complex keyboards. This one will flap from side to side like a butterfly! A BUTTERFLY.

I guess.

I had an idea for a grid-layout keyboard with an adjustable and removable hinge like the IBM M15, so you can adjust the angle and placement of both sides of keys so you’re not tweaking your wrists, slowly degrading their ability to exist painlessly.

As with most best laid plans, the devil in the details derailed my designdobjectives; but brought me to a more interesting and concise design…


It’s in that mess somewhere.

Anyway, I’ve been enjoying my fake planck travel keyboard for a while. It’s really handy to have consistency in ergonomics and my macros wherever I go, but I’ve been feeling the strain of having my wrists so close together. Programmer problems. I know.

So why not do this split butterfly with the fake planck?

To be honest, I don’t usually look for the answer to “why not” questions, because I’m an American, and because I canSo lets dive in!

I found some basic laser cut hinge designs, and I didn’t really need anything high strength or high use, so adapting the design was easy.

A pin on which circular pieces rotate, and a channel for wires between the halves to pass. At some point I thought of a gear-type wheel that you can spin to tighten or loosen the hinge, so that needed to happen.

Up to now, I’d been adapting other SVG files by hand to meet my requirements, but now that I’ve got circles and hinges, I can’t take a “close enough” approach.

I needed repeatability. I needed tweakability. I needed precise-ability. (?) I needed it to be free because I was broke. I needed OpenSCAD.


OpenSCAD is a 3D CAD program that uses written instructions to add and subtract basic shapes to create whatever you’re imagining.

It’s perfect for working with a laser cutter, where material variation and kerf can mean your designs need to be tweaked ever so slightly to work. If you’re using it correctly, you just have to change one variable, and the whole project will update to match the new value.


Play around with it here, and check out some of the examples (File > Examples)

More later… I gotta attach this hinge to my existing designs!

© Copyright applies, details in sidebar

3D Designing a Butterfly in OpenSCAD

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s