circuitcellar.com
Magazine Support   Digital Library   Products & Services   Suppliers Directory 
 
 





 

June 2006, Issue 191

Nontraditional Cursor Control
ATmega32-Based Motion Sensing


Andrew and Joseph’s motion-sensing glove enables you to control the cursor on your computer screen without the use of a mouse. Built around an ATmega32 microcontroller, the system functions as a two-button mouse with vertical scrolling.


by Andrew Sawchuk & Joseph Tanen

TESTS & RESULTS

As was mentioned earlier, we altered our design slightly from our original idea. Our first design integrated our measured accelerations to translate the lateral movement of the mouse into a position change. We couldn’t remove the effects of rotating the glove from our integration, so it was extremely prone to error because any roll or pitch of the device introduced unwanted acceleration.

So, we decided to base our motion on the very thing that made our first design improbable—the roll and pitch of the device. Rolling the device counterclockwise moves the mouse to the left. Rolling it clockwise moves the mouse to the right. Pitching the device toward you moves the mouse down. Pitching it away from you moves the mouse up. The vertical motion of the mouse is reversed, much like a joystick in a flight game. We found that this type of motion is easier to adapt to than having the pitch noninverted.

The final step in the process was to see how users would respond to the Airmouse. We tested the glove with a small group of users of different ages, genders, and levels of computer experience. We first had the users navigate the Windows operating system just to get a feel for the mouse. We then gave each user the opportunity to play the popular online first-person shooter game Counter-Strike: Source.

At first, the users’ input actions seemed pretty clunky and cumbersome with the completely new method of mousing. Within a short amount of time, however, many of the users were able to operate the Airmouse without too much difficulty. After approximately 5 min. of using Windows, most of the users were pretty proficient (see Photo 3). We found that they could get whatever they needed to access within a second or two.

(Click here to enlarge)

Photo 3—The Airmouse in action! Here a user is adapting to the Airmouse while playing Freecell, one of the best games ever. We would like to mention that the large development board sitting next to the laptop is not, in fact, part of our system. We used it to program the ATmega32 microcontroller.

As soon as they were reasonably comfortable using the Airmouse, we asked them to play several rounds of Counter-Strike: Source. That amounted to about 15 or 20 min. of game play per person. Some of the users had played the game before. After just a couple rounds, the more experienced players clearly had the hang of exactly how the mouse’s movements correlated to the character’s movements in the game.

The most common user response was that the mouse was highly accurate for fine-tuning the aiming of the crosshairs in the game. The users said it was easy to make subtle movements. The biggest problem they reported was having difficulty turning the character around 180° in order to shoot back at an opponent. This suggests that the Airmouse is better suited for applications that require precise control rather than quick movements (e.g., a flight simulator).