DIY Staggered Columnar Laptop Keyboard (Semi Ortholinear) [Prototype]

Awesome project !
I use a typematrix 2030 since +10y and I really love orthogonal keyboard.
The typematrix got the del and return keys in the middle of the layout. Because those keys are used so often, it’s logical to use the stronger finger, the index/pointer.
Anyway, your project makes me dream of an alternative keyboard layout for framework laptop… I’m going to follow closely. Thanks a lot.


This is the sort of keyboard layout I’ve been wanting so badly. I’m glad someone has had the courage to experiment on this front.

I want to give my thumbs and pinkies a bit more responsibility so I’d be aiming to integrate onto the FWL16 and either removing the trackpad entirely, or more likely surrounding it with keys either side, assuming I ever reach this point, and it’s possible to have input modules larger than large. :sweat_smile:

Excellent work so far, and thank you for sharing. I hope I may get to see it to it’s finale!


@dosssman we’re exploring a possible path to offering single-key modules that are mounted on thin PCBs, which are then soldered individually upwards into a PCB lattice that serves as both the electrical connection and the mechanical structure. Let us know if you think that would work for you.


@nrp Thank you very much for your answer, as well as supporting the project so far.

That would be incredible.If we can have a thin enough modular single switch like the 1U size keycap, then the PCB might be integrated into the input cover to maintain the low profile…
For custom layouts, it would definitely be easier to work on a PCB directly.
EDIT: I wonder how would the PCB be integrated to the input cover though.

Looking forward to updates on those modular single switches!


It‘s very nice to hear that message, but will it support zmk or qmk firmware? It is also very important feature for keyboard enthusiasts.


I think maybe it’s QMK, not ZMK.

Introducing the Framework Laptop 16

We’ve also released open source firmware based on QMK keyboard software that runs on the Raspberry Pi RP2040 microcontroller that many of our Input Modules utilize.


This would only be for the Framework Laptop 16. For Framework Laptop 13, it’s still the challenge that the Input Cover has specific hole placements in it.


Thanks for the precision. Hopefully with some thin enough single modular key switches that can be mounted upward, at least for this project I could work on a thin enough PCB that replaces the default grid of the input cover, with all the necessary traces for the keyboard matrix, making the overall solution more reliable than the current re-arranged membrane keyboard.


Getting QMK would be an epic milestone. ZMK will most likely come later naturally as adoption progresses right as itll gather more and more attention etc.


I’d expect QMK since they’re using it on most of the modules.

Why ZMK? I thought ZMK’s big advantage over QMK is Bluetooth support, which isn’t really needed for a laptop integrated keyboard… Does it have some additional compelling features beyond BT support? Is it easier to program or compile?

Seriously asking - I’ve a little experience with QMK but none with ZMK, so I don’t know the arguments one way or the other.


If the keyboard module had Bluetooth, it might be possible to pop out the keyboard, plug in a tiny battery, place the laptop on a stand, and end up with a much more ergonomic working position without needing to carry around a separate keyboard.

Though, this could possibly also be achieved by using the PCB as the male USB-C socket and just plugging it into the computer when using the keyboard externally.


Huh - hadn’t thought about a removable laptop keyboard; that’s an interesting idea… My personal preference is for a split ortho with the halves shoulder-width apart - laptop fits between them that way - but I suppose that would be possible this way too!

Yeah, interesting - thanks for the reply!


If you write the config yourself, you will find that ZMK has a much simpler syntax to achieve certain function. For example, combo is much easier to write in ZMK compared to QMK, because ZMK bind combo to key position, but QMK bind to key itself. So, if you have some modtap or layertap, you have to write the very long name every time you bind the combo. And to config the timeout for each combo, you have to write a function in QMK to return a timeout time, but in ZMK you just need to write a timeout-ms = which is more like a config and more convenient.

But if you use a GUI to set the key bindings, is not much different in term of functionality (ZMK has much more features, but generally, both functionality is enough for most users). And QMK has the ability for really time rebinding, so it is much easier for most users.


That’s really interesting - thanks for sharing some context.

I’m about to start a keyboard build - split ortho with some custom inputs - and I was looking at either QMK or KMK; I’d initially dismissed ZMK because I don’t need the BT support, but I’ll be sure to look at ZMK as well


That’s a interesting possibility. Though why stop there? A split keyboard is more ergonomic.

Some of the possibilities that the Framework 16 design offers us are really fun.

For usb-c, Framework said 3.7mm of height is available for the keyboard and input modules, a mid-mount usb-c port would fit within that. Also, the RP2040 has built-in usb support so that would be easy.


@dosssman Created an account just to say thanks for all the work you’ve done around this post/project. I will say the day Framework 16 was announced I looked up if a staggered ortho was going to be available and I found this post. Since then been checking every couple days for progress. Currently still using my 2013 Macbook that I got for college as my travel computer and dread bringing all my custom peripherals from my main pc. Haven’t bothered getting a new laptop as typing on exclusively ortho staggered splits in Colemak-dhm means typing on laptops without separate peripherals just feels wrong (even with colmak overlays). Although, if Framework or the Marketplace was able to sell this style of keyboard for Framework 16 I would buy a Framework laptop on the spot. Don’t think they have a referral program but it would all be thanks to you!


@Thomas_Brooks Thanks a lot for the support, and welcome to the community.

This project is a bit on standby, as I am currently looking forward to hear more from Framework about single modular keys that could be helpful for this project:
I am still trying to come up with a reliable way to make a pure DIY keyboard matrix, but it is quite challenging due to the height constraint :sweat_smile:

If they can really make it happen, keyboard layouts that fit the user’s preference could be made, especially for the FW16.

Best regards.


OMG, this project is beautiful! I was thinking of buying the Framework 16 when it comes out in the market, but now you have convinced me not only to do that but also to follow in your footsteps. If you sell the product within a year, you already have a buyer.


just want to say thank you for the information and share some ideas as I am also working on this project.

I am using a split 4x12 layout rn and my idea is to do a quasi-mechanical switch by taking parts from full sized mx style switches. for spring I am considering either trim a standard switch or using a leaf spring, all of which soldered on top of a standard pcb that is probably 0.6 or 0.8 thick for connection and rigidity.


@Clover3077 Welcome to the community.

Looking forward to see what you come up with ?
4x12 split sounds huge, what board is that ?

Regarding salvaging existing mechanical switches, what keycap do you think would fit.

1 Like