For anyone interested: I have migrated this project (and the related blog posts) over to its own website: http://www.keyglove.net.
Recently, I came across something in Olli Markkanen’s blog about his wearable computer which intrigued me. Of course, wearable computers have always been intriguing to me, but while most of the hardware has reached or passed the point of being tiny and inexpensive enough, there are two things that aren’t yet as far as I can tell: the display and the input method.
Now, I’m not going to really discuss the display, since I know very little about optics or display technology. There are some incredible devices out there, but they all suffer from at least one of the following problems:
- Too expensive
- Too low-resolution
- Too obtrusive to vision
- Too bulky
- Not available outside the military
My ideal wearable display would be a monocular (single-screen) device, perhaps a couple hundred dollars, that could clip on to either side of any normal pair of glasses and use a tiny prism and projection device to create a mostly transparent viewport for one eye. But again, I don’t really know much about optics, so this might be impossible. But it doesn’t seem like it.
Anyway, my main interest is in the input device. There are also many one-handed keyboards out there. Many of them are designed to accommodate people who have the use of only one of their hands. Some are relatively small, while some are nowhere near small enough to use as a portable device on a wearable computer. Most of the most promising ones are either some type of contoured multi-button device that you hold in one hand, or else a miniature armband keyboard.
The armband keyboards are about like what you might find on a cellphone. They have a lot of buttons, but they’re very small and require precise movements. They have a lot of keys, but it is difficult to be fast on them and virtually impossible to use them accurately without looking.
The handheld ones are typically better, but since they have perhaps only seven or eight keys, they take a lot of getting used to. Once you learn the new combinations required, you can use them with reasonable speed without looking. However, you still usually have to hold something, and your hand needs to be in a specific position to use it. On top of that, your hand is pretty much unusable for anything else while you’re holding whatever it is you need to hold. The particular device that got me interested in this is known as a SpiffChorder.
One thing that every one of the handheld devices seem to have in common is that the keys must be pressed. Whether they are full-sized keys or simply very small buttons, they require a definite force and a pressing action to trigger them. This requires more work and usually more space.
So, here is my idea. Instead of this, I would very much like to see a glove that has resistive touch sensors in strategic locations (finger segments and tips, three rows on the palm, and three on the thumb side of the index finger). The basic usage would be by touching sensors together, rather than pressing designated keys on a separate device. I believe that with the correct calibration of touch sensitivity, this “keyglove” could be used without any extra devices (key grips to hold) or surfaces (tabletops), and certainly without looking once the technique is learned.
This keyglove would need a small amount of sensor wiring on the back side of the glove, and USB or battery powered Bluetooth processor probably in the wrist somewhere, but since the hard part would be handled by software, it would mostly be able to look and feel like a regular glove. It would definitely be thin and light enough to leave your hand available for other things if desired, such as writing with a pen, dialing a phone, holding a steering wheel, working with tools, or any other activity that wouldn’t risk damaging the glove.
In the arrangement in the photo on the right, there are a total of 20 unique sensors on a single hand. The palm sensors could be broken into four parts each, but that is probably not worthwhile mainly because it is difficult to touch your palm with any fingertip on the same hand in all but one vertical “column” of skin. That is, it is very hard to touch your palm directly below your index finger using any other finger. The software would be able to tell which finger is doing the pressing as well as whether the palm is being pressed anyway.
From my experiments with my own fingers, it is obviously impossible for each sensor to be used in at least one combination with every other sensor. Some sensors cannot interact due to the human physiology. For example, only the fingertip sensors can reasonably press the palm sensors. Only the two thumb sensors can reasonably press the side index sensors. With these kinds of restrictions in mind, there are exactly 30 combinations of unique two-sensor combinations. I won’t list them all here, but feel free to figure them out on your own (or contradict me).
The standard full-size desktop keyboard has 104 keys. This is by no means a minimal keyboard, especially since it includes the number pad, every single key of which is a duplicate of another. In reality, for full functionality, you could argue for:
- 26 letters
- 10 numbers
- 11 symbols
- 4 directional keys (U/D/L/R)
- 3 modifiers (shift/ctrl/alt)
- Page Up/Page Down
- Context Menu (critical for mouseless operation)
You may also add to that 10 or 12 function keys, depending on your application requirements. This is a grand total of 77 keys, including 12 function keys. Note that I listed only 11 symbols, while there are in reality 29 on my keyboard. However, there are only 11 dedicated symbol keys, and the remaining symbols are achieved by using shift along with the symbol keys and the number keys.
Now, back to our keyglove sensors. 30 unique combinations is actually pretty good, all things considered. But it certainly doesn’t meet the requirements all by itself. To take care of that, we have to incorporate combinations of more than two sensors. For example, instead of an “A” being generated by touching your palm with your index fingertip, perhaps it would require the simultaneous touch of your index and middle fingertips. This kind of combining allows an extra 66 combinations by using three sensors at a time and 22 combinations using four sensors at a time. This gives us a total of 118 possibilities. Now we’re getting somewhere!
Some of these combinations are very easy, while some are more difficult. Also, you’d want to take into consideration the fact that modifier combinations—especially shift—should be as non-intrusive as possible, and allow for the largest number of simultaneous other possibilities (either that, or you’ll end up using something like StickyKeys to take care of modifiers using software only).
If I had some test sensors, I would build the glove myself and then build the key combination set (also called a “chordset”). I am confident such a glove could work well, and could allow all kinds of wearable PC control, or even just typing quickly on a phone with no hardware keyboard. It might even entice me to buy a phone without a hardware keyboard, ha!