Table of Contents Categories
  Encyclosphere.org ENCYCLOREADER
  supported by EncyclosphereKSF

Nintendo Wii balance board

From EduTechWiki - Reading time: 4 min

Draft

<pageby/>

Definition[edit | edit source]

The Wii balance board is a controller for the Nintendo Wii gaming console.

It is possible to hook it up with a PC. You then can use it as an input device, e.g. like a joystick.

Surfing the Internet[edit | edit source]

The idea: Surf on the Web with your feet only. This is a first attempt ...

Material:

  • A DELL XPS II Laptop with a bluetooth card
  • Adapter is Toshiba
  • Driver is "Bluetooth Personal Area Network from Toshiba" - Version 5.0.2129.0 of 27.11.2002
  • Bluetooth HID port from Toshiba
  • Nintendo wiimote + nunchuk and a wii balance board

Wiimote hookup[edit | edit source]

To set up the bluetooth connection for the wiimote

  • Hook up the nunchuk ! ... else (I think) it won't be calibrated right and you will have to delete bluetooth connect
  • Launch the Bluetooth program (Menu Programs->Bluetooth->Bluetooth settings)
  • Click on "new connections", express mode
  • Press on the wiimote at the same time button 1 and button 2 (or alternatively the red button inside the battery trap)
  • Create a blue moon shortcut on the desktop

... and it should work, basically it's like connecting a cell phone or any other bluetooth device, i.e. straight forward with this laptop at least.

The Nintendo Wiimote seen by the Bluetooth tool (sorry my Windows speaks french)

  • Nom du périphérique: Nintendo RVL-CNT-01
  • Addresse du périphérique: 0:1E:35:5E:38:22
  • Classe du périphérique: Périphériques(Manette de jeu)
  • Classe de service: Périphérique d'interface humaine
  • Nom du service: Nintendo RVL-CNT-01

GlovePIE Scripts[edit | edit source]

The Wii balance board is supported by Carl Kenner's GlovePIE v. 0.3 + on the PC.

  • Donwload and install this software
  • Then get some PIE scripts that emulate mouse behavior (update: the site I got my scripts from is dead / Daniel K. Schneider 12:58, 20 July 2010 (UTC))

I based my trials on WiiMouse Version 0.4 by Sam Braidley (just appended what's below to it)

Balance board hookup[edit | edit source]

To set up the bluetooth connection for the wii balance board

  • In the bluetooth program, click on "new connections"
  • Open the battery case of the board and press the red button

What I get is:

  • Nintendo RVL-WBC-01
  • 00:1E:35:FD:7D:B5
  • Périphériques(Manette de jeu)
  • Nintendo RVL-CNT-01

The documentation for the GlovePIE v 0.3 balance board support is on page 70. It works :) ... there is only some weird calibration to do (e.g. I find the X and Y axis of the Joystick interface mixed up.

Balance board script[edit | edit source]

I added this (in several variants) to an existing PIE script

// Put the LED on
Wiimote2.BalanceBoard.LED = true

// This may look really weird. What is X and Y is a question of opinion ;)
// (1) For me, X should be handled by left/right when board is in normal position in front of TV. Glove PIE X is front/back.
//               on/off LED
//    +--------------------------+
//    | FL                    FR |
//    |     left        right    |
//    | BL                    BR |
//    +--------------------------+

// (2) on/off button is IN FRONT, i.e. close to computer, else multiply by -1
// Calibration (x and y offsets) are a bit strange. Seems to change over time also.
// Finally, there is some Interaction with the Wiimote I don't understand.

// Ajust values here - you may have to change them each time
// When you don't stand on the board, data for FL and BR are weird.
// Below a formula that leaves the cursor more or less idle when NOT on the board
var.deltaX = (Wiimote2.BalanceBoard.JoyY - 0.00) / 25
var.deltaY = (Wiimote2.BalanceBoard.JoyX + 0.05) / 25

// When you stand on the board (in neutral position) things may be wrong. So you may to compensenate once you are on the board...
// var.deltaX = (Wiimote2.BalanceBoard.JoyY - 0.20) / 25
// var.deltaY = (Wiimote2.BalanceBoard.JoyX + 0.15) / 25

mouse.x = mouse.x + var.deltaX
mouse.y = mouse.y + var.deltaY

debug = "BB= " + Wiimote2.HasBalanceBoard + " JoyX =" + Wiimote2.BalanceBoard.JoyX + " JoyY =" + Wiimote2.BalanceBoard.JoyY + " FL=" + Wiimote2.BalanceBoard.FrontLeft + " FR=" + Wiimote2.BalanceBoard.FrontRight + " BL=" + Wiimote2.BalanceBoard.BackLeft + " BR=" + Wiimote2.BalanceBoard.BackRight

// debug = ('WiiBalance by Daniel K. Schneider tecfa.unige.ch, based on Sam Braidley www.wiiscript.co.uk')

Greasemonkey script[edit | edit source]

When you surf on the Internet you don't want to click, but just ride. To do so you have to write a Greasemonkey script like this.

Greasemonkey is a quite spectacular FireFox extension that allows you to customize the way a webpage displays using small bits of JavaScript. Hundreds of scripts, for a wide variety of popular sites, are already available at UserScripts.org. Something similar exists for Opera. IE 7 we don't know. Below is the script I wrote, you can copy/paste or get it from here

// ==UserScript==
// @name           Mouseover surfing
// @namespace      DKS
// @description    Adds a mouseover event handler to internal each link of a MediaWiki that will redirect to a new page. This is for surfing a Mediawiki
// @include        http://tecfa.unige.ch/guides/js/ex/greasmonkey/
// ==/UserScript==

var n=document.links.length;
// Change the cursor into something that is bigger
document.body.style.cursor = "url(http://tecfa.unige.ch/guides/js/ex/greasemonkey/cursor.png) 25 25, auto";

for (var i = 0; i < n; i++) {
  l = document.links[i];
  l.addEventListener(
     'mouseover',
     function(event) {
       var link = event.target;
       // link.style.cursor = "crosshair";
       link.style.cursor = "url(http://tecfa.unige.ch/guides/js/ex/greasemonkey/cursor-link.png) 25 25, auto";
       // Uncomment to constrain to mediawiki internal links
       // if (link.className!="external text") 
       if (link.href) document.location.href = link.href;
     },
     true);
 }

This little script should be improved, e.g. by waiting a second before loading a new page. I'll do this once I have time, based on the code of NoClick 1.00.A.

The result[edit | edit source]

Result is not perfect, but it does ok for a let's ride the Internet demo. I put it on YouTube (sorry I am not a filmmaker ...): http://www.youtube.com/watch?v=bqTB5AUDZzo

<object width="425" height="350"> <param name="movie" value="http://www.youtube.com/v/bqTB5AUDZzo"> </param> <embed src="http://www.youtube.com/v/bqTB5AUDZzo" type="application/x-shockwave-flash" width="425" height="350"> </embed> </object>

Licensed under CC BY-SA 3.0 | Source: https://edutechwiki.unige.ch/en/Nintendo_Wii_balance_board
117 views |
↧ Download this article as ZWI file
Encyclosphere.org EncycloReader is supported by the EncyclosphereKSF