Programming user interfaces using the Nintendo Wii remote: tutorial presentation

  • Authors:
  • Chuck Pheatt;Scott Goering

  • Affiliations:
  • Emporia State University, Emporia, KS;Emporia State University, Emporia, KS

  • Venue:
  • Journal of Computing Sciences in Colleges
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Nintendo Wii gaming console utilizes a 3D user interface device called the Wii Remote, also known as the Wiimote. The Wiimote incorporates a number of buttons for console communication as well as an accelerometer and IR sensor. In addition, the device allows accessories to be attached (such as the Classic Controller and Nunchuck) to extend its capabilities. The Wiimote utilizes the Bluetooth wireless protocol for communicating with the game console. The Wiimote has been used in a wide variety of applications beyond simply acting as a game console interface. Applications range from the seminal work with the Wiimote device by a Carnegie Mellon University researcher involving an interactive whiteboard [1] to the control of a 15 ton construction grapple by an Australian engineering firm [2]. It has become the favorite device with homebrew application developers [3] since interfacing the Wiimote to a PC simply requires a low cost Bluetooth dongle ( In this tutorial we will present an easy to use software framework for utilizing the WiiMote as a PC input device. Building on an existing library [4], we've developed a series of examples that illustrate how the Wiimote may be used as a sophisticated input device. The goal is to provide examples that can be used and extended by students without detailed knowledge of user interface messaging requirements. Examples included in the presentation will be: • Basic Wiimote and Bluetooth setup and "Hello World" applications. • Understanding of control button and sensor inputs including the accelerometer and IR sensors. • Integrating input from external controls including the Classic Controller and Nunchuck. • Developing a classic game using simple sprites. • Developing a gaming environment using OpenGL. Programming examples may be utilized by introductory programming students as well as computer science undergraduates developing unique user interfaces or pursuing an independent study.