类型: IC
作者:
Gondolindrim
发布时间: 2020-06-18 16:56:06
更新时间:
2020-11-20 08:14:26
原链接:
https://geekhack.org/index.php?topic=107023.0
Sagittarius, a gasket-mount optimized ergonomic layout
custom keyboard
“Each soul a single universe
Each mind bears the
wages of their sins
Each person carries the blessing
of existence”
Hello there guys, and welcome to the interest check
of Sagittarius!
For you guys that dont know me, Im a
brazilian mech enthusiast and engineer, best known for my
open-source PCBs such as SharkPCB, ArcticPCB, Doddle60,
Austin and much more. All of those released under my Acheron
Project (see
the documentation of the AcheronProject). Ive been an active member of the community for some
time, and today I bring you my greatest contribution so far:
Sagittarius!
This is an ergonomic layout that I like to
call optimized ergonomic, because we took ourselves pretty
far with the design and project of this layout. It was
designed using top-level research literature in psychology
and medicine papers that define mechanical models for the
hands and fingers, and optimization algorithms that are
supposed to minimize wrist and finger joint strain while
using the keyboard. This while delivering a layout
compatible with our common base keycap kits with rich
features like encoders and a gasket-mount case designed by
Upas at Cannonkeys!
1. The motivation
Its not news to anyone that the current staggered
layout we have is not ideal for the anatomy of the hands.
According to specialists (see [1]), when long work and study
hours are concerned, the current default layout causes
lesions including, but not limited to :
-
Wrist and finger joints degradation caused by the rapid movement the fingers make while applying pressure;
-
Forearm muscle injuries due to the sometimes intense movement that the hands have to perform to cover the entire keyboard, specially on the modifier keys;
-
Tendinitis and in some rare cases even tendon tearing due to the stretching the wrist and hands have to make to access important keys such as escape, backspace and enter;
-
Spinal injuries due to posture: since the user must actively move their hands all over the keyboard, they tend to not sit straight;
-
Shoulder and neck damage due to the angle of the arms when using the keyboard, which makes the user lean front and transfer their body weight to the shoulders and elbows. Since the keyboard is smaller than the average human shoulder distance, the hands have to approximate to one another; the arms then make an angle that has to be thoroughly adjusted to match the keys placement;
To remedy this, we as a community have come up with four solutions: -
To solve the difficulty of reaching certain modifier keys, we modify our layouts by deploying split shifts, backspace, wider spacebars to make the keyboard feel more comfortable to the user whilst still delivering a default typing experience that wont make the user need to re-learn the layout;
-
To adress the shoulder/elbow curvature there is the most prominent ergonomic layout to date in our community –the Alice layout, from which sprouted numerous other keyboards; the main disadvantage being the small time it takes you to adjust to the layout;
-
To adress the issue of finger joints some people use ortho layouts, which conform each finger to a particular column and makes it more comfortable to use;
-
To deal with the shoulder distancing, some people use split keyboards that allow the hands to rest in a more natural position instead of forcing the arms inwards towards the body
The issue with the Alice layout is that it solves only a portion of the issues, by giving the alphanumeric keys a twelve-degree angle that adapts to the angle of the wrists. This solves the last two issues and the third one partially, but the first and second one are still there: some important keys – like modifiers and numbers – are still out of reach. As a result, the user has to stretch their hand and wrist unnecessarily. For example, you still have to lift your wrist to use the numbers, or press backspace with your pinky by stretching your hand and stressing your tendon. The ortho layout option also is not 100% efficient because it does not take into account the natural curvature of the hands and the fingers in such a way that you have to force joints to make the fingers conform to a particular column.
Now, me and a great friend of mine, Tom, saw these issues as an opportunity to bring to the community our own unique take on this matter and develop an entirely new ergo layout. And, approximately six months ago, we started concocting the awesome idea of bringing a true ergonomic layout to this community. -
2. The Sagittarius Layout*
Tom was a med neurosurgery student and had connections with some of the top med researchers of our country. So we reached out to some peers in physiotherapy and orthopedics departments to give us some direction as to what are the state-of-the-art techniques in rehabilitation and ergonomics.
We eventually fell into an amazing and deep bunny hole of a field in psychology and anatomy called Nonconventional Human-Machine Interaction and studied some of what it had to give us.
The main references we used were [2], a PhD thesis that studies a thorough mathematical development of the human hand movement; [3], [4] and [5] develop human hand models to predict torque and forces on joints; [5] defines a way of modelling the hand movements from a mechanical model with special emphasis on rehabilitation models.
From these, we used some techniques in [6] to define nonlinear numerical optimization algorithms and thats where the eureka! comes in. The optimization parameters of the hand can be defined as strains and forces, and thats what we did: Tom had some measurements from his graduate thesis – where he worked in the rehabilitation of hand bone and joints injuries – and we could use some real-life data to define optimal parameters for hand movement, given from people that suffer first hand (pun intended) from hand joint and bone injuries.
So not only we had the hand modelling ready, we also had real-life measurements that we could use to fine tune optimization parameters to make our results more credible and attuned to reality.
The idea here is simple. If we define a cartesian axis on the escape key, each key can be understood as a (x,y) pair and we can define a distance function. By integrating this distance function to respect with the wrist angle, as a function of the position and speed and deviation from wrist normal position, we establish one optimization parameter. The second one being the stretching of the hands when you need to press a key – we defined a highly nonlinear cost function that would rise greatly when the hand needed to stretch above 90% of its size when completely open. Finally, we can use the mechanical models of the hand to determine the torque and forces that actuate on joints and tendons, making the third optimization parameter.
The end optimization function then is taken by exhaustive iteration of the optimization parameters when sorting the layout; some keys are nonlinearly placed. In some cases where results were inconclusive we had to use brute-force optimization methods like machine learning and evolutionary algorithms to determine the best layout.
Then we used the real-life measurements to determine which parameters fit the real-world results and we could define which best layout yielded the most anatomic profile.
I used Karash-Kun-Tucker [7] algorithms to solve the optimization problem. Since the optimization functions were discontinuous and sometimes undifferentiable in some spots, conventional linear optimization failed to yield the results we wanted. The method is thoroughly developed in [8]. The empirical parameters were fitted using nonlinear least squares methods and the optimizing equations were developed in Python programming language with SciPy minimizing libraries. The results were then translated into a keyboard layout and a PCB was designed.
Of course, setting optimization parameters, cost functions and weights is not always an exact science. Also, due to the base kit compromise we made, not every iteration yielded a feasible layout. The layout went through 17 different iterations before taking this final form, when we were happy with the results.
To make a long story short, we developed a unique and mathematically optimized layout that diminished shoulder, finger and wrist strain while using a mechanical keyboard; this is why we called this layout an optimized ergonomic layout.
We came up with this layout:
Which might look strange at a first glance, but bare with me for a second. As you guys can see, each single key has a particular angle; the keyboard is composed of two key clusters that are distanced so as to match the average shoulder distance and angle of the wrists while typing. Also the key angles and distances are fine-tuned so that the user can reach any key in the keyboard without needing to lift the wrists from their rest.
The keyboard also has a neat feature that the left cluster has a slightly sharper angle; that is because in normal typing the left hand generally rests while the right one moves more due to the shift, enter and backspace keys, which are all on the right side.
As an ode to yutskis amazing contribution – the Alice layout – we added a key cluster on the top left; each key supports rotary encoders for those who like fancy features.
The Sagittarius name came as an inside joke between me and Tom that the Alice has no arrow keys and that accessing the arrows is not intuitive on that layout; so we added the keys on the bottom right as a layout option, resembling the centaur arrows. And, of course, Tom himself was a Sagittarius!
Also we added your everyday options – split backspace, split right shift, stepped caps – and, to appeal to our european fellows, Sagittarius also supports an ISO version!
Of course, in order for the layout to fit the usual key sizes, we had to make some concessions on the true ergonomy. First, the spacebars. Ideally a curved and lengthy spacebar is needed, but I doubt you can get a curved spacebar with your preferred GMK set. Also some keys had to be readjusted or moved so that a 2.25 option was available. Finally, I wanted the right key cluster to be a tad bit more angled but I couldnt do it without compromising the ISO layout.
The PCB will of course feature all features a
grown-up PCB has:
- USBC connector
- ESD protection on USD data lines;
- Independant inrush and ESD filtering on USB power lines;
- MCU power isolation and filtering, making the PCB more reliable;
- Sweet RGB lighting in the form of the Sagittarius constellation;
- Newer ARM MCU processor;
- VIA compatibility;
- Each one of the top left keys are compatible with rotary encoders; you can use one, two or even all four of them at the same time;
-
Relief cuts for the flex;
Though I say so myself, the routing of the PCB is beautiful and if by far the most complex project I have ever worked on.
The case was designed by none other than Upas, the man who brought us Satisfaction75, Brutal60 and Savage65; it features a gasket mounted plate, a nice slick outer look and . The GB will be handled by Cannonkeys, a known big vendor in the community.
5. About Tom
Mid-way through
the development of our layout and the nerdgasmic reunions we
had to discuss optimization algorithms, we lost Tom to
depression. As an aggravating factor, his family was always
struggling with money and with funeral costs they went
outright bankrupt; his little brother almost dropped out of
college to work and help the family out. We are facing a big
economic crisis in Brazil and his father is unemployed.
I
was absolutely not letting that situation be Toms legacy,
and I am going to make sure his brother sees through
college. So I took the next month, finished the calculations
and the layout optimization and, mid-way through the design
of the PCB, I sent a desperate cry to Upas at Cannonkeys to
help me run this keyboard and help Toms family. Upas is
currently designing a case for this layout and we are
planning to run this as a GB. Everything I earn from this
will go towards Toms family. They are in deep debt and I am
helping them as I can, but I am just one more broke student.
Upas agreed to help by taking a lesser vendor commission.
EDIT:
case design was finished and we took the feedback. The new
case design should be here any moment as the new prototypes
were already ordered
I did consult with Toms family for
this and every single step and information I am disclosing
was not taken without their consent. That includes an
excerpt from a poem Tom wrote in grad school, which talked
about grief and despair.
Tom and I were always huge
advocates of free information, so after the GB ends I will
open-source the PCB and the layout so that the community can
experiment on it – it also wouldnt be a typical PCB of mine
if it weren’t open source now, would it? Since we used
closed measurements for the optimization algorithms,
however, I cant disclose the programs I developed nor the
exact method and routines I programmed because those are
currently being used to write a paper yet to be
published.
6. What we need feedback on
Having given my reasoning and the design procedure, I
need you guys to give me me feedback on:
The overall
idea of ergonomy optimization. I know this is not a big
thing in the community but I have heard many cases of peers
amongst us that are suffering with hand and arm injuries
from keyboard usage;
The layout keyset compatibility.
After optimization, the layout was adapted so that it could
fit into the usual base kit of keycap sets – who doesn’t
hate having to buy a 40 dollar kit just so you can use your
favourite layout? However, I am not sure if you guys are
going to like the choices that were made.
Aesthetics:
of course this is a hobby based on looks. After Toms passing
I devised a logo and used a piece of a poem of his, but I
dont know if its too deep or sentimental.
7. Acknowledgements
Of course, Tom. I hope he is in a better place now
and his family recovers from their loss.
Upas from
cannonkeys, who in a heartbeat agreed to make this a reality
and help me do this. I am simply humbled by how this guy
helped me in making this a reality. I sleep better because
of you.
MrKeebs, always a huge supporter of my designs,
even paying for the early prototypes of the first Acheron
Project PCBs.
Whoever was kind enough to read this IC
to here and give thoughts. Thank you for your time and
patience.
8. Layouts test sheets
Check out these files if you want to try out the
optimized ergonomic Sagittaqrius layout for yourself! You
can print them, cut and assemble the layout.
https://drive.google.com/drive/folders/1hp7NIgQ7yLNXQOCz2PxROp85z_ob5-L6?usp=sharing
9. References
[1] Pascarelli,
M.D. and Quilter, Deborah.
Repetitive Strain Injury: A Computer User’s
Guide.
Wiley Books, 1994.
[2] Stillfried, Georg.
Kinematic modelling of the human hand for
robotics. Doctorate Thesis, Technischen Universität München.
[3]
Peña-Pitarch et al.
Virtual human hand: model and kinematics. Computer Methods in Biomechanics and Biomedical
Engineering, vol.17, 2014.
[4] Nierop et al.
A natural human hand model. Visual
Comput, 2008, pp. 3144.
[5] Casolo, Frederico; Lorenzi,
Vittorio.
Finger Mathematical Modeling and Rehabilitation. Advances in the Biomechanics of the Hand and Wrist, pp
197-223.
[6] Mossar, Rahman.
Mathematical Modeling and Trajectory Planning of Hand
Finger Movements. 2014 First International Conference on Systems
Informatics, Modelling and Simulation, 2014.
[7]
Karash-Tun-Tucker nichtlinearen Optimierung.
https://de.wikipedia.org/wiki/Karush-Kuhn-Tucker-Bedingungen, accessed in march 23, 2020.
10. Updates
-
20 Jun 2020: Added printable layout test sheets.
-
26 Jun 2020: Case revamp in progress. We took the feedback and are trying to harmonize the case with the layout.
-
14 Aug 2020: New case design finished and new prototypes ordered! We should see some pictures soon.
-
5 Nov 2020: GB dates announced
-
11. Case redesign*
We heard your feedback and re-designed the case! It got curvier, chonkier and MORE AWESOME:
-
12. GB announcement*
After yesterday’s Minterly stream you guys were able to see the new iteration of the case in action with the glorious RGB constellation!
Stream link: https://www.twitch.tv/videos/792335918 -
Dates*
The Sagittarius keyboard Group Buy will start in Sagittarius season, of course! Beggining in november 21 until november 27 at 11:59 PM EST. -
Prices and proxies*
The standard kit contains: 1x 6063 aluminum board top
1x 6063 aluminum board bottom
1x Brass weight
1x Brass plate
PCB, JST cable, USB daughterboard
-
Mounting Hardware (screws, poron gasket strips and bumpons)
-
Microfiber cloth and padded zip case with foam
And the extras are: PCB + JST cable + daughterboard kit
Gasket set
FR4 plate
-
Brass plate
Each proxy will region lock their pages and open the GB page at a different time. -
(NA) Cannonkeys - 175 units (opens nov 21st 11AM EST)*
Prices: Standard kit: 485 USD
Extra PCB kit: 55 USD
Extra gasket set: 4 USD
Extra FR4 plate: 30 USD
Extra brass plate: 55 USD
-
(Europe) Prototypist.net - 50 units*
Prices TBD -
(OC) Dailyclack - 50 units*
Prices TBD -
(AS) ilumkb - 75 units*
Prices TBD -
Colors*
Top / Bottom
Navy / Silver (same colors as the prototype Taeha built but with the revised case of course)
Black / Red
Gray / Lilac
E-white / Gold -
PCB details*
VIA, QMK, USBC DB, RGB, and more acronyms I can’t remember
Open-source
Curvy and brazilian (just like me) -
Thank you guys for supporting me and Tom! I will add more information ASAP!*