I don’t know when or how I found out that you the signals sent by the Wii Controller can be captured by bluetooth and therefore could be used to control any device such as a robot. My daughter had two Wii remotes with the Mario Kart addons which allows the controller to act as a steering wheel. What I wanted to do here was to create an interface to the software already installed to control the robot from Dawn Robotics.

My first task was to set up the bluetooth on the raspberry pi and scan for the wii remote.  Instructions for this can be found at the Brian’s Life website. This included installing the python-cwiid module.

The wii controller contains an accelerometer which sends x,y,z coordinates similar to the way a mobile device. With it fixed to a steering wheel the only one that counts is the second figure. The centre position is 128. I divide the figure by 28 and subtract from the central figure so that the figure is between -1 and 1. The other buttons used control the pan and tilt camera and the forward / reverse thrust.

The software I wrote can be found at bitbucket. I also created two videos showing the system in action.

As well as showing how untidy my house is it shows the difficulty with controlling the robocat.

The wii remote has some other interesting properties which would be worth investigating. It interacts with the sensor you place on top of the screen to ascertain the position in the room. This is done by reading the five infra red lights on either side as well as working out the angle of the wii through the accelerometer. That would make it easy to interface your own written game to the wii. There must also be other interesting projects someone could do.

Advertisements