Table of Contents Categories
  • Hardware
  •   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.

    • balance board (Wikipedia)

    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>
    
    This article is licensed under CC BY-SA 3.0.
    Original source: https://edutechwiki.unige.ch/en/Nintendo Wii balance board
    Status: article is cached
    Encyclosphere.org EncycloReader is supported by the EncyclosphereKSF