Developer Q&A

The following is a written interview-style Q&A session with the Keyglove developer from June 2011. This content or contiguous portions of it may be republished as long as the author information (Jeff Rowberg, linked to this website) is also present.


What inspired you to design the Keyglove?

A few things inspired the design, but it was definitely a combination of thoughts and ideas, not just a single event or realization. I’ve been interested in wearable computing for quite some time, and it always seemed to me that as computer hardware has improved in performance and decreased in size, there are two main components that are still lacking in terms of wearable application: optics and input. The average smartphone is very portable and can do at least enough to satisfy many needs of a typical hypothetical “wearables” user, but smartphones require visual attention both for viewing the display and for inputting data or controlling the device. Advancements in head-mounted display (HMD) technology have been great over the last few years, but currently there are still not any real consumer-friendly devices available for purchase. I have been particularly impressed by Lumus Optical’s developments, but they have not released any products to the public yet.

While I am not an expert in the field of optics by any means, I am familiar with input devices, and I certainly feel more capable of attempting to design one than I would exploring optical designs. I have thought a few times over the last couple of years about what a truly convenient input device for wearable computing might entail, and there are two main features that I feel are necessary: first, it has to be extremely portable (ideally integrated into your clothing), and second, you need to be able to use it without looking. Traditional input methods are usually based in some form on the QWERTY keyboard layout, which is familiar to most of us but not conducive to miniaturization. Using a tiny hardware keyboard or an on-screen smartphone or tablet keyboard is easy to understand, but not usually easy to do compared to a full-size counterpart on a desktop or laptop.

I stumbled across a device called the Spiffchorder during the summer of 2010, and the design intrigued me. It is a version of a “chording” keyboard, or a keyboard that makes use of combinations of simultaneous keypresses (like a piano chord) to generate a wide variety of simulated keyboard input signals. With this approach, you can achieve enough unique combinations to type the whole alphabet and some symbols using as few as five buttons. The Spiffchorder itself is one of many such devices, and it is based on a popular programmable microcontroller manufactured by Atmel. I learned a bit about Atmel’s products and decided to attempt my own input device, but inverted the traditional design of a handheld chording keyboard by wrapping it around my hand into a glove form factor instead. Thus, the Keyglove was born.

It is worth pointing out that while the idea was genuinely original in my mind, I was not the first one to attempt such a device. After I published the first blog post about the idea I had, I looked up any information I could find on similar designs, and I actually was able to find quite a few. Only three of them were similar in notable ways, while the rest were just tangentially related. Even at that time though, there were a couple of completely original aspects to my idea, such as multitouch capability and easy reconfiguration right on the device instead of on the host computer only. These and other recently added features are possible in large part due to the very capable microcontroller used to power the Keyglove. The other devices I found were almost entirely concept-only or very rudimentary prototypes, but never developed into consumer-ready products. I can safely say that as of mid-2011, nobody has attempted to build a single glove-based input device that does everything I am designing into the Keyglove.

When did the whole project begin? Is it just you working on Keyglove, or is there a team of researchers?

I began the Keyglove project on September 25, 2010 with a concept, a blog post, and an order for a few prototype parts from SparkFun and Amazon.com. Except for some (very appreciated) contributions from other developers who have answered some questions or taken an interest in the project, I am the only one working on it. At least one other person has actually built his own prototype Keyglove based on the designs and source code I have made available on the project’s website, and another person has put in some effort to find a good physical glove material. Yet another person has expressed interest in writing some valuable companion software for the glove. But as far as concerted, ongoing hardware and software development goes, it’s only me. However, in the short time that has passed since the NextGen event in San Francisco on June 19th, I have had a few people contact me who are interested in partnering in some form or another on the business side of the design to help bring the Keyglove to market. These are all very preliminary and tentative conversations though.

Where are you based?

I live and do most of the prototype design and testing at my home in Roanoke, VA. There is no corporate office or other Keyglove-specific site at this time.

How does the Keyglove work?

In a nutshell, the Keyglove allows you to type by touching your fingers together, and to move the mouse by rotating or otherwise moving your hand. Built using established and well-documented components, the Keyglove combines conductive fabric and digital motion sensors to detect fingertip touches and both linear and rotational hand motions. The main controller module translates this information into computer control signals, which are then sent to the host computer as standardized HID commands or optionally sent over wired or wireless serial port for completely customized behavior.

