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 way to think about animations is that you have a frame buffer and that animations can manipulate it. Animations can be layered on top of each other so that you can have multiple animations running at the same time. The easiest way to handle state is to use the pixel (each rgb led as part of the frame) buffer and decide what to do based on the color. Using KLL 0.5 it's possible to time animations down to the ms based on other events. This means any key press, release or key event can be the start of an animation. KLL itself can handle things like "pressing X number of times" but it might be easier to build custom capabilities in C or designing a pfunc (pixel function, also in C) that gets applied to a pixel as part of the animation. These are more efficient, but requires C knowledge. I'll make sure there's a tutorial on all the different aspects of designing simple, intermediate and advanced animations.
One fun thing, is that all of these animation will also work on keyboards such as the Whitefox (just not RGB).