cy384

hardware / software / wetware

flex without the flex

Real flex PCBs are expensive, on the order of 10x standard FR4 material. For extremely compact designs that may need repeated bending, there's no alternative. However, for applications with more space available and no repeated bending, thin FR4 PCBs may serve quite well.

bending the rules

filename

My interest is in creating PCBs for, hmmm, let's call them "non-planar" keyboards, such as the Dactyl-manuform. One commercially available board, the Kinesis Advantage, uses this approach. A thin PCB is bent to match the curve of the finger cups (the controller and other electronics are on a separate board). Photo by i0exception.

filename

I also found this multi-level board with several bends to connect everything.

filename Remi David Koster aka Redako takes an approach, "kerf bending", often used to bend rigid materials like wood or plastic with laser cutting.

filename This blog post by Ben Jordan with Altium is about actual flex and rigid-flex combination PCBs, but does examine some interesting patterns.

Images reproduced from sources linked for fair-use commentary and archival purposes.

an experiment

filename I threw together a trivial S-shaped PCB in KiCAD and sent it to JLCPCB to be manufactured in 0.6mm thickness. 0.4mm PCBs would bend more, but are often slightly more expensive and available from fewer fabs.

filename The result is extremely flexible; the S sections are probably not 100% necessary for the mild curves used on most ergonomic keyboards (see the Kinesis above), but they do allow extreme bends over a small radius.

I mentioned my design on IRC, and a friend has actually used this approach commercially. He offered the following comments:

lovely. You should have rounded the corners tho
I've used that technique in a product that's currently in production
But yeah, trick is to keep cross-section constant if you want an even bend
And in your case you want more of an s-shape
Because you are putting lots of stress on the trace in the bend along the long axis as it is
Also put the trace on the side that is getting stretched, not the side that's getting crushed
And make traces wide as you can
I learned all that the hard way :(

thoughts for the future

After doing it once myself, seeing people hand-wire their ergonomic keyboards hurts my soul. Hopefully this idea can spare someone.

The hard part is designing a PCB to match a board. The previously mentioned Dactyl-Manuform uses a clojure script to generate the case, and I believe it is reasonably possible to also generate a PCB; adding edge cuts and switch footprints to a KiCAD PCB file programmatically is simple. Even for a manually designed keyboard, careful experimentation should be enough to design a bendable PCB. Getting the geometry correct, in either case, would be a pain, but for significant payoff.

It is my opinion that lack of PCBs has severely hobbled the creation and adoption of "non-planar" keyboards at the hobbyist level. Despite the time investment in fragile hand-wiring and costs of 3D printing, Dactyl derivative keyboards seem modestly popular; if a PCB were available, their accessibility would skyrocket.