Close

Porting to Python

A project log for Dactyl Lynx

The Dactyl Lynx is a parameterized, split-hand, concave, columnar, ergonomic keyboard - a fork/rewrite of the original Dactyl keyboard.

david-h-bronkeDavid H. Bronke 01/04/2024 at 23:360 Comments

So, I realized I actually left out a big chunk of the work I've done recently when I wrote my last project log... I started porting the 3D model generation to Python instead of Clojure!

Since I still wasn't happy with the position of the thumb cluster and the tenting angle on my last print, I decided to make everything adjustable using M6 bolts. I also decided to go for a "skeletal" design, leaving off any skirt or bottom case until I am happier with the core physical design. I actually rather like the effect.

I used my new spkb library for this, which I forked from my old Parameterized key tester frame project. It includes a bunch of utilities to make building an ergonomic keyboard easier, like switch sockets (with or without hot-swap socket compatibility), board mount helpers, and keycap approximations. (mostly used to visualize the finished board)

It's been refreshing moving this to Python - I'm much more comfortable with the language than with Clojure, and it's easier for me to build abstractions and organize the code in a way that makes it simpler for me to hack on. Hopefully this will help me solidify the design faster, and make it easier for others to come up with their own designs!

At some point I want to order some tool dip so I can coat the heads of the bolts, and keep it from sliding around as much while typing. Right now that's lower priority than getting the thumb cluster built and connected, and making the other half of the board.

Discussions