Development of a Wiimote-based gesture recognizer in a microprocessor laboratory course

This gesture recognizer, developed by students in a third-year microprocessor-based laboratory course, takes Wii remote (Wiimote) as an input device to estimate the movements of the user and to compare the detected trajectory with the previously learnt movements, in order to carry out the associated actions. Such a cheap state-of-the-art wireless user interface is very attractive for the students and can be used in many interactive applications, from robotics to virtual reality and multimedia presentations. By combining commercially-available hardware, pattern-matching techniques and programming skills, we are able to foster students' interest on developing innovative potentially-marketable systems. This freeware project, implemented as a configurable publicly-available library, can be adapted to the needs of any course or student. In our laboratory this open-source DLL is used for remotely controlling a robot (based on an open-hardware Arduino platform), using a PC and the Wiimote, although the DLL can be integrated in any C, C++, Java or C# project. A GUI application (based on a Model-View-Presenter paradigm) is also provided and can be used as a template for new applications or just for debugging purposes. Although the developed application only uses data from the accelerometers, data from the infrared camera and buttons of the Wiimote is also available.