One of my overabundance of projects is to design 3D-printable parts that others may find useful. Of course, I start with something I can use myself, so the key sleeve project came about because I had keys that needed identifying and labeling. You can get the source files at https://github.com/MethylBromide/keysleeves
I created the project using the OpenSCAD scripting language. OpenSCAD is a CAD program where rather than defining and performing operations on 3D objects, dragging and resizing them with a mouse or keying in positions and sizes, you instead write program code that calculates the objects and their positions. The language lets you designate certain parameters which can be customized to produce a variant of the part to given specifications. You can then export the resulting shape to be 3D-printed.
For instance, if your script was to create a simple box, you might have parameters for the outside dimensions of the box and the thickness of the walls.
For the key sleeves project, there are several parameters to let you customize a sleeve for a specific key, including:
- the type of key (three different types are shown in the above photo)
- what text you want on it (one or two lines)
- the font size and vertical position of the text
To guide you in selecting parameters, the script displays a preview, including ghost images of the top of the key so you can have confidence you chose the right type.
Braille Support
OpenSCAD doesn’t appear to support the use of Braille fonts, but you can use the Unicode Braille symbols if you select a “regular” font that includes images for those characters (in the case of Windows, “Segoe UI Symbol”, on Apple computers, “Apple Symbols”, or the free font “DejaVu Sans” on any system).
Using the Script to Create Key Sleeves
Install OpenSCAD software from OpenSCAD.org.
Get the latest release of my project from https://github.com/MethylBromide/keysleeves and unzip it into a folder on your computer — someplace where you would choose to keep OpenSCAD files you’re working on.
Use OpenSCAD to open the file keysleeves.scad from this folder.
If the Customizer panel isn’t visible, use the menu Window > Customizer to display it.
Edit the parameters and check the preview/rendering area to get the sleeve the way you want it. The preview may have “glitches” in it because it’s designed to be fast rather than accurate.
Once you have it right, use menu Design > Render (F6 key on Windows) to produce the final rendering. This is slow but glitch-free.
Use menu File > Export > Export as STL… (F7 key) to create a file that a 3D printer’s “slicer” program can use to create the part.
Most key styles are best printed with no supports, but use a brim for good adhesion. Generally they are best printed upright, in the position they appear in the STL file. Some key styles, such as the Schlage #95, need the supports on the outside, but if you enable automatic supports, your slicer software may want to also add supports on the inside for the wedge-shaped protrusion that’s supposed to clip into a hole in the key to keep it from sliding off, and for parts of the label text. You may have difficulty removing interior supports from the model, they may harm the appearance of your text, and they shouldn’t be needed, so I suggest manually blocking them in the slicer software. Not all slicer software lets you do that, but my favorite, PrusaSlicer, does.
If the Script Doesn’t Recognize Your Key Type
I programmed this script with the most common key types I ran across, but there are, I believe, hundreds of different types. Some of them are close enough to work, but you may well run across some keys for which I don’t have a good match.
The github project’s readme file contains instructions for adding key types to the script. The process involves photographing the key, tracing the shape of the head using a vector program such as InkScape, and entering some numeric parameters into the script detailing which part of the key the sleeve will cover and where to add wedges to lock the sleeve into place.
One consideration for the design is to minimize the use of filament by leaving a gap between the key shaft and the bottom of the sleeve, and shaping the top of the sleeve so it doesn’t cover more real estate than necessary. This normally results in a top that slopes up toward the middle to catch hold of a hole in the key, as in the Braille illustration above.
If you need a key duplicated, more of the key needs to be exposed than would be needed for opening a lock with it. With the current script, you should be able to duplicate a key without removing the sleeve. But I haven’t tested all of them for this.
Design Notes
In coming up with this system, I tried a few different approaches to make it convenient, secure, and durable. If you go into a hardware store you can find rubber key caps designed to fit over the top of the key, with a hole to hopefully match the hole on the top of the key so you can get it on the ring.
In my experience this commercial solution has drawbacks:
- It’s not very durable.
- Unless you can remember your color code, you have to label it with a Sharpie, and it tends to wear off.
- It makes the key harder to put onto a keyring, because the part above the hole is inside the keyring, making each key thicker at the top and therefore harder to fit.
- The rubber is “grabby” and interferes with sorting through the keys on the ring.
That’s why I chose not to have the sleeve extend up to the top of the key, but instead make it stay in place by being snug on the key and clipping into place by a protrusion at the bottom of whatever holes exist in the key head.