← Back to context

Comment by KolenCh

7 hours ago

Interesting. I worry about its ergonomics though as RSI might develops over time after long term usage of that design.

I've been designing my own one-handed keyboard for 3 years. My main problem is that both of my wrist suffers from RSI and either wrist can ocassionally acts up with different levels of pain. (I also have shoulder problem.) They can become practically disabled temporarily for a few weeks, or just quite painful for me to avoid using it. So my desiderata are a bit different from permanently one-handed people.

Interestingly my right wrist is acting up in the last couple weeks so I've been going through a iterative redesign phase recently. I probably will write up a blog post in the future when I have the final design, I'm going through it briefly below:

Desiderata: (first three are directly from the temporarily and random disabled hand criteria)

- primary used for two hands - each hand should be able to single-handedly control the computer - skill transfer from two hand to one hand: since one hand use is oacassional, retraining time should be minimal - based on the research in http://www.tandfonline.com/doi/abs/10.1207/s15327051hci1101_... which eventually becomes a producten https://matias.ca/halfkeyboard/ , the concept of a mirror key becomes a requirement: with the hold of a mirror key, the key at the mirror image position is active. An implementation detail is that the mirror key is a dual function key: on tap it is space, on hold it is mirror. I've implemented other possibility but find that the design in this research is better than others I come up with. - symmetric keyboard would facilitate this, where many split keyboards already is. - I must be able to buy them off the shelf. I do not have the skills to design it from scratch, nor do I afford to put more strain to my hand to assemble it from parts. - ergonomic must be one the of the primary goal of the keyboard, to minimize RSI. Speed is not important at all for example. - from my empircal experience, split keyboard, espeicially true split keyboard would encourage a better wrist and shoulder ergonomics. Hence I require split keyboards.

Based on these criteria, I bought ZSA Moonlander (QMK based) personally and Kinesis Advantage 360 Pro (ZMK based) for work.

The mirror key based design is currently at

    - Moonlander https://configure.zsa.io/moonlander/layouts/QwA3z/latest/0
    - Adv360 Pro: https://github.com/ickc/Adv360-Pro-ZMK/tree/dev

The key concept are that the mirror key can be implemented as a layer, and shift also functionally acts like a mirror. Thumb cluster are then dual function, where on hold a key could be the mirror key (via layer), another key could be the shift key. And since mirror+shift is needed, you either hold both (which is a bit less pleasant for the thumb), or have another layer serves as the shift-mirror key. Over there, every key is implemented as holding shift+key at mirrored position.

The ZSA training site is useful to iterate this design process: after each iteration I'd train per single hand and see if it works. For example in my earlier design I mainly focused on testing single left hand use and later found it doesn't quite work for single right hand.

Finally, macOS sticky modifier is used to hold modifier with a single hand. I.e. Ctrl+Opt+A becomes Ctrl+Opt, release, A. This is because OSM in QMK cannot handles one-shot of multiple modifiers well. Without doing fancy thing, you need to do Ctrl, release, Opt, release, A.

Same design working across Moonlander and Adv360 is important. Layout differences is not that much thankfully, but firmware difference can be a pain.

Lastly, I recently bought a Silakka54 for the ocassions where the setup hassle of either is too high. Basically either lap use or going to a meeting. I think my current layout design is adaptable to it but I'll see.