Project

General

Profile

Actions

Emulator Issues #2486

closed

WII balance board doesn't work in every games that use it.

Added by coralie.ain about 14 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
Category:
Controls
% Done:

0%

Operating system:
N/A
Issue type:
Feature request
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

What steps will reproduce the problem?
1.Start Dolphin
2.Choose 2 wiimotes in real wiimote mode does'nt
3.Sync wiimote and a wii balance board
4.Click on "pair up wiimotes"
5.The wii balance board take the #1 slot and the wiimote isn't sync.

What is the expected output? What do you see instead?
Balance board must take #4 slot.

What version of the product are you using? On what operating system?
5230 x64 and olders

Please provide any additional information below.


Related issues 5 (0 open5 closed)

Has duplicate Emulator - Emulator Issues #2513: Wii balance board can only connedc to wiimote slot 1Duplicate

Actions
Has duplicate Emulator - Emulator Issues #2772: Explicit Balance Board supportDuplicate

Actions
Has duplicate Emulator - Emulator Issues #2773: Explicit Wii Fit supportDuplicate

Actions
Has duplicate Emulator - Emulator Issues #3955: Wii Balance Board can't connect to DolphinDuplicate

Actions
Has duplicate Emulator - Emulator Issues #4615: Balance Board Doesn't work in any gameDuplicate

Actions
Actions #1

Updated by skidau about 14 years ago

  • Issue type set to Feature request
Actions #2

Updated by snzgoo about 14 years ago

I guess we will need to change Allocate() @wiimote_real then eh? If wiimote.ext =
balance board -> plae it in slot 4.

this MIGHT work i dont know, i dont have that equipment so i cant test it all sorry.
Try replacing the allocate function with this one here, however it might be..that u
need to use the new wiiuse.h v1.2 to recognize ext.type == EXP_WII_BOARD.
IF u dont know what i mean, just replace EXP_WII_BOARD with a 4 below, that will also
do the trick, hacky tho. :P

void Allocate()
{
if (g_RealWiiMoteAllocated)
return;
if (!g_RealWiiMoteInitialized)
Initialize();

// Clear the wiimote classes
memset(g_WiiMotes, 0, sizeof(CWiiMote*) * MAX_WIIMOTES);
for (int i = 0; i < MAX_WIIMOTES; i++)
	g_WiimoteInUse[i] = false;

int current_number_wbb, current_number = 0;
g_Config.bNumberEmuWiimotes = g_Config.bNumberRealWiimotes = 0;

// Create Wiimote classes, one for each Real WiiMote found
for (int i = 0; i < g_NumberOfWiiMotes; i++)
{

	// Let's find out the slot this Real WiiMote will be using... We need this because

the user can set any of the 4 WiiMotes as Real, Emulated or Inactive...
for (; current_number < MAX_WIIMOTES; current_number++)
{
// Just to be sure we won't be overlapping any WiiMote...
if (g_WiimoteInUse[current_number] == true)
continue;
if (WiiMoteEmu::WiiMapping[current_number].Source == 1)
g_Config.bNumberEmuWiimotes++;
// Found a WiiMote (slot) that wants to be real :P
else if (WiiMoteEmu::WiiMapping[current_number].Source == 2) {
g_Config.bNumberRealWiimotes++;
break;
}

	}
	// If we found a valid slot for this WiiMote...
	if (current_number < MAX_WIIMOTES)
	{
		if ( ( g_WiiMotesFromWiiUse[i]->exp.type == EXP_WII_BOARD)  && (g_WiimoteInUse[3]

== false))
current_number_wbb = 3;
else
current_number_wbb = current_number;

		g_WiiMotes[current_number_wbb] = new CWiiMote(current_number_wbb,

g_WiiMotesFromWiiUse[i]);
g_WiimoteInUse[current_number_wbb] = true;
switch (current_number_wbb)
{
case 0:
wiiuse_set_leds(g_WiiMotesFromWiiUse[i], WIIMOTE_LED_1);
break;
case 1:
wiiuse_set_leds(g_WiiMotesFromWiiUse[i], WIIMOTE_LED_2);
break;
case 2:
wiiuse_set_leds(g_WiiMotesFromWiiUse[i], WIIMOTE_LED_3);
break;
case 3:
wiiuse_set_leds(g_WiiMotesFromWiiUse[i], WIIMOTE_LED_4);
break;
default:
PanicAlert("Trying to create real wiimote %i WTF", current_number_wbb);
break;
}
DEBUG_LOG(WIIMOTE, "Real WiiMote allocated as WiiMote #%i", current_number_wbb);
}
}

// If there are more slots marked as "Real WiiMote" than the number of Real WiiMotes

connected, disable them!
for(current_number++; current_number < MAX_WIIMOTES; current_number++)
{
if (WiiMoteEmu::WiiMapping[current_number].Source == 1)
g_Config.bNumberEmuWiimotes++;
else if (WiiMoteEmu::WiiMapping[current_number].Source == 2)
WiiMoteEmu::WiiMapping[current_number].Source = 0;
}

DEBUG_LOG(WIIMOTE, "Using %i Real Wiimote(s) and %i Emu Wiimote(s)",

g_Config.bNumberRealWiimotes, g_Config.bNumberEmuWiimotes);

// If we are not using any emulated wiimotes we can run the thread temporary until

the data has beeen copied
if (g_Config.bNumberEmuWiimotes == 0)
g_RunTemporary = true;

g_RealWiiMoteAllocated = true;

}

