What is SpaceFN and why you should give it a try
The SpaceFN concept - setting up your space key as a layer switch when held - is probably one of the most useful tweaks in the keyboard hobby. Let me explain how it works. My SpaceFN article on kbd.news made some rounds recently - quite surprisingly given the age of this concept. This piece you're reading is a condensed version of the full post. If you're left with unanswered questions, you'll most likely find the info you're looking for in the original write-up. On my imaginary top list of the most useful keyboard features, tweaks and hacks, SpaceFN would deserve a podium finish for sure. But what makes it so special? In short: SpaceFN is easy to implement, easy to learn, costs nothing, can be used with any keyboard, and can improve your productivity instantly. I will list its benefits below, but can state right at this point that the SpaceFN concept, setting up your space key as a layer switch when held, is clearly one of the most useful tweaks in the keyboard hobby....
Apr 30, 2024
The multiplexer is a pair of TI pca9555rger connected over I2C for a total of 32 pins.
That's as far as I got. I asked at the GitHub repo for a source for dev boards, no response so far. They provide schematics so in theory you could get some PCBs made in low volumes.
Hope this helps.
http://www.ti.com/lit/ds/symlink/pca9555.pdf
There's two of them, basically you have to scan them sequentially and read the state of the pins specified and put that into the matrix data structure and I think QMK will take care of the rest. This means implementing matrix.c::matrix_scan and calling the i2c code from there which stuffs that array matrix with bits related to key presses.