The most common misconception I see about QMK keyboards (especially keyboards which stray far from the traditional form, like in OP's) is about small keyboards.<p>The most common kind of small keyboards are just like laptop keyboards, and try and fit a keyboard into a smaller space (and the omitted keys get relegated to being behind Fn key). These tend to retain the impractically big spacebar of a typical keyboard, out of familiarity.<p>Whereas, many non-traditional keyboards ditch the big spacebar, and instead give the thumbs two or three keys to use each. This allows bringing the full functionality of the keyboard within easy reach of the hands on home row (similar to how Vimmers would rather use hjkl than the cursor keys). It also allows reducing usage of the pinky fingers.<p>I've seen OP post some neat code which works with QMK firmware. (The orbital mouse looks interesting). But stuff like "Caps Word", etc. are also neat.
Gotta give a shoutout to kanata[1] which I have used daily for years at this point after giving up on QMK-powered keyboards.<p>QMK itself is great, but I was never able to find a non-columnar split ISO keyboard to use it with. Eventually I reluctantly settled on the Logitech K860[2] and I'm now happily using my favourite features from QMK with kanata at the software level.<p>[1]: <a href="https://github.com/jtroo/kanata">https://github.com/jtroo/kanata</a><p>[2]: If I'm behind the times and there is now a QMK-compatible keyboard that looks like this, please let me know!
If you're interested in QMK, you might want to give ZMK a shot as well. The big differences are that it's wireless-first (cognizant of power consumption, supports various wireless modes, etc), it's built around ARM (doesn't support Atmel), and is a much newer codebase.<p>But I have to give it to QMK as well, they have been reworking / refactoring a major wart in how you config keyboards, with the move to info.json and away from custom C and make files.
Personally I have a Keychron V6, witch is just ok for it's price, but my complaint is that QMK have enough power to simply read a text file on a small flash memory even a raw memory flashed via `dd` wrapped by a simple script and made the customization much more comfy, without the need of recompile the fw, downloading ~1.5Gb of stuff simply mapping a physical key or key combination to a set of keycodes.<p>Second RANT to ALL keyboards OEMs: please add a damn service to print easily custom keycaps, a small example, being from the EU writing in few languages every day I've chosen the EurKey layout, witch actually does not exists on sales in some pre-build keycaps set. I have mapped differently some keys, MOST of them I know from memory, but sometimes being able to see the key is a very nice to have thing. Ok, keycaps normally are not really printed, meaning it's not cheap to produce custom ones, but if you damn ask 300+€ for a keyboard and someone buy it I'm pretty sure a custom keycap set does not change the game much.<p>Third RANT please STOP making cherry, OSA etc profiles. Very old IBM keyboards have solved the height issue with a simple parabolic support, there is NO DAMN REASON to make flat support and different height keycaps making limited room to move them on the keyboard.
I have a newbie question around Keyboard firmware: I built a simple Macro-Pad based on the RP2040. I want to use it under macOS for application-specific functionality. However, I cannot find a firmware that allows me to change/define Macros during runtime. I find it very cumbersome to always compile and flash a new firmware, whenever I want to change a simple Macro.<p>What am I missing?
When I started getting some RSI from coding all day, I looked for solutions. I ultimately settled on a split keyboard (separating the left and right hand more, less cramped in front at odd wrist angles) with a bunch of thumb keys (to act as modifiers, much easier to use than pinkie based mods) and a folding tripod stand for each so i could "tent" each keyboard out at an angle that matched my natural resting hand posture. That and a wrist pad completely resolved any RSI/tension I had.<p>With QMK, I was able to setup a nice set of keyboard layers for regular use, gaming, and multimedia control. For any keyboard power users, it's a dream! My hands are always in home row and everything is a simple finger movement/chord away.<p>Link to the build kit I used: <a href="https://splitkb.com/products/kyria-rev3-pcb-kit" rel="nofollow">https://splitkb.com/products/kyria-rev3-pcb-kit</a>
I feel the mk community died during the pandemic and all the commercialization that happened. People just stole stuff community built on goodwill. At least I was turned off by it and stop caring.
I considered using something like that, but my concern that it is going to ruin my muscle memory for the situations when I cannot use it - eg locked down environments at work. So I stick to whatever can be done with standard OS capabilities.
I feel like with keyboards and QMK there is only so much you can do before its probably worth your time to learn some steno instead unless you really need to repeat keys a lot. There is a bit of a learning curve, but its not much harder than messing with all the layers and layouts. The main benefit is that its a lot easier to make a new dictionary that adds more functionality without having to modify the keyboard letters at all.<p>Basically, you pick a cluster of letters to act as the modifier on one hand, and then a pattern you want to enter for the command on the other hand. For example, all my symbol commands start with ASDR + a pattern from UIOJKL. So like ASDR+UJ, ASDR+UIO ASDR+UJOL etc. If you just look at the shape of the letters that you make when you press them it makes more sense. My movement commands start with QWER or ASDF (for selection) and then (you guesssed it) UIOJKL. So say you happen to install a new Emacs package and want to make chords for all the commands. I make AWD + and then (you guesssed it) UIOJKL. And then, I don't have to type the command again.<p>You can also type individual letters (and should practice until you can hit 30-40WPM) and don't need to memorize that many words if you don't want to. I actually stopped after like 200 or so because I don't feel the need to.
I use Oryx by ZSA which is built on top of QMK, but not with all the features. It is great still though.<p>I use a lot of MO keys on my keyboard. Too many accidental layer-locking with TT and OSL. So I would love it if/when ZSA adds the QMK "layer lock" feature to Oryx. Currently, I use a layer lock intermediate layer. But that is one extra key press and finger travel.
Caps Word: Nice idea, something I might go implement with AHK.<p>Orbital Mouse: This reminds me of Logo turtle graphics.<p>Word selection: Using Ctrl+(Shift+)Left/Right, this doesn’t work at the edge of a word, or only on one side. You need to be able to look at the characters to implement it fully. Editors that don’t support “select word” at both word boundaries always frustrate me.
This is surprising to me <a href="https://getreuer.info/posts/keyboards/non-english/index.html#unicode-input" rel="nofollow">https://getreuer.info/posts/keyboards/non-english/index.html...</a><p>I wonder why a better solution hasn't been implemented in QMK. Is it a technical limitation?
I am quite in love with the touchpads on my Steam Deck. Has anyone here seen a keyboard that incorporates such devices? (1.5” square haptic feedback pads, one under each thumb.)