3D printing new key caps with labels

After spending a couple weeks optimizing the layers and modifier keys of my UHK (which I love, btw), I needed to print some new keycaps to reflect the new layout.

Generating the key cap STLs
I generated STL models of the needed keys using the open source KeyV2 model for OpenSCAD. I made the following tweaks to the model:

  • Set “key profile” to OEM.
  • Set “key length” and “row” (in the code panel) as needed, per UHK’s spec.
  • Set “stem type” to rounded_cherry with a “stem slop” of 0.2, this gave a snug fit for my brown tactile switches.
  • Set “inverted dish” to true, because I prefer all the modifier keys to have a convex top
  • Set “wall thickness” to 2
  • Do not add any label text in the “legend field”, we will add this later in the 3D slicer.

Adding labels in the slicer
I am somewhat new to 3D printing, so this probably isn’t the most efficient workflow, but it did give nice results. I have a Bambu X1 3D printer so I use the Bambu slicer. Load the STL for a key into the program, then use the Auto Orient button to align the front face of the key cap with the print plane. Then manually rotate the model by 180deg so the front face of the key faces up.

Then click the key cap, and click the Text tool to add a text label on this plane using the settings shown.

After adding the label, sink it to be flush with the front face of the key (i.e., reduce its z position by an amount equal to the thickness of the label)

Now set the key material to black, and the label material to white.

Lastly, rotate the combined model by 180deg so the label face rests on the print plane. After slicing, check that the label appears correctly on the bottom layer, and the bottom face is flush with the print plane (i.e., there should be no supports).

I printed at extra fine quality (0.08mm layer height). Here are the results (see modifier row and key cluster).


How do you like your printed keycaps? I’ve had some printed caps in the past (not on the UHK) and they always seemed rough and unfinished. The printers just never seemed to have enough resolution.

1 Like

I initially tried printing the key cap with the bottom on the print plane and the label extruded on the top), but this gave some rough layer effects on the top face. I had better results moving the label to the front face of the key, and printing with that face placed on the print plane. This gave a much finer texture on the top face. It’s still a hair rougher than the OEM keys, but not by much. And they can be polished if desired. Personally i don’t mind the modifier row having a slight rough texture.

From left to right: first attempt, latest attempt, OEM.


That’s cool, thanks. I don’t even need labels, but I am looking for 1.75u convex space bars in SA profile in colour black. Your approach sounds promising.