Actions #3

Updated by BhaaL about 14 years ago

Issue 2513 has been merged into this issue.

Actions #4

Updated by DJ6ril about 14 years ago

I have a real balance board but i'm not developper so can't test your code snzgoo.

I wanna precise the problem:
If I choose a real wiimote in slot #1 and a real balance board in slot #4 and I
click on "Pairup wiimotes" the both are paired since the LEDs are on and label
indicate "connected to 2 wiimotes".
But if I click OK the balance's LED switch off!

When I run Wii fit +, although I type ALt+F8 the board doesn't want to connect and
the game is locked.

What is the best solution:

  1. Create a new plugin for balance board?
  2. Add a checkbox "Balance board associated" in each tab of wiimote plugin?
  3. Consider a balance board like a wiimote?

Many games need this issue be resolved!

Actions #5

Updated by snzgoo about 14 years ago

I wish I would have a wiibalanceboard, I would be probably able to fix it, but since
I don't have one, it's unfortunately very inefficient to work remotely on it. However
someone already tested the patch above( I modified it a lil) and the board got
positioned properly in slot 4. The light on your board goes off, because we only
enable the LED that corresponds to the slot in which your balanceboard was
positioned. The Board behaves like a Wiiremote, but since it only has one LED, we
would need to set LED 1 on (although its in slot 4) instead of turning on LED4.
However one of the question now is, whether it is necessary to turn on the proper LED
on the balance board to make it work at all or not. If I should ever be able to get
my hands on a WiiBalanceBoard, I would try to make it work..

Actions #6

Updated by DJ6ril about 14 years ago

Can you build me a revision with this code and send it on a FTP for I test it?

Actions #7

Updated by snzgoo almost 14 years ago

Get a recent build for instance 5764 or newer:
http://www.dolphin-emulator.com/download.html?ver=5476&arch=64

Then get my patched plugin_wiimote.dll(balanceboard fixes)
http://archiv.to/GET/FILE4BFDD2B8DE5D7

Just simply replace the old plugin_wiimote.dll in your plugins folder with this one.
This should put the balance board automatically into slot 4, and keep the LED1 on.

Actions #8

Updated by DJ6ril almost 14 years ago

OK, I've tested it and there are several problems:

First, the balance's LED is ON and paired with a wiimote but sometimes, the wiimote
take the slot 4 so the is still a bug.

