Linux Connectivity for the Wii Remote
Linux has had support for numerous hand-held infrared remote control devices for many years through the Linux Infra Red Controller (LIRC) drivers. There has been recent work to include LIRC in the kernel. The Nintendo Wii Remote is a more sophisticated remote control that was developed for the Wii game platform, it is accessible through a collection of Linux tools called CWiid. Wikipedia describes the Wii Remote:
The Wiimote hardware capabilities (photo) include:
- Two-way wireless Bluetooth connectivity to the host.
- A screen-mounted Sensor Bar with multiple IR light sources and a 5 meter range.
- A built-in IR camera with distance and rotation sensing capabilities.
- A three axis accelerometer for detecting hand motions.
- Six general purpose remote control pushbuttons labeled A, -, Home, +, 1 and 2.
- An up-down-left-right four-way pushbutton.
- A power switch.
- Four remote controlled LEDs.
- A built-in speaker for providing audio effects.
- A "rumble" device for producing vibrations.
- Built-in non volatile memory with space for user data.
- A hardware expansion port.
- Powered by two AA cells, can use rechargeable types.
CWiid was written by L. Donnie Smith and has been released under the GPLv2. The project has been around since March, 2007 and is currently at version 0.6.00. The libcwiid API document explains the CWiid software interface.
There are currently at least twelve programs using CWiid. Some of the highlights include control of DMX lighting systems with Wiimote Control, 3D display of chemical structures using the Avogadro molecular editor, the WiiOSC control device for music programs and a newly released prototype Wiimote Control for the Ardour multi-track audio editor. Although the Wiimote control is ideal for use in games, there don't appear to be any such developments under Linux at this point.
One of the more interesting uses of the Wiimote includes Head Tracking for an immersive 3D experience, based on the work of Johnny Chung Lee. This approach to 3D visualization produces full-color displays, unlike the the old-fashioned 3D movie technology that uses glasses with red and green lenses. Other 3D technologies require expensive LCD shutters that tend to produce a lot of flicker. The head tracking 3D technology would be well suited for use by the physically disabled.
New Wiimote devices can be purchased for $40 or less. Many of them exist on the used markets, thanks to the popularity of the Wii platform. If your favorite application could benefit from a two-way wireless remote control device with a wide variety of features, the Wiimote looks like a good choice.