The glove uses conductive fabric for many of the touch sensors. This fabric is a thin, elastic silver-infused material that is so flexible that it is almost unnoticeable during normal usage. Since no mechanical switches or buttons are involved, only a very light touch is required to trigger an electrical connection, which means less physical effort is required and fewer parts are prone to wear out and require maintenance or replacement. The touch sensors are mounted on the fingers and palm of the glove in strategic places to allow for the greatest possible number of combinations. Some of these combinations are more physically difficult than others, but most are simple and all are possible. As always, however, you can configure the Keyglove to use only the combinations you are most comfortable with.

For motion sensing, the glove also has an accelerometer and gyroscope mounted on the back with the controller board. Tilt, gestures, and rotation readings from these sensors are translated individually or collectively into actions on the host device such as mouse control or 3D movement. The design also includes haptic feedback in the form of a small vibration motor similar to those found in most phones today. For additional feedback, it includes a multicolored LED and a small tone-generator. All three of these audible, visual, and haptic feedback methods are customizable.

Using simple one-to-one touch combinations (connecting one sensor to only one other sensor), there are over 60 ergonomically easy possibilities. Examples of such combinations are the thumb tip to each of the finger tips, and the thumb tip to each middle and lower finger segment. The Keyglove also supports multiple simultaneous touch detection, and even with just two-to-one combinations as well, the number of possibilities skyrockets. There are many hundreds of unique combinations. Obviously not all of these should necessarily be used, but it does allow for a great deal of flexibility.

The advantage of this non-standard approach to data entry and control is that you can use the Keyglove in any physical orientation, without any external devices, and without needing a surface of any kind to use it on. Additionally, once you learn the technique of a particular “touchset” (or comprehensive glove configuration profile), you can use it without looking. This makes the Keyglove perfect for wearable computing, and it even keeps your hand available for most other activities while you aren’t using the device.

What is the conductive fabric made from?

The conductive fabric is a nylon material that has a very fine silver coating. It is thin, flexible, elastic, and most importantly, electrically conductive. Since the fabric itself is conductive, its use eliminates the need for mechanical buttons to trigger touch signals. This means that very little effort is required, which makes the Keyglove more of a pleasure and less of a burden to use. The silver nylon fabric also functions easily on modern capacitive touchscreens like those found in smartphones and tablets, meaning that you won’t need to remove the Keyglove to use your other touch-based electronic devices.

Nylon by itself is not suitably conductive for any kind of electrical signal. Adding a fine coating of silver particles gives the fabric the electrical conductivity required to use it for low-voltage contact points. Using real silver adds significantly to the cost of the fabric, but a single Keyglove requires a comparatively small quantity of the fabric, so it doesn’t increase the cost much for a typical consumer.

Is the Keyglove easy to use?

The basic concept of how to use the Keyglove is very straightforward and easily understood. To date, everyone who has tried the prototype Keyglove has picked up the idea and a decent technique within a minute or two of first putting it on. These two dozen or so early-stage beta testers include a wide range of people, from very young children all the way to seniors. I have been truly impressed with many of these people because of the speed with which they comprehended the design and translated their understanding into tangible output.

The motion-based mouse control is very intuitive and easy to master with a little effort. For keyboard input, on the other hand, there is a legitimate difficulty for many people because the approach is so foreign. Learning to use the Keyglove proficiently is not really any different from learning how to type with the QWERTY keyboard that most of us are used to. But the fact that they already know the QWERTY layout makes people feel that learning a second input method is less useful or worthwhile than it was the first time around. The learning process is really almost identical though; it simply requires time and repetition to establish muscle memory until it becomes automatic. Fast touch-typists don’t have to think about where each letter is on a traditional keyboard, and the exact same thing is possible with the Keyglove given a similar regimen of practicing.

There is also an inherent mechanical difference in the design of the Keyglove when compared to a QWERTY keyboard–namely that keyboards use two hands and all the fingers at once, while the Keyglove uses only one hand (though a two-handed configuration is planned) and a different finger technique. There is currently not enough beta testing data to suggest whether the same typing speed is possible on a Keyglove as on a QWERTY keyboard, but it is possible despite the mechanical differences. For a single data point, I have personally so far been able to achieve about 25 words per minute using the current touchset after about four hours of distracted practice during the first half of the recent NextGen Science Fair event.

What are the applications for the Keyglove?

