- The device driver, which Zach is programming in Java. This is a program that will run on the PC mounted to the pole at the end of the course. The driver establishes and manages the wireless connection between two Wii Remote units: one mounted on the cane and the other mounted on the user's body. The driver maintains information on:
- Linear distance between the starting point and current location.
- Body compass bearing, expressed as a positive or negative angle. Pointing straight on the course returns a bearing of zero, and deviation to the left or right returns a negative or positive value, respectively.
- Amount of veering, measured linearly from the imaginary line connecting the start and finish points.
- Cane taps events. A "tap threshold" is used to distinguish intentional taps from normal accelerometer fluctuations. Three taps in rapid sequence is a special signal that can be used to indicate that the user is about to start running the course.
- Wrist roll. As Gene mentioned, the system will not work if the user rotates his or her wrist such that the Wii remote mounted on the cane is not pointing up at the lights. We can assume that this has happened if the body-mounted Wii places the user in proper position on the course, but the cane-mounted unit reports that no lights are seen.
- Cane arc, expressed as a positive or negative angle of the cane in respect to the body at the moment when a tap occurs.
- The course set up and test administration program, carried out in Adobe Director, which I will be creating. We will use the Moka Xtra to act as a bridge between Zach's Java-based Wii Cane driver and Director. We have tested this, and it works well, and is very fast, which means that we will be able to respond to user actions without perceptible latency, which would result in system sluggishness. The Director application that we will use for testing in November will include the following features:
- A user log in screen so that subject parameters (cane height, body width, age) can be set prior to testing, and so that performance statistics can be saved to the computer's hard drive for later analysis.
- A course parameter screen that permits an administrator to customize feedback conditions.
- An animated plan view of the course with an avatar representing the test subject indicating instantaneous body and cane position and bearing during the test.
- A training administration screen that shows elapsed time and a visual display of feedback prompts currently playing in the subject's headphones.
Wednesday, October 14, 2009
Progress report on application programming
Zach and I have made progress on the application that will run the WiiCane system. This application consists of two components: