(NOTE: This post originally appeared on my personal blog here. I have copied it here for continuity.)
After I wrote my last post (not before, as I probably should have done), I googled “keyglove” to see what would come up. As it turns out, there are actually a few separate designs that are in some way similar to what I wrote about. My idea was an original thought for me, but it seems there are others who have also had the same original thought.
The least similar project is a 16-key wearable keyglove, which appears to be an early prototype that didn’t go very far. According to the article, it attempted to create all of the standard 101 keys of a full-size keyboard, but only succeeded in implementing 45 due to ergonomic constraints. They also seem to be using leather gloves, which are more restrictive than I prefer. I am not sure of the actual year of design.
The next attempt, on eyetap.org as a Key-Glove, looks incredibly similar to the physical design I imagined, but the implementation is a little different. They don’t make use of the palm area at all, at least in the default design, and they use 21 different sensors (made ingeniously from snap buttons) to achieve 8 * 13 = 104 possible 1-to-1 sensor combinations. The processor board is ripped from a standard 101-key keyboard though, so it is impossible to make use of multi-sensor combinations, and very difficult to customize once it’s built. The physical design is great though.
The third keyglove, adapted from the one on eyetap.org, is over at wirejunkie.com. It’s closer in comfort to what I envisioned, but other than being an ergonomically refined version of the previous glove, it is very similar. It does make more use of keyboard remapping though.
There is also the Thumbcode glove from Stanford. This is also close to what I had in mind, though the approach is different. They have only buttons on the three segments of each of four fingers, and achieve multiple combinations by detecting which fingers are touching together. It is a very interesting glove.
Finally, there is the KiTTY input device (kittytech.com). This is a unique kind of glove-like device which was originally designed for both hands and made to be easy for people who are already good at touch typing. It is not quite like any of the other above mentioned devices, but it is also not quite like what I had in mind.
None of these designs take advantage of the relative ease with which the human hand can use two or more fingers to touch the same area on the same hand. They are also usually not easy to customize after building beyond OS-based keyboard remapping, and the sensors are quite small due to the hardware used (snap buttons, except in the case of the KiTTY). Additionally, two of the gloves were leather, which impedes other kind of precision activities (like writing or typing on a regular keyboard).
Because this is inexplicably interesting to me, I’ve come up with a set of requirements and parts for the prototype I’ve decided to build. So far, the research and design has amounted to about three hours. I haven’t put in any implementation time yet since I don’t have any of the parts, but I might try working on some of the processing code at some point soon. Here are my requirements:
- Doesn’t inhibit other activities, like writing or using a phone
- Totally customizable through software
- Utilizes as many finger arrangements as possible
- Requires no extra devices or surfaces
- Adaptable to a battery-powered Bluetooth interface
- Easily removable
I haven’t figured out specifically how to address the Bluetooth issue, but I have ideas for the rest of the requirements. Here are the relevant parts required for my initial prototype:
- Jeffers black handbell glove ($2.95 per pair)
- MG Silver Conductive Epoxy ($26.99 per 14oz)
- 26 AWG wire-wrap grade wire
- Arduino Mega microcontroller board ($32 from eBay)
The handbell glove is very comfortable and quite thin. The Arduino Mega board looks awesome for prototyping; it’s too big for a finished product, but that’s not what it’s designed for. It should allow me to do about as much customization as I can think of. The silver epoxy is a gamble. It’s suppose to be highly conductive (volume resistance < 1 ohm), so my goal is to use it to create relatively large thin conductive pads on the glove in which I can simply set the wires and allow everything to dry. It might not work though, in which case I’ll probably have to try something metal. I’d rather use epoxy since it’s less potentially damaging to other surfaces. My glove sensor arrangement is shown on the right.
I still need to finish mapping the sensor connection possibilities, and then take a shot at mapping the keys, and then I’ll be ready for hardware! This is exciting.