My favorite (and inspirational) application is in the area of wearable computing, but that’s certainly not the only one. Because it functions as a thorough data entry device as well as a 3-dimensional rotational and linear motion capture device, it has the ability to be intuitively useful in games, 3D spatial and virtual reality interfaces, CAD modeling, telepresence, and even music and art. Essentially, if you can think of a way to express something using touch or motion, the Keyglove can give you a way to help bring it into existence on a computer.

Due to the construction and usage technique of the Keyglove, it is also a great candidate for harsh environments. Because it doesn’t require visual attention, has no moving parts or ways to get mechanically jammed, and is designed to be washable, it can be useful in industrial or even military applications.

There is also great potential for handicapped or disabled people who can’t use traditional desktop or laptop keyboards or mice. Because the Keyglove can be used in virtually any orientation or position and without any flat surface required, it is extremely comfortable and physically non-demanding.

Who most stands to benefit from this technology?

The people who will benefit from the Keyglove include gamers, 3D artists, handicapped or disabled people, those suffering from wrist injuries, mobile device users, industrial workers and military personnel, and of course all kinds of casual and professional users of wearable computing technology when it becomes more commonplace.

How can the Keyglove be customized?

The Keyglove is customizable on many different levels, depending on your interest and ability. The glove will ship with all of the necessary hardware and software, and a default configuration to make it useful right out of the box. Then, for typical consumers, it will come with a user-friendly application to assign individual behaviors to any touch, gesture, or motion. Although single touch/letter correlations will be commonplace, it is also possible to use a single touch or gesture to execute a whole series of actions.

Because the Keyglove acts just like a regular keyboard and mouse, it is automatically compatible with any platform or operating system that can already use a keyboard and mouse over USB or Bluetooth. However, there is also an OS-specific tool being developed that will allow even more customization, so that you can setup unique behaviors based on which program is currently active. This way, you can have one specific touchset for email or word processing, and another one more efficiently designed for photo editing or gaming.

Beyond just the basic touchset customization, the Keyglove is powered by an easily re-programmed microcontroller loaded with open-source code. This means that you can modify or completely replace the Keyglove’s own simple “operating system” with your own code if desired, just using a simple USB cable and open-source development tools. With this approach, you can repurpose the glove hardware to fit with your own specific needs (assuming the Keyglove’s default behavior cannot be suitably configured using the more user-friendly tools).

Going one more level down, the controller board itself is modular and designed to an open specification (fitting into a Mini PCI Express connector). It is a removable module for multiple reasons, but one of the main ones is so that anyone may even design and build their own completely new controller board to take advantage of the glove’s physical construction and touch sensor technology. This bottom-up open-source modular design makes the Keyglove extremely accessible from the most computer-illiterate consumers down to the most hardcore engineers.

What lies ahead on the path to completing the Keyglove?

The new controller board that recently arrived is a major step towards getting the Keyglove ready for retail. Although the current prototype is quite functional, it is certainly not robust or visually appealing as a finished accessory. One of the biggest milestones will be finalizing the design for a reliable main controller that is ideally as small as possible. The new board is not 100% complete, but it is vastly better than the huge prototype board that is currently on the back of the glove, and notably better than the first version of the custom controller board I ordered about a month prior.

There are still a few brand-new components I’m waiting on that haven’t yet been released, as well as a pending firmware upgrade for the Bluetooth wireless module I’m using, but the newest controller board I have is extremely close functionally to the big ugly one I’ve been developing with for a few months. A little more testing and perhaps one or two more small revisions should finish the design, leaving only software improvements and the physical glove construction left to complete.

My personal goal is to have at least the first batch of Keygloves available to purchase by the end of the year (ideally in time for Christmas). However, because I am unfamiliar with many intermediate steps in the manufacturing and sale process, it is quite likely that I won’t be able to meet that goal. What I can say is that from a developer’s viewpoint, it should be completely possible to get a single hand-built Keyglove finished in a retail-ready and visually appealing form by the end of 2011 for sure. Whether that design can also make it through the hurdles necessary to get it to Amazon.com and Newegg, or the shelves at Best Buy, I’m not sure.

I have made some valuable contacts to help accelerate this process both before and because of the recent NextGen Science Fair event, so I’m hopeful that however long it does take, I will at least be able to get it done as efficiently and intelligently as possible.

In any case, I absolutely love working on the project. However long it takes, it has been and will continue to be a great experience with what I believe to be an extremely useful outcome.