Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!dali.cs.montana.edu!milton!pepke@SCRI1.SCRI.FSU.EDU From: pepke@SCRI1.SCRI.FSU.EDU (Eric Pepke) Newsgroups: sci.virtual-worlds Subject: Power Glove Message-ID: <7877@milton.u.washington.edu> Date: 20 Sep 90 15:17:18 GMT Sender: hlab@milton.u.washington.edu Organization: Florida State University, but I don't speak for them Lines: 78 Approved: hitl@hardy.u.washington.edu I bought a power glove, and last night I rented a Nintendo with which to try it, ripped the glove apart, and did some in-circuit testing. The glove system is made up of the glove itself, an L-shaped structure of three ultrasonic recievers, perhaps half a meter on a side, that fits on the TV, and a junction box connecting the two. The glove has two boxes--a knuckle box and a wrist box. The knuckle box contains the two ultrasonic transmitters, simple driver circuitry, connections to the finger flexion sensors, and a piezoelectric beeper. The writs box contains a microprocessor with a 10 MHZ (!) crystal and a handful of support components. It also has quite a few conductive rubber buttons on the back. The interface to the Nintendo is a game controller emulator. There are several built-in programs that can be changed at any time by pushing the buttons on the back of the wrist box. There is one where the joystick is controlled by moving the hand right, left, up, or down, which is good for X-Z games. There is one where the joystick is controlled by moving the hand right, left, forward, or back, which is good for X-Y games. There are some programs optimized for certain games. For example, there is one for Double Dragon. Right, left, forward, back controls the joystick. Thumb, index finger, and last three fingers control various motions, all available ordinarily through combinations of presses on the controller. Hand forward and clutch makes the character climb a ladder. Twist of the hand causes a head butt. The glove also has the ability to recieve downloaded programs from a cartridge; an example of this is Joust. I have no details of what kinds of programs can be downloaded. I tried Double Dragon, Joust, and an X-Y/X-Z game (Teenage Mutant Ninja Turtles). The glove is operated by holding it within a sensing frustrum projected from the structure of recievers. Good readings can be obtained within about 20 degrees divergence outside the structure. I don't know how far back you can get, as I ran out of living room first. Most orientations of the hand give good readings, except those where the meat of the hand is between the transmitters and the receivers. One can push the Center button at any time, and the joystick emulation will occur around the current position of the glove at the center. I suspect the device has quite a lot more resolution than they are putting to work. The untrasonic transmitters are controlled by three driver transistors. I think that one recieves a constant square wave (an inductor smooths it out), and the other two are used to gate the two transmitters on and off. There are four finger flexion sensors, one each on the thumb, index finger, middle finger, and ring finger. They are resistive elements, and resitance roughly doubles from full extension to full flexion. Fully extended resistance for my glove was 100K on three of the sensors and 50K on one. I have no idea if this is intentional or an artifact of the manufacturing process, but in any event, it would be a good idea to calibrate the glove every time it is used. Resistance is not linearly related to flexion; there is a threshold effect, but with delicate movements of the fingers and a little practice, one can make quite small adjustments to resistance. The commons of the four sensors are connected through diodes to a common high. The whole mess is powered by a single 5V negative ground supply. I think the best idea would be to replace the entire wrist box with new circuitry. I am looking at Motorola's 68705S3 microcontroller. It seems perfect for the job. It has four high-impedance A-D converters, serial communications built in, an EPROM for the program, several timers, and enough parallel I/O lines to get the job done. It requires little external support circuitry. I don't think it has enough oomph to do the trig, but it should be able to handle timing calculations fine. Though the three receivers are good enough for game stuff, ideally one would want to have more to cover more orientations and positions. Perhaps a room with a receiver at each of the eight corners would work well. Eric Pepke INTERNET: pepke@gw.scri.fsu.edu Supercomputer Computations Research Institute MFENET: pepke@fsu Florida State University SPAN: scri::pepke Tallahassee, FL 32306-4052 BITNET: pepke@fsu Disclaimer: My employers seldom even LISTEN to my opinions. Meta-disclaimer: Any society that needs disclaimers has too many lawyers.