At this stage I have bought many of the parts I need. My CAD design is not even half finished, though; I have a lot of work to do there still, and I have no real previous experience in CAD (nor in 3D printing!) so it's a big learning curve. (I have restarted the CAD model multiple times, each time with a slightly better understanding of how to go about it "properly".)

In fact, this entire project is quite audacious. Here's a non-comprehensive list of skills and knowledge this project requires that I had little to none of when I started.

Not only that, it's pretty expensive! I'm privileged to earn a very good salary, but even then it's hard to afford all of the expensive parts involved.

The major next steps at this point include the following, in mostly chronological order.

Design

Vertical tent

This keyboard will be close to vertical. Even among enthusiasts of sculpted ergonomic keyboards such as the Dactyl Manuform and its many derivatives, near-vertical tenting is still a rarity. I want to tent so severely so that my hands can be close to a handshake position when typing — i.e. the wrist is rotated such that the thumb is as far away from the desk as possible, placing it at a neutral and relaxed position (as opposed to keeping one's wrist pronated constantly, as is required by a flat keyboard).

Trackball

This keyboard integrates a finger-operated trackball, intended to be used as the only pointing device in my setup (even for gaming!). Finger trackballs are in the vast minority even among keyboards with integrated trackballs (most designs use a thumb ball), and none that I'm aware of combine this with the aforementioned near-vertical tenting angle. The tenting angle is significant because you can't simply tilt a trackball assembly by 75° without it falling off its bearings. It requires some thought to adapt the design to a different keyboard orientation.

I am using the popular PMW3360 mouse sensor.

Bearings and balls are interesting here. I bought a 52.4 mm Aramith billiard ball (in a yolk-like yellow colour) to use as the ball, but these balls are heavier than balls made specifically for trackballs, and that in turn means static bearings operate less smoothly. In a test print, I used silicon nitride static bearings, and these work okay, but not amazingly. I may want to try other bearings such as BTUs, in addition to other balls, so in order to allow for future experimentation in this area, I will try to design the trackball mount in a modular way, so that I can print new mounts and attach them to the existing keyboard chassis without having to print an entirely new chassis. I have noticed that other designers, such as Bastard Keyboards, have done the same; and knowing that others who have gone before have done what you are considering doing may often be a sign that you are on the right path.

Wireless

I intend to use some variety of BLE MCU/SOC to achieve wireless operation. I have a pair of nice!nanos in my possession, which allow true wireless operation in addition to operating over USB if I want (e.g. while charging the keyboard). However, ZMK (the main firmware used with the nice!nano) does not yet officially support sensors such as the mouse sensor required for the trackball, so if my hacking fails, I may need to look to other solutions. There's a variety of Nordic nRF52-based boards out there that are compatible with a small array of different firmwares, so I should be able to pull something together even if it means I need to replace the nice!nanos with something else. I will try to design the mounting and connection points for the SOCs to allow experimenting with different form factors (such as the Adafruit Feather form factor).