This post is an expanded and reworked version of the table in my first keyboards and Graph Theory blog post, listing the best (in terms of maximal number of edges) girth 6 bipartite small graph(s). I added many of these to the House of Graphs database, and then in October the mathematician Steven Van Overberghe added a few more. My interest here is applying the graphs to the design of diode-free computer keyboards where the bipartite matrix becomes a sparse scanning matrix, and girth 6 becomes 4-key rollover (4KRO).
Novice astronomer and photographer near Dundee, Scotland, starting out with his first telescope. Also dissects webcams & puts them in bird boxes, tinkers with Raspberry Pi projects, and lately designs and builds Mechanical Keyboards.
Friday, 28 November 2025
Friday, 14 November 2025
Curvy or Curly keyboard layouts
My journey into the world of DIY Ergonomic Mechanical Keyboards began when my Microsoft Natural Ergonomic Keyboard 4000 started to fail. That has a very slight curve to the alphabet block's rows, which became more pronounced in later designs like the Microsoft Sculpt Ergonomic Keyboard (see Wikipedia). However, these all have the traditional row stagger which gives the right hand comfortable (diagonal) columns of keys per finger, but not the left.
In the DIY mechanical keyboard world column based layouts and orthonormal are popular (keys in a grid), but there is another solution which at first glance preserves the traditional row stagger: The symmetric katana stagger, originally popularised by Baris Tosun aka RominRonin's Kanata keyboards as early as 2015. Well, what if you combined that with a curve to each row?
Thursday, 23 October 2025
My third keyboard design: diode-free, 34-keys, Bluetooth, spilt
Back when I was first looking at DIY keyboard designs, one that caught my eye was the Forager - a cute little 34-key wireless split keyboard in a compact elegant case. I was ready to move down to 36-keys, but just 34 seemed a stretch (I'm willing to try now). Also, it looked like a challenging build - surface mounted hotswap sockets (I can do those now), two little Seeed XIAO controllers (should be OK), and 34 surface mounted diodes (tiny and daunting). Well, I could just design my own diode free keyboard PCB again, right?
I actually did the initial PCB design for this while still finalizing the case modifications for my second keyboard, the Gamma Omega Hesse, and ordered the Acid PCB as the Hesse PCB was being shipped to me. Hence the meme.
Tuesday, 14 October 2025
No Logo Tech NRF52840 controller boards
It turns out that ProMicro footprint clone of the Nice!Nano v2 controller with 21 GPIOs (which I bought for my Hesse Bluetooth keyboard) is part of a family of at least four similar boards of differing sizes, possibly all originally from No Logo Tech. In English at least, the naming is rather confusing! The others expose even more GPIO pins (although many not on easily reached pins), and some have an RGB LED built in too. Sadly most are rather lacking in documentation outside of product listings on AliExpress and the like, but they have LiPo battery charging, and are all using the Nordic NRF52840 chip so ought to work with ZMK for use in a keyboard design.
![]() | ![]() |
| "ProMicro NRF52840" | "Nano 33 BLE NRF52840" |
![]() | ![]() |
| (Xiao-like) "SuperNRF52840" | "Super mini NRF52840" (with space) |
Tuesday, 7 October 2025
My second keyboard design: diode-free, 36-keys, Bluetooth
About three months ago I blogged about my first keyboard PCB design, a diode-free PCB for an existing 36-key ergonomic case. Since this summary of my journey into keyboard madness, I learnt how to write my own ZMK keyboard firmware, as a precursor to designing a version with Bluetooth. This time I also had to learn some basic CAD to modify the keyboard case. And here it is, the Gamma Omega "Hesse", a Bluetooth diode-free 36-key ergonomic keyboard.
![]() |
| Front & back of the "Hesse" keyboard PCB |






