Wiimote + Excel = WiiWatcher
I am doing more and more Wiimote integration. Buttons are easy. But how to analyze the motions? How can you know what to respond to? To assist with this I have written WiiWatcher. It logs input and allows you to graph the results. So if you want to know what the results look like when you swing it like a sword, it is now easy. Swing away and see the results! You can then use this to detect the action in your program.
Click on any image for larger view.
On the first tab is the control sheet which allows you to start and stop recording sessions. When a recording session is done, a new tab is opened with the results.
Once the results are recorded, you can use any of the features of Excel to analyze it. Of course charts will probably be the most popular option. Here is a chart with all current input recorded.
Mixing buttons with acceleration data however is not useful in most cases. Since it is Excel, you can simply modify the data. In this case I deleted the rows containing button information and left just the acceleration information.
Here is an example of analyzing just one input.
How is it built?
I decided to use Excel because of its built in analytics capabilities. Why build charting etc, when I can let Excel do it for me? In addition Excel allows you to save tests for later use.
- Visual Studio 2008 Beta 2. Can easily be built using Visual Studio 2005 as well.
- Visual Studio Tools for Office (VSTO)
- Microsoft Excel 2007 - Can be easily adapted to 2003 as well.
First I plan to finish it. Right now it only captures all button, d-pad inputs, and motion inputs from the main Wiimote. Next I will add sensor bar support, nunchuck, etc.
I also plan to add webcam support. This is so you can record a video and see a synchronized time line slider later on. After all, if you save these and later on want to know what caused a spike, would it not be great to just look in the video and see?
Detecting ranges and deviations is not that difficult. But I hope to in the future also add neural network support and training for better and easier detection of actions. This way, you would just perform a series of actions, record them and let the neural net train itself to recognize the action. Although, since it is already in Excel, if you have Microsoft Analysis services you can use its neural network and other features already.
Where to get it?
I have not had a chance to make a distributable binary build yet, but you can get the source code from CodePlex.
Use my contact form to contact me directly.