It all started back in 2005, when I wanted to work with a really ergonomic keyboard, but I was not ready to order an expensive keyboard from abroad. I decided to develop the keyboard myself, because what is easier, buy buttons, take a controller from any cheap keyboard, and just connect the buttons in the same way as it is done in this keyboard. At that time, I really liked the
Kinesis Advantage keyboard, almost ideal, but I thought that it would be worthwhile to start manufacturing with a flat keyboard, like the
Maltron Flat .
')
Keyboard Maltron FlatI was then able to type blindly, learned through the
Stamina typing
tutor . Before that I tried to learn in Solo, but he got me so much that I didn’t finish my studies, did all the exercises, but didn’t print blindly. But at Stamina, learning was easy, and when the print speed reached 200 characters per minute, I was able to start working without looking at the keyboard. I learned to print both Russian and English text right away, took turns doing the exercises, and because of this I could immediately begin to work fully using the blind method. I rearranged the buttons on my keyboard, thereby troll my colleagues, it was interesting to even invent different inscriptions on the keyboard, because the caps of the buttons are different on different rows, so I had to rearrange them only to my own row, and it was desirable not to touch fj, which had serifs (and they are important in blind typing so that you can put your hands in the starting position of the seal without looking).
Keyboard simulator StaminaBefore doing anything, I found one Moscow company in which I bought
Cherry MX Black buttons with a margin, and a programmable keyboard for
KBM-105 trading terminals for experiments (index 105 is the number of buttons, 15x7 matrix). Having drawn the layout of the buttons, I began to think about how I could make a housing at home. From the materials at hand he collected various designs, which are now embarrassing to show, in general, nothing worked out, it was both crooked and shaky. Work on the manufacture of the case has stalled, but on the programmable KBM-105 began to experiment with layouts.
KBM-105 programmable keyboardAt that time, the very unusual
NSK 535 keyboard was made, everything in it was revolutionary, and an alphabetic layout, and shifty on the thumbs. Looking at such a miracle, I decided to even try to type it with such ciphers, but it seemed very revolutionary, and returned the ciphers back to the little fingers, the good thing is that you can quickly flash the KBM-105 keyboard, you can change the button layout several times a day.
NSK 535 R KeyboardI worked on this programmable keyboard at home for several years, while at work there was quite a standard keyboard, there were no problems with working on two completely different keyboards, only my work was much nicer.
For quick mastering of new layouts on the programmable keyboard, I even wrote an online keyboard simulator
Klavarog (
http://klava.org/ ), so that you can work from any computer connected to the Internet, without installing any programs, now everyone has done it, and while online simulators, if they were, it was only in Flash, and they did not work in Linux with Russian letters. At first it was a very simple simulator, there was not even a hint about the keys pressed, just a picture of the keyboard. Although still it remains the simplest simulator, while very effective, because it was done for himself. Beginners are offered a mode that allows them to master the arrangement of all the letters literally in a day, no need to spend a week or two on passing lessons, which add one button to the study, as is done in almost all simulators.
Keyboard simulator KlavarogAt some point in time, I decided that I would develop a new keyboard, and the project would be open. I created the
Wiki site
http://kbd.klava.org/ , where I began to collect information about different keyboards, and began to look for any information on keyboard development, because my keyboard already needed to do my controller, the standard one no longer fit. It turned out that I did not know anything about the manufacture of keyboards.
There was also the fact that I left the office and began working at home, and even on a laptop, the matrix programmable keyboard was used less and less. Over time, the heat has already disappeared, the usual worries and affairs overshadowed the development of the keyboard. But the idea was too intrusive, and I began to slowly think about how you can remake the keyboard in a laptop, because it was impossible to physically redo it, so software was used. First, I moved the cursor keys to the main alphabetic block, if you hold down AltGr (right Alt), then some letters became arrows, at first they were VIM's hjkl buttons, then I made a more familiar and convenient
ijkl
, so that when AltGr was pressed, the arrows as if they themselves jump under the fingers. Then I placed the Ctrl key to the left of the spacebar, shifting Alt to the left by one key, this turned out to be a very
good solution . I even learned how to work in Emacs under this case, it turns out that on the ancient keyboards
Ctrl was located on the site of the modern Caps Lock, it’s clear why I didn’t like this editor before, this is because of the inconvenient location of Ctrl. It is necessary to take into account, this all concerns only blind typing, when typing with two fingers, the key layout does not matter much, it’s just a matter of habit.
Modified Laptop Keyboard LayoutAt one time it turned out that there was no work, and I decided to change the hated QWERTY layout (how my little fingers were hurting from it when I was learning to touch typing) to a more ergonomic
Dvorak , and with the help of my simulator I began to study it. Just at that time, I made a special mode in Klavarog, in which it is proposed to type one short word many times in a row, at first slowly, then quickly, driving a new layout into my memory, very effectively. I had been busy for about a week, things were going tight, the speed was growing very slowly, while somehow I forgot how to work in QWERTY, others didn’t have such a problem, but I was scared, suddenly I would have to do something urgent, but I forgot how to type , but in Dvorak not yet learned. And at this moment of timelessness, my old computer BK-0010/01, which had the
JCUKEN phonetic layout, is in my eye, in which the Latin letters are located in the same place as the Russians with similar sound in the standard YTsUKEN layout. Nostalgia for the days of BC so overwhelmed that I decided to make this layout myself, and try to study it. It was not possible to make one-on-one, some frequently encountered letters were not very well located, and I ended up changing
it quite a
lot , and I have good reasons for rearranging each key. But in general, it still remained phonetic, and for the most part coincides with the old. After making the layout and flashing it into my operating system (at that time I already started working in Ubuntu Linux), I began to study it in the simulator. And then a miracle happened, the process went so fast that I brought the printing speed to 200 characters per minute (again these 200) in five days, and started working in a new layout.
Keyboard of the soviet computer BK 0010-01
JCUKEN modified layoutNow everything was fine with me, except for the location of the keys, and did not make a long space, although it was shorter on a laptop than on conventional keyboards, due to the extra keys on the bottom row. It is time to make the keyboard, only it should be compact, so that it can be placed on top of the laptop keyboard, and as low as possible in height. Since the keyboard should be placed on top of the notebook, and on my Thinkpad there is a touchpoint right in the middle of the keyboard that is above the level of all the buttons, I decided to make a hole on the bottom of the keyboard case, at first it was round, then just added cat ears. From that moment, my keyboard became
CatBoard = ^. ^ =
I decided to make the case out of aluminum, and began to look for production, where I could cut holes for buttons and the body contour with a laser. No one wants to get involved with small orders, most honestly write about the amount of the minimum order, some say this only after the order. For cutting aluminum, a rather powerful laser is needed, it’s not easy to find one, so I decided to make a body out of plastic sheet or plexiglass. And here, thanks to Habra, I found mention of the first otkvvyshimsya in Russia
fablab . I contacted the head of the laboratory
FabLab77 , met, I talked about my project, and got access to equipment with which you can do anything, unlimited opportunities opened up. It was also lucky that at that time the Americans came from MIT, and held a week-long seminar at which they taught to work with all their equipment, only open software was used.
The last day of the MIT workshop at FabLab77In search of an ergonomic button layout, I made many layouts of plywood, on which I found the best layout, and it turned out to be almost the same as in the
Truly Ergonomic and
ErgoDox keyboards (I did not yet know about its existence). Well, this is not surprising, because people's hands are almost the same.
After the hull was ready, and the arrangement of the buttons completely suited me, I began to study how to make the controller. At the same time he began to collect a home mini lab for soldering. I bought a soldering iron with power adjustment, assembled a box in which I placed the Dremel 300 with a prefix that turns it into a small drilling machine - Dremel Workstation 220. In this box I made a folding cover on which to work. Now the box always stands under the table, taking up space in the apartment, and when you need to do something, I take it out and put it on the table.
At first, the controller decided to assemble it himself, at the same time collecting the programmer, in the fablab on the milling machine Modela made printed circuit boards, soldered them, but did not work, because the working programmer was only in the lab, I didn’t want to buy a new one, but I couldn’t mess with the boards only at home. I learned that there are microcontrollers with a hardware implementation of the USB protocol, a further search brought me to ready-made controllers, such as Teensy, and our similar developments from
Microsin , from which I purchased the
AVR-USB162 .
I decided to attach the wires not directly to the controller, but through the connector that I installed inside the case. Having traveled again to the fab lab, I cut out the case with a laser, which I decided not to do with rounded edges, outlining blocks with buttons in straight lines, got the current keyboard design. The controller is placed directly on top of the case, it rests on a screw with a nut, and planted washers, and the connector does not allow the board to spin. So that the wire does not rest on the laptop screen, put the controller closer to the middle of the keyboard. But how it happens when you didn’t think about this problem:
Richard Stallman and his OLPC laptop with HHKB keyboardWhen developing the circuit, I realized that the buttons need to be connected via diodes so that there is no situation when, when pressing several buttons in different rows and columns, the controller started thinking that the button was pressed from intersecting rows. Everyone knows that, but I did not know about it then. The Cherry MX buttons have an empty space where you can install either a diode or an LED. In order not to solder the diodes outside, I installed a small KD522B diode on each button, though they got the polarity wrong, they have the label location not uniform, you must look in the directory where the anode and the cathode are, therefore, when you connect the buttons to the controller, you take into account your mistake.
When everything was assembled, it remained only to flash the controller, at first I used the LUFA library, but I could not figure it out, because I never programmed in C, and in fact I don’t know this language. In search of another solution, I found a simple keyboard scan code, where the Teensy library was used. The code turned out to be a lot of errors, but fixing them was no longer difficult, the most important thing was working. I made the firmware in a couple of days, and the keyboard worked, I would never have thought that I could create it so quickly. Then of course there were weeks of fine-tuning it to the mind, correcting mistakes, adding functions unseen before. And I did it all already on the new keyboard.
Since the keyboard turned out to be divided, the hands are farther from each other, and the stand for hands on the laptop is not designed for it, so the hands began to rest on the corners of the laptop. Solved the problem with two mouse pads with gel pads, cut off the extra part of the rug, and got a comfortable palm rest to the keyboard. Thanks to the straight line of the case, the pads were installed just perfectly.
CatBoard Keyboard over ASUS EEE PC 701 LaptopWhat a pleasure it was to finally start working on what was assembled with my own hands, and does not have those flaws that I was just tired of, because I work on the keyboard every day, and every day it oppresses me. Come to any computer store, and try to buy a keyboard, in which there are no shifted rows, the heritage of mechanical typewriters, they simply do not exist. I would understand if the standard keyboards were ideally ergonomic, so there is no, this standard rests only on the habit of people, and all new users learn again on these keyboards, made under the old days (not in appearance, in fact).
In this case, my main requirement is to use a laptop keyboard on top, my new keyboard performed, it will fit even on the smallest netbook - ASUS EEE PC 701, which has a screen of just 7 inches, as seen in the photo just above. Although I don’t work on this netbook, it’s quite possible that I’ll start using it somewhere on the road, because now you don’t need to use its small keyboard when you have to squeeze your fingers together to place them on small keys.
Initially, there were flat caps with a transparent lid, purchased together with a programmable keyboard, and later put black caps from
WASD Keyboards when he made an order for new buttons, this time already Cherry MX Blue (with a click) and Cherry MX Red (like black ones without click, but softer).
The second keyboard was decided to collect because of the tight Cherry MX Black, they have an effort of pressing more than 60 grams, in blue and red from 45 grams. Pressing them was still normal, but to keep pressed down, which is often not necessary, the finger gets tired because of the presence of the Fn layer.
The manufacture of CatBoard] [was joined by a
suenot colleague, whom
Klavogonschikov met at the meeting, and one copy was asked to be made for the fab lab. Therefore, instead of soldering with wires, I decided to make printed circuit boards, there are two pieces on each keyboard, a connector is installed on the edge of the board into which the controller is inserted, connecting both boards, although due to the lack of ports, we had to connect the boards with five wires.
Eugene collects his white CatBoard] [To mill such large boards for a very long time, I decided to pickle them. Usually prepared for etching using photoresist or LUT, I decided to do it with a laser, glued a vinyl self-adhesive film to the board foil, laser cut the film along the contour of the tracks, removed the excess, and etched it in ammonium persulfate solution. The boards were from the gettinax, and my mistake was to cut them with metal scissors, they are quite fragile, in one place the piece with the track broke off. Drilled at home Dremel, did not want to mess with milling.
Etching board
Drilled boardThe use of 1.5 mm plexiglass together with 3 mm colored plastic made it possible to make the keyboard case a little thinner than in the first keyboard made of only 3 mm sheets, which made it necessary to mill the projections under the button latches. The controller took another model, more compact (
AVR-USB162MU ). Installed two LEDs, blue and red, which show the current keyboard layout.
Bottom viewThe keyboard layers are fastened
with M3 threaded rivets with a notch and countersunk head screws. Instead of threaded rivets, you can take more affordable exhausting, knock a nail out of them, and cut the M3 thread inside.