On the other hand, in a game like Family ski and snowboard, if I connect the balance
board during game is running (pause, connect wiimote 4, play) the game crashes.
In wii fit, balance board isn't detected by the game equally.
There are 2 buttons on BB. A button Power in front and a button "sync" near
batteries.
The sync button make the LED toggle on and off longer than power button.

Actions #9

Updated by arturbc93 almost 14 years ago

It would be possible to add in Wiimote 4 in input source option "Wii Balance board" and try to get one of these to work this option? Also, if possible, try to add a feature to this plugin to run the speaker of the Wiimote.

Actions #10

Updated by arturbc93 almost 14 years ago

If it helps, the Wiimote is recognized as "Nintendo RLV-CNT-01" and the Wii Balance Board is recognized as "Nintendo RLV-WBC-01", and the emulator recognizes it as one Wiimote, but the games do not recognize and it turns off the LED be added in the emulator.

Actions #11

Updated by Billiard26 over 13 years ago

Issue 2772 has been merged into this issue.

Actions #12

Updated by Billiard26 over 13 years ago

Issue 2773 has been merged into this issue.

Actions #13

Updated by DJ6ril over 13 years ago

Nobody works on this? Nobody has a balance board? It costs less than 50€ with bigben brand without any game.

Actions #14

Updated by Billiard26 over 13 years ago

@
Ok money bags, buy me one and I will make it work in Dolphin.

Actions #15

Updated by aelaw326 over 13 years ago

Does anyone know if the plugin posted by snzgoo works? I just barely got a wii fit board and it would be awesome if it worked with Dolphin.

Actions #16

Updated by yc0000 over 13 years ago

As I know, balance board can not work on dolphin .It need some more work to do maybe.

Actions #17

Updated by Anonymous over 13 years ago

  • Status changed from Questionable to New
Actions #18

Updated by skidau over 13 years ago

Issue 3955 has been merged into this issue.

Actions #19

Updated by Anonymous almost 13 years ago

Issue 4615 has been merged into this issue.

Actions #20

Updated by lpfaint99 over 12 years ago

  • Category set to controls
Actions #21

Updated by jp1016 over 12 years ago

Are you still working on this one, or has this issue died? Balance Board doesn't work and it won't ever work? You guys are really not interested in having it working with the emulator? Seems like such a cool feature to add...

Actions #22

Updated by lpfaint99 over 12 years ago

you could try the build i posted here, but don't get your hopes up
http://forums.dolphin-emulator.com/showthread.php?tid=9574&pid=191668#pid191668
if it works with a real balanceboard report it here or there

Actions #23

Updated by parlane almost 11 years ago

  • Status changed from New to Fixed

Balance board support added. Tested on Windows and Linux. Mac OS X should work but can't be sure.

Fixed by 3.5-1370

Actions #24

Updated by gholy1234 almost 11 years ago

Hi All.
I purchased a balance board after getting dolphin 3.5-4000 and as you know its difficult to tell that it works properly. There is not a certain feature in dolphin letting us know when its connected and when its not, despite the LED inside the power button is on continuously ,After pairing up with Dolphin using the sync. Button. And it was not easy to synchronize and it needs 3 or more trials each times I need to pair it with dolphin.

Is there any attempt to overcome this problem?

Once I could get it working in WII-Fit-Plus, but it was just for a second for pushing the power button and after it the game hanged (As a member mentioned it on this page).

Overall I can tell I've paid for nothing and I couldn't use Balance Board by Dolphin, even for a min.

Is it going to be solved in next developments of dolphin? Help. thanks

Actions #25

Updated by Billiard26 almost 11 years ago

gholy1234, this is not a support forum. http://forums.dolphin-emu.org/ is.

Actions #26

Updated by pauldacheez almost 11 years ago

3.5-4000 doesn't exist, and probably never will since we're likely to release 4.0 before the number gets that high. Try the latest development build (3.5-1410) from here: http://dolphin-emu.org/download/

Actions #27

Updated by gholy1234 almost 11 years ago

sorry i was meaning 3.5-1400 .

Actions

Also available in: Atom PDF