low-profile hexagon keyboards.

HEX Choc keycaps


  1. availability
  2. history
  3. compatibility
  4. design specs
  5. KiCAD library and tips


The keycaps are produced by FKCaps and now available at a variety of vendors internationally. As the production and distribution partner, FKcaps keeps track of the up-to-date vendor list.


I started working on hexagonal keycaps during the FabAcademy, where a weekly topic was ‘Molding and Casting’. I designed and machined a wax mold in which I cast epoxy resin in order to create the first key prototypes:

The whole process from mold design to the first finished key is documented thoroughly in my FabAcademy blog post.

I started to make bigger molds, but quickly hit some limitations with consistency and changed strategy. The next batch of protoypes was machined directly from POM plastic, which allowed me to create the 44 keys required to finish my final project.

At this point I also started working on the 0xC.pad and refined the Keycap shape in more machined iterations. In order to scale up the production possibilities, I partnered with FKCaps to do a production run of the final keycap design using an injection molding process.


HEX keycaps have Kailh Choc v1 stems and are only compatible with Kailh Choc low-profile switches (CPG1350). They will not fit on Cherry MX switches.

HEX keycaps are not compatible with standard keyboard PCBs designed for MX or Choc spacings. In order to be compatible with a hexagonal tiling, a PCB needs not only to have an even 0.5hp stagger across all rows, but also to have a very specific vertical pitch of about 0.866hp. That’s of course not the case for any standard keyboard PCB, so a completely different grid is needed.

It is possible to use regular Choc keycaps on a PCB designed for HEX keycaps. However it is not possible to mix the two as neighbouring keys of the two different types will collide.

design specs

This spec sheet shows all the important measurements for designing a keyboard using these keycaps:

The vertical offset dimension can be taken from the drawing, but if your CAD program supports it, the preferred methos is to create a triangular or hexagonal grid. In any case, the distance between neighbouring keys in any direction should always be the nominal pitch of 21.5mm.

KiCAD library and tips

A KiCAD library with footprints is available here:

To place keys accurately and quickly, I recommend setting the following up in View > Grid Properties:

  • User Defined Grid
    • Size X: 10.75mm (half stagger)
    • Size Y: 6.206516
  • Grid 1: whatever grid you want to use for layout
  • Grid 2: User Grid

Now you can toggle between your regular grid (alt+1) and the key grid (alt+2) quickly. With the key grid active, you can just place the switch footprints by eye. The grid is also set up correctly to draw lines that line up perfectly with the edges of keys, e.g. for drawing a matching board outline.