Write a review about the Keyboardio Model 100
This commit is contained in:
parent
051fd87fb5
commit
b10a42866f
306
content/blog/keyboardio-model100-review.rst
Normal file
306
content/blog/keyboardio-model100-review.rst
Normal file
@ -0,0 +1,306 @@
|
|||||||
|
Keyboardio’s Model 100 keyboard – a review
|
||||||
|
##########################################
|
||||||
|
|
||||||
|
:date: 2022-06-18T03:02Z
|
||||||
|
:category: blog
|
||||||
|
:tags: review,keyboard
|
||||||
|
:url: blog/keyboardio-model100-keyboard-review/
|
||||||
|
:save_as: blog/keyboardio-model100-keyboard-review/index.html
|
||||||
|
:status: published
|
||||||
|
:author: Gergely Polonkai
|
||||||
|
|
||||||
|
|
||||||
|
TL;DR: despite the fact that i almost have to re-learn typing, this thing is awesome and i think
|
||||||
|
everyone typing a decent amount of letters a day should get a split, or even a split+vertical
|
||||||
|
keyboard.
|
||||||
|
|
||||||
|
-----
|
||||||
|
|
||||||
|
I’m not a keyboard enthusiast, but i heard so much about split keyboards and `Keyboardio
|
||||||
|
<https://shop.keyboard.io>`_’s Model 01 before that i decided to back their `Model 100 on
|
||||||
|
Kickstarter <https://www.kickstarter.com/projects/keyboardio/model-100>`_ about a year ago. It’s
|
||||||
|
super expensive in my book (about 20% of my monthly salary when i ordered it) but since they
|
||||||
|
announced the project way before the KS campaign i had time to slowly put aside some money every
|
||||||
|
month. This makes it the first electronic device that i actually wanted so much (and probably
|
||||||
|
needed; ergonomics is important, as i learned the hard way coming closer to 40) that i put aside
|
||||||
|
money for it. Their hunt-and-pecking chicken in the promotion video was also pretty convincing.
|
||||||
|
|
||||||
|
We got a lot of info on what is happening during the time between backing and delivery.
|
||||||
|
Some video footage of how the keyboards are made, from production to QA, was one of them, and it
|
||||||
|
looked really awesome. Even though i only gave my money, the whole project felt more personal
|
||||||
|
this way.
|
||||||
|
|
||||||
|
They had a lot of delay in production due to various reasons (COVID and Chinese new year being the
|
||||||
|
biggest among them) but when i finally got a mail that said
|
||||||
|
|
||||||
|
your early-delivery Model 100 is due to be ready to ship out this week. I’m writing today to
|
||||||
|
confirm your shipping address. We’ll send you another email with tracking information as soon as
|
||||||
|
your keyboard ships out.
|
||||||
|
|
||||||
|
i was super excited about it and couldn’t wait for it to arrive.
|
||||||
|
|
||||||
|
Shipping was handled by FedEx; they did duty handling and delivery quick and with great care.
|
||||||
|
This post is not their review, but they surely deserve a shout-out. My package even arrived one
|
||||||
|
day before they originally promised.
|
||||||
|
|
||||||
|
And now, finally onto the review itself! Keep in mind that things below are not in order of
|
||||||
|
importance but more like in the order of how i discovered them.
|
||||||
|
|
||||||
|
The package
|
||||||
|
===========
|
||||||
|
|
||||||
|
I really don’t like unboxing videos; i just find them boring. For this keyboard i tried to make
|
||||||
|
one, but quickly dumped the idea. Then i tried to make pictures of the steps, but still no luck:
|
||||||
|
i got two photos of the early steps (opening the first box) than i gave up. So if you are here
|
||||||
|
for unboxing material, you should close the page now.
|
||||||
|
|
||||||
|
The package contained two black boxes. They look really cool, with the Keyboardio logo on them.
|
||||||
|
The smaller box contains the stands (which have a standard tripod screw, so you can technically
|
||||||
|
put your keyboard halves on camera tripods next to your desk, if that’s your game). The bigger
|
||||||
|
box contained nothing but a travelling case. It’s pretty sturdy, covered with black textile, and
|
||||||
|
with a bumpy logo. The keyboard has travelled all the way from China in that case; travelling
|
||||||
|
case redefined.
|
||||||
|
|
||||||
|
Inside the case were the two keyboard halves, a USB-C to USB-A cable, two RJ45 cables (a short one
|
||||||
|
when you use the keyboard as one piece, and a long one if you want to use it split), a key switch
|
||||||
|
puller (because if you don’t like your switches, you can switch to different switches; i’ll show
|
||||||
|
myself out), two pieces of plastic to hold the two halves together in a linear or a rooftop shape,
|
||||||
|
and a screwdriver. Because your warranty is not void if you take the keyboard apart. Because why
|
||||||
|
should it be?
|
||||||
|
|
||||||
|
Assembling the keyboard, especially in a split fashion, is not a big deal, just connect one of the
|
||||||
|
RJ45 cables to both halves, then use the USB-C cable to connect the left half to your computer,
|
||||||
|
and you are good to go.
|
||||||
|
|
||||||
|
The Look
|
||||||
|
========
|
||||||
|
|
||||||
|
This thing has got the look; it is beautiful! The folks at Keyboardio didn’t name it “heirloom
|
||||||
|
keyboard” for nothing. When i ordered it i had a green desk so i chose the walnut case, which is
|
||||||
|
a darker shade of brown. Since then i switched to a new desk i got from my brother-in-law, which is
|
||||||
|
also dark brown (although slightly darker then the keyboard’s enclosure), so i’m probably up to
|
||||||
|
painting or re-foiling my desk soon. Still, it looks good on my desk, even if it doesn’t
|
||||||
|
stand out.
|
||||||
|
|
||||||
|
My new(ish) desk has a drawer-like thingy for the keyboard, but its height is designed to hold a
|
||||||
|
traditional keyboard; for the Model 100 on its stands it’s not high enough; plus it’s about 15cm
|
||||||
|
below the desk itself which is too low for my height. On the desk i already had an XP-PEN tablet
|
||||||
|
so the Model 100 got placed next to it in a split fashion, on both sides. I had to drill two
|
||||||
|
holes in the desk for the RJ45 cable so it doesn’t take unnecessary space, but it’s a worthy
|
||||||
|
compromise.
|
||||||
|
|
||||||
|
.. figure:: {static}../images/desk-photo.png
|
||||||
|
:alt: Photo of my desk, a dark brown computer desk with a monitor stand and a separate monitor
|
||||||
|
next to it.
|
||||||
|
|
||||||
|
This is my current setup: a tablet with wings! And a messy table. And a `rubber duck
|
||||||
|
<https://en.wikipedia.org/wiki/Rubber_duck_debugging>`_. And a rubber shark for tougher
|
||||||
|
problems. And some retro-computing.
|
||||||
|
|
||||||
|
The Feel
|
||||||
|
========
|
||||||
|
|
||||||
|
With the adjustable stands it’s really comfortable. It took me a few tries, but now that it’s
|
||||||
|
done my hands never felt this good on a keyboard before. It’s worth noting that i’m typing
|
||||||
|
extensively on traditional keyboards since my early teens, so my arms developed a little different
|
||||||
|
(my radius bones are slightly longer than they should be). I didn’t even have those V-shaped,
|
||||||
|
so-called ergonomic ones, although i yearned for one. Some consequences of this are that my hands
|
||||||
|
don’t feel distorted at all when i use traditional keyboards, stuff designed to be ergonomic for
|
||||||
|
the general public might not be comfortable for me immediately, and typing on a split/ortholinear
|
||||||
|
keyboard is totally new ground for me because for me *this* is distorted (a bit).
|
||||||
|
|
||||||
|
Holding your fingers on this keyboard is slightly different from traditional ones as you don’t
|
||||||
|
have to keep them on a straight line, but the curve of the home row actually follows the curve of
|
||||||
|
your fingers. You know those little bumps on the :kbd:`F` and :kbd:`J` keys? In case you don’t
|
||||||
|
know, they are there to help you position your hands on the “home row” for touch typing (maybe the
|
||||||
|
reason they call it touch typing instead of blind typing?); you have to find them with your index
|
||||||
|
fingers, and you’re all set. Now, since you hold your hands a bit different on the Model 100,
|
||||||
|
they didn’t only add this bump to the usual :kbd:`F` / :kbd:`J` keys, they are also present on
|
||||||
|
:kbd:`A` and :kbd:`;` so you can easily position your pinkies, too. Really thoughtful design!
|
||||||
|
|
||||||
|
Typing on it after using traditional keyboards for all these years is… different, to say the
|
||||||
|
least. It took me some time to get up to *a* typing speed (ie. not hunt-and-pecking; heck, typing
|
||||||
|
my 14 characters long desktop password took 3 tries for the first time) and it was clear that it
|
||||||
|
should probably take days, if not weeks, to get up to my original speed. It’s a completely
|
||||||
|
different experience and calls for lots of learning and maybe a layout change, too. For the
|
||||||
|
record i use a Dvorak inspired layout for several years now; on this keyboard the letters are more
|
||||||
|
or less where they should be, but some symbols are not that comfortable to reach than they were on
|
||||||
|
my old one. A lot of non-letter keys are at different places: reaching for the top right for
|
||||||
|
backspace and top left for escape was an issue for a while, but it’s almost completely gone now.
|
||||||
|
It’s funny, though, that the keys arranged in this ortholinear fashion didn’t make my head spin
|
||||||
|
too much. I did reach to the side a bit sometimes, but i got lost of that habit after only two
|
||||||
|
days.
|
||||||
|
|
||||||
|
The learning process
|
||||||
|
====================
|
||||||
|
|
||||||
|
Even though the designers `suggest <https://shop.keyboard.io/pages/model100>`_ to start using
|
||||||
|
split keyboards gradually (start with 15ish minutes in the morning and increase your usage every
|
||||||
|
day) i used it almost exclusively for my first full workday. We had a short emergency at my $job
|
||||||
|
for which i used my old keyboard because of speed, but other than that i used the Model 100. What
|
||||||
|
can i say? I’m a rebel. Also, this method worked really good for me when `i switched to Dvorak
|
||||||
|
<{filename}2013-03-13-dvorak-and-me.rst>`_, so i guessed it will be fine for split keyboards, too.
|
||||||
|
|
||||||
|
Even after a day my typing speed was still far from my old one, but it got better every hour. I
|
||||||
|
still occasionally pressed Num Lock when i wanted to Backspace (Backspace is under your left
|
||||||
|
thumb on the default layout) and i often pressed Backspace when i wanted Space (Space is under
|
||||||
|
your right thumb). Enter being to the left of my right index instead of being to the right of my
|
||||||
|
right pinky was also confusing sometimes. I probably haven’t looked at my keyboard this much for,
|
||||||
|
i don’t know… 20 years? But i was slowly getting rid of hunt-and-pecking which was a win in my
|
||||||
|
book.
|
||||||
|
|
||||||
|
After more than a week the keyboard felt really good. I was already pretty close to my original
|
||||||
|
typing speed which wasn’t super fast, but decent enough to amaze some non-techie persons.
|
||||||
|
|
||||||
|
Technicalities
|
||||||
|
==============
|
||||||
|
|
||||||
|
This section is specific to `Kaleidoscope <https://kaleidoscope.readthedocs.io/>`_, the factory
|
||||||
|
firmware of the Model 100. If you want to use a different firmware (i guess you could, but don’t
|
||||||
|
ask me how), just skip ahead.
|
||||||
|
|
||||||
|
Early delivery keyboards arrived with QWERTY keycaps and a default firmware, both holding some
|
||||||
|
strange things.
|
||||||
|
|
||||||
|
Left half
|
||||||
|
---------
|
||||||
|
|
||||||
|
First, there is a :kbd:`prog` key at the top left corner. It is used by the keyboard’s boot
|
||||||
|
loader to enter programming mode (ie. firmware upgrade), but otherwise it can be used as any other
|
||||||
|
key (more on that later).
|
||||||
|
|
||||||
|
There’s also a :kbd:`led` key, which sounded strange, but who knows… after giving it a few pushes
|
||||||
|
it turned out that it was switching between different LED modes, of which there are plenty from a
|
||||||
|
rainbow wave to dull single colour backlight.
|
||||||
|
|
||||||
|
:kbd:`Esc` moved to the bottom right of the left half is also strange, but i guess there’s a
|
||||||
|
reason for that.
|
||||||
|
|
||||||
|
:kbd:`Page Up` and :kbd:`Page Down` living on the leftmost column was also a big surprise and, as
|
||||||
|
time showed, a real waste of precious keys for me as a hardly ever use those.
|
||||||
|
|
||||||
|
Right half
|
||||||
|
----------
|
||||||
|
|
||||||
|
The first surprise was that although it *does* have a logo key (with a Keyboardio butterfly on
|
||||||
|
it), it doesn’t act as one. Rather than that, it’s actually a right :kbd:`Alt`, AKA :kbd:`AltGr`
|
||||||
|
key.
|
||||||
|
|
||||||
|
On the top left there is an :kbd:`any` key. Like, a key actually labelled as ``any``. It
|
||||||
|
sends a random keystroke (showing you the power of macros).
|
||||||
|
|
||||||
|
Thumb rows
|
||||||
|
----------
|
||||||
|
|
||||||
|
Under four rows of keys (except the middle two columns which only have three keys each) are four
|
||||||
|
“thumb keys”, arranged in a way that your thumb can comfortably reach them.
|
||||||
|
|
||||||
|
On the left side, they are :kbd:`ctrl`, :kbd:`backspace`, :kbd:`cmd`, and :kbd:`shift`; on the right side they are :kbd:`shift`, :kbd:`alt`, :kbd:`space`, and :kbd:`ctrl`.
|
||||||
|
|
||||||
|
The :kbd:`cmd` key’s label is foreign to PC people but is used a lot on Macs. Turned out it’s the
|
||||||
|
:kbd:`Super` key (AKA logo, AKA Windows key).
|
||||||
|
|
||||||
|
There are also two palm keys labelled as :kbd:`fun`, which are placed so they are easy to press
|
||||||
|
with your palms, but not easy enough so that you press them all the time. By default they act a
|
||||||
|
bit like a regular notebook’s :kbd:`fn` keys, adding extra functions to most keys like media
|
||||||
|
player control, arrow keys, and mouse operations.
|
||||||
|
|
||||||
|
Layers
|
||||||
|
------
|
||||||
|
|
||||||
|
The default firmware has 5 layers: one for the basic keys (what you see printed on the keycaps), a
|
||||||
|
number pad layer, one for the extra functions (what you get by using the :kbd:`fun` keys), and two
|
||||||
|
empty ones you can use for your own dark goals (after configuring them in Chrysalys; more about
|
||||||
|
that later).
|
||||||
|
|
||||||
|
Layers don’t have a fixed order but they are stacked when you switch between them. You have a
|
||||||
|
default layer, and when you press a layer changing key another one is put on top of that. Now
|
||||||
|
when you press a key and it has a function configured, you get that function. The key can also be
|
||||||
|
transparent on that layer, so the same key’s function from the layer below (the one previously
|
||||||
|
active) will be activated. If it’s transparent on that layer, too, then the layer below that will
|
||||||
|
be taken, etc. If you hit a transparent key on the bottom layer, it acts as a blocked key. Keys
|
||||||
|
can also be configured as blocked; blocked keys don’t send anything, as if they weren’t even
|
||||||
|
there.
|
||||||
|
|
||||||
|
There are four different layer change modes:
|
||||||
|
|
||||||
|
- Layer Shift is temporary, like how the :kbd:`Shift` key works
|
||||||
|
- Locking also pushes the new layer onto the old one like shifting does, but it remains active,
|
||||||
|
like how :kbd:`Caps Lock` works
|
||||||
|
- Moving clears the whole stack and makes the target layer the default one. This is like changing
|
||||||
|
your keyboard layout in the OS
|
||||||
|
- The OneShot plugin (enabled by default) adds another method, labelled “layer shift for next
|
||||||
|
action” in Chrysalis. If you press such a key once, it will act like a layer lock for the next
|
||||||
|
single keypress. If you press it twice, it will act as a layer lock, until the OneShot effect
|
||||||
|
is cancelled (with the :kbd:`Escape` key, or with a preconfigured “OneShot cancel” key).
|
||||||
|
Pressing it once more will also disable the OneShot effect.
|
||||||
|
|
||||||
|
Mouse functions
|
||||||
|
---------------
|
||||||
|
|
||||||
|
The keyboard itself doesn’t just advertise itself as a keyboard, but a fully compliant HID, Human
|
||||||
|
Interface Device. It can also act as a mouse, except instead of moving around a piece of plastic
|
||||||
|
on your desk, you press keys. I put away my actual mouse for about 30 minutes and made myself
|
||||||
|
using the mouse functions exclusively, and i must say it’s not terrible. For the record, i don’t
|
||||||
|
use the mouse too much; mostly for gaming only. Well, for gaming you probably won’t use a
|
||||||
|
keyboard based mouse (especially not for mouse-heavy shooters), but for my desktop use case it’s
|
||||||
|
totally enough.
|
||||||
|
|
||||||
|
The most useful feature here (for me) is having a scroll wheel integrated into my keyboard. This
|
||||||
|
way i don’t have to reach for the mouse when all i want to do is scroll down a bit (for one-page
|
||||||
|
scrolling there’s still :kbd:`Space`).
|
||||||
|
|
||||||
|
Mouse movement is… not ideal. It starts very slowly and gradually increases the pointer speed to
|
||||||
|
so fast you won’t be able to follow it with your eyes. There’s also mouse warping for moving to
|
||||||
|
the different corners of your screen, but it doesn’t work well on my multi-monitor Sway setup; i
|
||||||
|
haven’t tried it on other OSes or desktop environments.
|
||||||
|
|
||||||
|
LEDs
|
||||||
|
----
|
||||||
|
|
||||||
|
I experimented with the LEDs, too. Every key has it’s own RGB LED underneath and all of them can
|
||||||
|
be customised to be lit in different colours. The firmware has a lot of modes from your average
|
||||||
|
single-colour backlight through moving rainbow gradients to more exotic ones. My favourite is
|
||||||
|
called Stalker (we agreed with the authors that it’s a pretty bad name) with the blazing trail
|
||||||
|
effect: whenever you press a key it lights up in white, then fades through red to turned off. It
|
||||||
|
looks really cool, especially since i have accumulated some actual typing speed so the LEDs don’t
|
||||||
|
have time to turn off before i press the same key again. Not the ideal one for typing passwords
|
||||||
|
in public, though. Also, if you use the ColorMap mode, you can configure a different LED layout
|
||||||
|
for any or all of your layers which can be super helpful in some cases. Unfortunately the LED
|
||||||
|
mode is global, so you can’t have different modes for different layers, unless you write a plugin
|
||||||
|
(although you can get close enough with colormap).
|
||||||
|
|
||||||
|
The Software
|
||||||
|
============
|
||||||
|
|
||||||
|
`Chrysalis <https://github.com/keyboardio/Chrysalis>`_ is a “desktop application” to configure
|
||||||
|
your Kaleidoscope based keyboard on the fly. It’s a really good one; my only problem with it is
|
||||||
|
that it’s based on Electron (ie. not a real desktop app, just a fancy web page running in a
|
||||||
|
dedicated browser), although i do understand the choice: iterating over new features is really
|
||||||
|
straightforward and fast this way without risking that one platform falls behind another.
|
||||||
|
|
||||||
|
I had some trouble making it run on my desktop (i’m using `Sway <https://swaywm.org/>`_, a Wayland
|
||||||
|
based window manager; it’s not your everyday Linux setup unless you’re a geek like me), and there
|
||||||
|
were some permission issues, too; but it all worked out fast thanks to their developer, `@algernon
|
||||||
|
<https://asylum.madhouse-project.org/about/>`_’s help (one of the software’s developers, and with
|
||||||
|
whom we share first names!)
|
||||||
|
|
||||||
|
Chrysalis has just the right amount of bells and whistles and it can fully customise every single
|
||||||
|
key (given you use the official firmware, which you don’t have to, but i really think you should,
|
||||||
|
at least until you get used to it). There are some things to grasp before you start using it
|
||||||
|
(layers being the one of them), but after that one can probably use it without much of a thought.
|
||||||
|
|
||||||
|
Closing thoughts
|
||||||
|
================
|
||||||
|
|
||||||
|
I originally wanted to write about my final setup (as of now) but it would have doubled the length
|
||||||
|
of this post, so it will have its own.
|
||||||
|
|
||||||
|
All in all, the Model 100 is a really good keyboard. I could probably have spent this money
|
||||||
|
better given that i’m a family man with kids and a house that constantly needs fixing, but i’m
|
||||||
|
happy i didn’t. If you type a lot then you should probably treat your hands with a split and/or
|
||||||
|
ortholinear keyboard. It gives a fantastic experience.
|
||||||
|
|
||||||
|
Also, given the whole thing is open source, and all the parts you need are available to buy you
|
||||||
|
can even build one at home, but if you have the money you should definitely buy it. If for
|
||||||
|
nothing else, then as a heirloom.
|
BIN
content/images/desk-photo.png
Normal file
BIN
content/images/desk-photo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.3 MiB |
@ -57,8 +57,11 @@ a:link, a:visited {
|
|||||||
|
|
||||||
/* Paragraphs */
|
/* Paragraphs */
|
||||||
div.line-block,
|
div.line-block,
|
||||||
p { margin-top: 1em;
|
p {
|
||||||
margin-bottom: 1em;}
|
margin-top: 1em;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
strong, b {font-weight: bold;}
|
strong, b {font-weight: bold;}
|
||||||
em, i {font-style: italic;}
|
em, i {font-style: italic;}
|
||||||
@ -145,12 +148,21 @@ img.left, figure.left, div.figure.align-left {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* .rst support */
|
/* .rst support */
|
||||||
|
|
||||||
|
div.figure {
|
||||||
|
width: 800px;
|
||||||
|
background-color: #ddd;
|
||||||
|
margin: 0 auto 1em -20px;
|
||||||
|
}
|
||||||
|
|
||||||
div.figure img, figure img { /* to fill figure exactly */
|
div.figure img, figure img { /* to fill figure exactly */
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
div.figure p.caption, figure p.caption { /* margin provided by figure */
|
div.figure p.caption, figure p.caption { /* margin provided by figure */
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
|
font-size: 80%;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -553,3 +565,13 @@ li:last-child .hentry, #content > .hentry {border: 0; margin: 0;}
|
|||||||
tt.literal {
|
tt.literal {
|
||||||
background-color: #eeeeee;
|
background-color: #eeeeee;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
kbd {
|
||||||
|
border: 1px solid black;
|
||||||
|
padding: 2px;
|
||||||
|
display: inline-block;
|
||||||
|
border-radius: 4px;
|
||||||
|
min-width: 1em;
|
||||||
|
text-align: center;
|
||||||
|
background-color: #ddd;
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user