So, my daughter and wife want to play the wii on the big screen (projection). The 10-foot cord from the box to the sensor bar is waaaay too short. I did some research, however, and discovered a few things. Basically, the only thing the sensor bar does is provide a point of reference — actually, TWO points of reference — for the nunchucks. And the nunchucks are even more impressive than I gave credit for initially. And… I figure we’re a surprisingly short time from computer mice that don’t need a desktop, which in turn – I’m getting ahead of myself. Let’s start with the sensor bar.
The sensor bar is a board with five IR LEDs on each side. The LEDs are angled various ways to maximize play field (left-right and up-down). I made a pair of independent hot-spots with a pair of IR LEDs apiece, a resistor, a switch and a pair of double-AAs (actually, a holder for them). Radio Shack parts, about $15. The reason I made two independent instead of one single bar is that as the system is presently designed the playfield depth is about 12 feet (according to the instructions). I’ve got a room that’s longer than that — and 6-7 feet from the screen is waaaay too close.
Still, I’ll be redoing this project. I’ll get a power converter that plugs into the wall and run a long (sigh) power cord to two pairs of hotspots on boards, maybe this time prettying it up for general consumption.
ANYWAY… what’s pretty neat is the nunchucks. You’ve got an IR detector in the nose of each. It spots the two hot-spots and “knows” two things. First, what is “level”. Second, approximately how far it is to the screen. A simple gravity switch tells it if it’s right-side-up or not. (note that it’s possible it also uses an “assumption” element as well — when you turn it on it’s right-side up. I suspect not, but since I haven’t tested it…) Now, it may contain an intertial detector – a weight between some springs. But consider an alternative that may be in play: it can detect how fast it’s moving and how it’s moving by tracking the fixed IR reference points. It can detect whether it’s rolling or pitching or yawing. It can also detect whether it’s approaching or withdrawing from the screen based on whether the points are closing or spreading (angle of separation).
And both these devices talk to the base via bluetooth.
Frankly, I’ve begun to wonder why the cable between them exists. Power? Sync?
Anyway, I got to pondering how to use the same principle for a computer. The hard part is not moving the mouse but acting with it — clicking. But with the wii the basics are solved. To include feedback – a mini-rumbler solves keyclicks, I think.
This one’s going to come again in my thoughts, but that’s the first part. I made a “wireless Wii sensor”, and it got me thinking about user interfaces.