Although I was not able to find a general purpose device fully capable of replacing my keyboard, I discovered a number of extremely useful and effective input peripherals that many members of the Linux community could benefit from.
I tested the Handkey Twiddler 2, Monster Gecko's PistolMouse, KeyBowl's orbiTouch, and StreamZap's wireless computing remote. I tested each of the devices on Ubuntu Hoary and Ubuntu Breezy, and some also on Gentoo Linux.
Handkey Twiddler 2
Handkey's $199 Twiddler 2 integrates a chord-based keyboard and an IBM Trackpoint cursor control nub into a single, compact and ergonomic four-ounce unit that you hold in one hand.
By pressing various combinations of the Twiddler's 12 keys, or chording, you can input the full range of characters and symbols found on a standard keyboard. The integrated Trackpoint control nub provides you with complete cursor control from the standard typing position.
Linux automatically detected the Twiddler 2 when I plugged it in. It worked flawlessly, with no additional drivers required. Using the chord system is a bit confusing at first, but once I figured it out I was able to learn the combinations very quickly.
The device felt awkward and uncomfortable for the first hour or so, but after I adjusted the hand strap a couple of times I found a position that felt right. The ability to use keyboard and mouse functionality without having to move my hand is also appealing. Although I have no empirical evidence to demonstrate that my results with the Twiddler 2 are universal, I'm relatively convinced that the Twiddler 2 can facilitate faster typing speeds than a regular keyboard. On a regular keyboard, I can usually bang out about 80 words per minute, but with the Twiddler I can occasionally push it up to 85 WPM when I am really focused.
The device is highly programmable, and the chord modification system is integrated into the device itself, so you don't even need to use an external application to modify the key associations.
The single-hand form factor makes the Twiddler 2 an ideal input device for a mobile or wearable computer, but for the average user, it is also effective for regular use on the desktop. I often use it while instant messaging or writing articles.
Unfortunately, the device does have some frustrating limitations that make it less than adequate for some users. I have a highly elaborate shortcut configuration for the Sawfish window manager, and the Twiddler 2 really isn't capable of working with it.
I use Xmodmap to remap some of my keyboard keys: I use Caps Lock as the control key and I have Ctrl set so it can be used as an additional modifier. I primarily use Ctrl and the windows key for window management shortcuts. The Ctrl button on the Twiddler2 doesn't seem to be customizable. I'd like to program the Ctrl button to send the Caps Lock signal so I can use it for real control key operations. As it is, it sends the normal Ctrl signal, which makes my system think it's mod5.
Despite the massive number of possible chord combinations available, I've concluded that Twiddler probably won't facilitate all the shortcuts I'm used to working with as is, simply because I'd have to use overlapping key combinations to send all the modifiers. However, the vast majority of users probably don't use complex Ctrl-Shift, or Win-Alt-letter key combinations, so I doubt that problem will bother most users -- but power users should be aware of the deficiency.
If you use a mainstream window manager, and you aren't using a ton of specialized shortcuts, the Twiddler 2 could be an excellent keyboard and mouse replacement capable of meeting all of your needs.
Handkey says that the next generation Twiddler device may include Bluetooth support, a feature that would make it even better for wearable systems.
An article about alternative input device wouldn't be complete without a gaming peripheral. MonsterGecko's PistolMouse is an 800dpi optical gaming mouse that is shaped like a handgun. The trigger is the first mouse button, and a button on the bottom of the trigger guard is the second mouse button. A mouse wheel on the side of the device is within easy reach of the thumb. The mouse wheel extends all the way through the device, so it can be used comfortably by righties and lefties.
I thought at first that the unique shape of the PistolMouse was a novelty, but a quick test with Unreal Tournament showed otherwise -- this thing actually increased my frag count.
The high resolution optical sensor makes the PistolMouse incredibly precise, the ergonomic rubber grip is relatively comfortable, and the trigger motion feels very natural during the gaming experience. The vertical hand position is a lot more comfortable for extended use during gameplay than the normal hand orientation, and the position of the sensor makes it a lot more responsive to subtle left and right horizontal movements.
The PistolMouse works well with Linux, but I had to spend a good 20 minutes tweaking the mouse sensitivity configuration in GNOME before I got it to the point where it felt comfortable. The PistolMouse also works as a regular mouse with normal desktop software, but I wouldn't recommend it. The extreme sensitivity makes it a bit difficult to get used to for things like Web browsing, and because of its tall size, I often accidentally knocked it over when trying to use it without looking. If you switch between the keyboard and mouse a lot (as most users do during regular computer usage) it will probably slow you down.
The PistolMouse is really best for gaming, and particularly first person shooters. At its full price of $40, it probably isn't worth the cost for users that aren't serious gamers, but at its current reduced price of $20, it's a good value, particularly if you want to treat yourself to an after-holiday gift.
The Streamzap wireless computing remote is an IR remote with a USB receiver. The Streamzap remote is fully compatible with Linux Infrared Remote Control (LIRC) 1.7.1 and higher, but LIRC can be very difficult to configure and install on some distributions.
I spent several hours trying to work through tutorials, but I was never able to get the Streamzap to work with Ubuntu Hoary or Ubuntu Breezy. I was able to get it working with Gentoo, which actually has a streamzap USE-flag.
On distributions where it does work, users will probably have to manually compile programs like Totem and Rhythmbox to enable LIRC support. Remote control devices can be extremely useful, but average Linux users will probably have a lot of trouble getting it to do what they want.
If you're into scripting, you may be able to get a lot out of this device. You can associate scripts with various buttons on the device, and use the Streamzap as a fully programmable remote.
I did not test it, but the Streamzap is said to work right out of the box with KnoppMyth, a popular distribution for home-made digital video recorders.
Although a complex Streamzap configuration might enable it to perform as a mouse, the Streamzap remote is designed primarily for controlling multimedia applications. At $40, the Streamzap is a relatively affordable way to add remote control functionality to your Linux multimedia system, as long as you can get it to work.
The unusual design of Keybowl's $399 orbiTouch input device eliminates the necessity of finger motion and vastly reduces wrist motions. OrbiTouch users place their hands on a pair of raised plastic mounds, and push those mounds in various directions to input letters. The result is an input system that is ideal for those with disabilities or repetitive stress injury (RSI).
This input paradigm is unlike anything I have ever seen before, but it is relatively effective, and it does decrease the necessary motion to an extraordinary extent.
The device has two modes: one for text input and one for manipulating the mouse cursor. Users switch between the two modes by pressing down on the mounds together.
In cursor mode, one mound is used to control the cursor position and the other is used to click.
In keyboard mode, you utilize letter rings found around the mounds. Pushing the mounds in various directions simultaneously emits letters.
The device works flawlessly with Linux, and I was impressed by its performance. It's surprisingly easy to learn to use the orbiTouch, and the documentation is relatively good. I had a few small problems that detracted from the orbiTouch's quality and usability, but I imagine that with time and experience, I could avoid the problems. While testing the orbiTouch, I often changed the device mode unintentionally by applying too much pressure to the mounds while typing. I mentioned this concern to a Keybowl representative, who assured me that they were working on changing the mode-switching mechanism to accommodate users that have trouble pushing down on the mounds. The problem has probably already been resolved.
I also had some trouble targeting the top left corner with both the left and the right mound. I often moved the mound too close to the top or too close to the left. I had a little bit of trouble with the other corners, but the top left was the most troublesome for me. Typing the letter "s" with the orbiTouch requires a little bit of patience for a beginner, but I did get better with practice, and I'm sure that with daily use, I could work around that problem without any difficulty.
The orbiTouch is an effective solution for those with disabilities, but it lacks some of the features found in many of the other devices, particularly programmability. It would be nice if there were a way to customize which key signals are generated by particular motions.
Cursor control with the orbiTouch is easy and effective, though it takes a little time to get used to. Even in the most skilled hands, the orbiTouch will probably not be capable of providing the precision needed for graphic design, but for most common tasks, it is more than adequate.
Clicking with the orbiTouch is a bit strange. It requires more time and effort than clicking with a mouse, but I imagine for those who cannot operate a mouse, the added effort is a small price to pay.
The orbiTouch is not a general-purpose mouse and keyboard replacement. It was designed for users with disabilities, and in that capacity it works extraordinarily well.
According to Keybowl, average users can reach approximately 50% of their normal keyboard typing speed on the orbiTouch, typically with a maximum of about 60 words per minute. For users that have lost the ability to use a normal keyboard, the orbiTouch is a great alternative, and it is the only device I tested that meets the government's Section 508 accessibility requirements, which means that it is certified for use by federal employees with disabilities.
Although none of these devices will replace my keyboard and mouse full-time, they are all useful and interesting. It seems as if most USB input devices work well with Linux, but some complex devices like the Streamzap remote are difficult to configure.
I also encountered a number of devices, such as the SnapStream Firefly Remote, that are, unfortunately, not Linux-compatible. If you have personal experience with other Linux-compatible input devices, please leave a comment with some of your impressions.