Wiimote Project

Wiimote Projects => Wiimote Interactive Whiteboard => Topic started by: taitrt on January 28, 2008, 04:21:31 PM

Title: Possible to use 2 wiimotes?
Post by: taitrt on January 28, 2008, 04:21:31 PM
So, I've started using the wiimote whiteboard in my classroom, and I love it.  However, some of my students do not fully comprehend the fact that the wiimote has to be able to see the IR pen.  Sometimes they stand in front of the wiimote and their writing gets broken up where the wiimote loses track of the IR reflection.

Would it be possible to use 2 wiimotes so even when they stood in front of one the other one would still be able to pick up the IR reflection?

I am not a programmer and don't claim to be, but this seems like a great idea that would make the wiimote whiteboard much more practical to use.
Title: Re: Possible to use 2 wiimotes?
Post by: Thisisjon on February 02, 2008, 05:58:43 PM
I would assume so. The program says wiimote (A), so I would think that you could easily have a wiimote (B). Youd probably have to calibrate each wiimote individually. As long as you dont move the wiimotes it should work. I'll try using 2 wiimotes soon and see if it works well.
Title: Re: Possible to use 2 wiimotes?
Post by: Thisisjon on February 04, 2008, 05:32:08 PM
An error occurs. :-[ But maybe someone could fix that, because using two wiimotes would be helpful
Title: Re: Possible to use 2 wiimotes?
Post by: gabort on February 04, 2008, 05:47:41 PM
You know, if we had a race for uninformative posts, that one is a favorite.

What error? When?

I think it would indeed be a nice thing if we could have two wiimotes, but I suspect that both controlers show up as one and the same thing in BlueSoleil... Could that be the source of your error?

I'm just wandering, since "an error" is simply impossible to fix.
Title: Re: Possible to use 2 wiimotes?
Post by: RiXtEr on February 04, 2008, 08:39:54 PM
Here is the start of a 2 wiimote whiteboard (hopefully there isn't anyone else working on this so I'm not reinventing the wheel). It errors out when you try to calibrate. I am not sure how to tackle that part of it yet. If anyone is able to help or give me some insight on that I would really appreciate it. This must be ran from within visual studio the compiled programs are Mr. Lee's work as is most of the source code. I am also planning on the wiimote software minimizing to tray and a single left click on that icon will make the next click a right click (that should solve the right click issue). I am looking for software to pull up an on screen keyboard as well if anyone has some suggestions.

Thanks for the wonderful work Johnny Lee.

http://www.weaubleau.k12.mo.us/~ricky.nance/wiimote/2wiimotes-whiteboard.zip (http://www.weaubleau.k12.mo.us/~ricky.nance/wiimote/2wiimotes-whiteboard.zip)
Title: Re: Possible to use 2 wiimotes?
Post by: insomnia on February 10, 2008, 11:46:23 AM
You know, if we had a race for uninformative posts, that one is a favorite.

What error? When?

I think it would indeed be a nice thing if we could have two wiimotes, but I suspect that both controlers show up as one and the same thing in BlueSoleil... Could that be the source of your error?

I'm just wandering, since "an error" is simply impossible to fix.

both controllers show up as different divices ive had 3 controllers conected and it showed 3 different wiimotes.

for this to work you need to have 1 primary(active) and 1 secondary(passive) controller, if the 1st controller looses the IRled the secondary controller becomes active and reads the IRled. And when the 1st controller finds the led again the 2nd one becomes passive again.

you need to modify alot of the code to make this work, but it is possible.
Title: Re: Possible to use 2 wiimotes?
Post by: Thisisjon on February 11, 2008, 10:03:35 PM
any chance you could put that code up? because that could be really helpful.
Title: Re: Possible to use 2 wiimotes?
Post by: atomriot on February 11, 2008, 10:28:09 PM
any chance you could put that code up? because that could be really helpful.

dang, i cant even think of anything witty to say right now either

http://www.wiimoteproject.com/wiimote-and-bluetooth-connectivity/two-wiimotes-at-a-time-strange-behaviour-t244.0.html#msg1197

i have not tried this yet but they sound confident.
Title: Re: Possible to use 2 wiimotes?
Post by: insomnia on February 12, 2008, 09:35:07 AM
any chance you could put that code up? because that could be really helpful.

dang, i cant even think of anything witty to say right now either

http://www.wiimoteproject.com/wiimote-and-bluetooth-connectivity/two-wiimotes-at-a-time-strange-behaviour-t244.0.html#msg1197

i have not tried this yet but they sound confident.

From what i have read this gives you two distinct wiimotes, but they both wil be sending pointer information, no you have to enable the second one when you first one loosses sight. And then you'll have a redundent wiimote settup.
Title: Re: Possible to use 2 wiimotes?
Post by: bytepusher on February 12, 2008, 01:47:10 PM
I was thinking about using two or more wiimotes in order to increase accuracy. I'm not sure if this would be the best algorithm, but why not average the position of the cursor between X number of wiimotes? Also, why not keep wiimote references in an array, so that we're not having abcd, but wiimote{{1,2,3,4}], so serious redundancy and accuracy can be achieved? I started looking through the code, but I'm new to C#(shouldn't be hard since I know C++ well).
Title: Re: Possible to use 2 wiimotes?
Post by: insomnia on February 12, 2008, 03:16:26 PM
I was thinking about using two or more wiimotes in order to increase accuracy. I'm not sure if this would be the best algorithm, but why not average the position of the cursor between X number of wiimotes? Also, why not keep wiimote references in an array, so that we're not having abcd, but wiimote{{1,2,3,4}], so serious redundancy and accuracy can be achieved? I started looking through the code, but I'm new to C#(shouldn't be hard since I know C++ well).

It's sound good, i was thinking of passive redundancy where the second wiimote stays passive till the first looses sight. But i think your solution will work better plus it has extra accuracy. It uses more CPU power but it wouldn't be much.

I started looking at the code myself i have little experience in C# but im learning pretty fast.
Title: Re: Possible to use 2 wiimotes?
Post by: RiXtEr on February 14, 2008, 03:06:31 PM
I was thinking about using two or more wiimotes in order to increase accuracy. I'm not sure if this would be the best algorithm, but why not average the position of the cursor between X number of wiimotes? Also, why not keep wiimote references in an array, so that we're not having abcd, but wiimote{{1,2,3,4}], so serious redundancy and accuracy can be achieved? I started looking through the code, but I'm new to C#(shouldn't be hard since I know C++ well).

Sounds like a good idea, did you check out the code I submitted in my previous post? Everything is there except the pointer calibration stuff (the main part I guess :D ). If someone could figure that out (or help me figure it out, I am a c# newbie too!) that would be very helpful. I have 4 wiimotes if someone needs a tester.
Title: Re: Possible to use 2 wiimotes?
Post by: insomnia on February 17, 2008, 11:14:01 AM
I was thinking about using two or more wiimotes in order to increase accuracy. I'm not sure if this would be the best algorithm, but why not average the position of the cursor between X number of wiimotes? Also, why not keep wiimote references in an array, so that we're not having abcd, but wiimote{{1,2,3,4}], so serious redundancy and accuracy can be achieved? I started looking through the code, but I'm new to C#(shouldn't be hard since I know C++ well).

Sounds like a good idea, did you check out the code I submitted in my previous post? Everything is there except the pointer calibration stuff (the main part I guess :D ). If someone could figure that out (or help me figure it out, I am a c# newbie too!) that would be very helpful. I have 4 wiimotes if someone needs a tester.

I've downloaded your code, checking it out now. Im gonna try so thing tonight/tommorow, i just need to setup a second wiimote for some testing(i dont know where to place it ;) ). But i hope i have some testing stuff finisched tomorrow.
Title: Re: Possible to use 2 wiimotes?
Post by: jon on February 23, 2008, 04:18:12 AM
Just my 2 cents- but I think for having multiple wiimotes you would want all of them to calibrate simultaneously and you would want them both to be on at all times, this way one doesn't need to 'turn on' when one loses sight of the IR input.  Both inputs will, if calibrated correctly, map to the same point for both wiimotes- so the inputs should be the same. 

Looking at the source it seems the app tracks the state of the mouse clicks by changing the status of the IR state.  I think the difference here would be that the actual mouse state would be changed only when both wiimotes show dark or if either becomes lit (from a previous state of both dark).

Title: Re: Possible to use 2 wiimotes?
Post by: balam on March 10, 2008, 11:19:02 AM
did you made it work.
if so 2 wii will be amazing.
Title: Re: Possible to use 2 wiimotes?
Post by: RiXtEr on March 13, 2008, 08:14:11 AM
I haven't had time to learn enough c# to make it work yet, but the file up above just needs the code for the calibration on the second wiimote the code to make them work together. The battery meter, detection, and ui all are ready.
Title: Re: Possible to use 2 wiimotes?
Post by: TeacherDen on April 12, 2008, 04:42:14 AM
Hello my name is Kim, I'm a teacher in Denmark and have used this wonderful tech for a few weeks now, unfortunately as other have expressed as well is that dual use of Wiimote to cover lost sight when students come up or even myself is quite needed, I made this simple picture to show what is needed.

(http://i32.tinypic.com/oj2pv5.gif)

Now if someone is blocking the green sensor the red sensor can now cover up for it, and vice versa.
This would make this application just about as good as it gets, so I eagerly anticipate you guys progress on this, as I'm not fortunate enough to be skilled in programming language to do so myself :-)

Best of luck!
Title: Re: Possible to use 2 wiimotes?
Post by: ujs on April 12, 2008, 05:58:46 AM
I'm currently adding this feature to my java whiteboard app (http://www.uweschmidt.org/wiimote-whiteboard).
I will be considering two cases:

1. Using multiple Wiimotes for redundancy (each Wiimotes sees the whole screen)
2. Using multiple Wiimote to cover a large screen (each Wiimote can only see part of the screen)

I just started this but got a prototype working for case 1 with two Wiimotes.
I haven't released anything yet.

Uwe
Title: Re: Possible to use 2 wiimotes?
Post by: UndCon on April 12, 2008, 11:53:50 AM
I have seen the 2 wiimote setup on youtube

both wiimotes stuck on top corners of a whiteboard

(the 3d tracking posibly...)
Title: Re: Possible to use 2 wiimotes?
Post by: ujs on April 13, 2008, 10:54:13 AM
I have seen the 2 wiimote setup on youtube

both wiimotes stuck on top corners of a whiteboard

(the 3d tracking posibly...)

I won't do 3D tracking in my whiteboard app because I think it requires too much inital setup for the average user.
I consider the "3D whiteboard" somewhat experimental. I might do that sometime in the future, but it's not planned for now.

Uwe
Title: Re: Possible to use 2 wiimotes?
Post by: taitrt on April 13, 2008, 04:02:09 PM
I'm currently adding this feature to my java whiteboard app (http://www.uweschmidt.org/wiimote-whiteboard).
I will be considering two cases:

1. Using multiple Wiimotes for redundancy (each Wiimotes sees the whole screen)
2. Using multiple Wiimote to cover a large screen (each Wiimote can only see part of the screen)

I just started this but got a prototype working for case 1 with two Wiimotes.
I haven't released anything yet.

Uwe

Awesome! Let us know when it gets released! Thanks!
Title: Re: Possible to use 2 wiimotes?
Post by: fnf on April 13, 2008, 10:49:34 PM
Hello my name is Kim, I'm a teacher in Denmark and have used this wonderful tech for a few weeks now, unfortunately as other have expressed as well is that dual use of Wiimote to cover lost sight when students come up or even myself is quite needed, I made this simple picture to show what is needed.

Now if someone is blocking the green sensor the red sensor can now cover up for it, and vice versa.
This would make this application just about as good as it gets, so I eagerly anticipate you guys progress on this, as I'm not fortunate enough to be skilled in programming language to do so myself :-)

Best of luck!
Multiple Wiimotes support is available in Linux Whiteboard. If you are a Ubuntu Linux user, you can download a Live CD and test it off without having to install Linux to your system.

Currently all connected Wiimotes should see the whole whiteboard. Even if most Wiimotes are blocked, Whiteboard still can utilize the IR signals from the remaining ones.
I thought about letting users to decide the coverage area some time ago, but it turned out to be either:

 * Impractical: The covered areas will not be divided as evenly as your drawing. In typical scenarios: one Wiimote will see a small corner of the board, another will see a big portion of the board, but they will not cover the whole board eventually.
 * Complicated to calibrate for normal users: They'd need to draw the coverage area by themselves, that involves some guessing because one will not know how much of the white board a Wiimote sees. Or the app will divide the board by some fixed ratios (like your drawing): We are back to the first reason, it needs more than 2 Wiimotes to cover the whole screen.


Anyway, I'd like to be proven wrong. Hope we'll see something coming out from Java Whiteboard.
Title: Re: Possible to use 2 wiimotes?
Post by: ujs on May 17, 2008, 09:29:29 AM
Anyway, I'd like to be proven wrong. Hope we'll see something coming out from Java Whiteboard.

Hi, I released the new version of my software couple days ago.
I made a video today that includes demonstration of the calibration: http://youtube.com/watch?v=xmdLubEhTYw

Uwe
Title: Re: Possible to use 2 wiimotes?
Post by: UndCon on May 17, 2008, 11:43:37 AM
That is  a nice video - well done!
Title: Re: Possible to use 2 wiimotes?
Post by: fnf on May 17, 2008, 02:14:27 PM
That is  a nice video - well done!

Nice to see support for more than one Wiimotes, it worked well on my Macbook =) . Although I probably have missed something, since the original question is about having multiple Wiimotes covering arbitrary parts of the screen. Java Whiteboard insisted all Wiimotes to see the whole screen instead.

Is there plan for supporting multiple Wiimotes?.

[Edit]: I might have made a mistake: Just tested it with one Wiimote. Perhaps the screen will be divided in half when the 2nd Wiimote is connected, correct?.
Title: Re: Possible to use 2 wiimotes?
Post by: ujs on May 17, 2008, 06:42:54 PM
Nice to see support for more than one Wiimotes, it worked well on my Macbook =) . Although I probably have missed something, since the original question is about having multiple Wiimotes covering arbitrary parts of the screen. Java Whiteboard insisted all Wiimotes to see the whole screen instead.

Is there plan for supporting multiple Wiimotes?.

[Edit]: I might have made a mistake: Just tested it with one Wiimote. Perhaps the screen will be divided in half when the 2nd Wiimote is connected, correct?.

Java Whiteboard insisted all Wiimotes to see the whole screen. For the calibration, all Wiimotes should see the screen as best as possible.
Excerpt from my help files:
Quote from: WiimoteWhiteboard Help
Select the screen you want to use in the Calibration-section. You can click the button "Calibrate" or press the A button of a connected Wiimote to begin touch calibration. Use your IR light pen (or any other source of infrared light) to touch each crosshair and activate the LED (as if pressing your mouse button to click). After 4 points are calibrated, the touch screen should be ready to use if you're using only one Wiimote or all connected Wiimotes "saw" those 4 points.
During calibration you'll either see a checkmark or warning triangle for each connected Wiimote at all previous calibration points. They give you feedback whether a Wiimote saw the point or not. In case not all connected Wiimotes saw all 4 points, the calibration will continue until each Wiimote sees at least one fourth of the screen. All Wiimotes together must also "cover" the entire screen. The whole procedure sounds more complicated than it actually is.

The calibration will basically ask for more points (up to 9 => 3 x 3 grid) if both Wiimotes don't see the whole screen.
Maybe that clarifies things a bit, I guess it wasn't that clear in the video.

Uwe
Title: Re: Possible to use 2 wiimotes?
Post by: fnf on May 18, 2008, 04:50:47 AM
That makes sense.

I have a suggestion: What about supporting multiple Wiimotes and dividing the screen smaller and smaller?. This would partly solve the problem of user having to draw the coverage area.

Although some people have asked for a way to use the Wiimote for a portion of the screen. In which case, I'm thinking about adding a coverage area test (which yours already has, just needs some modifications) to aid drawing of the area during calibration. This is most flexible, but the most laborious. I'm not sure how many percentage of users will bother.
Title: Re: Possible to use 2 wiimotes?
Post by: ujs on May 19, 2008, 05:24:27 AM
I have a suggestion: What about supporting multiple Wiimotes and dividing the screen smaller and smaller?. This would partly solve the problem of user having to draw the coverage area.

That's basically what I'm doing, but I stop at 9 calibration points. If one of the Wiimotes didn't see all first 4 points, then the calibration will ask for more points until each Wiimote sees at least one rectangle (any size) of the calibration grid (see attached image); and all of those "rectangles" cover the whole calibration grid. The calibration can hence stop after 4, 6, 8, or 9 points.
The user doesn't have to do draw the coverage area.

Although some people have asked for a way to use the Wiimote for a portion of the screen. In which case, I'm thinking about adding a coverage area test (which yours already has, just needs some modifications) to aid drawing of the area during calibration. This is most flexible, but the most laborious. I'm not sure how many percentage of users will bother.

I don't really understand this...

Uwe
Title: Re: Possible to use 2 wiimotes?
Post by: fnf on May 19, 2008, 05:54:53 AM
Although some people have asked for a way to use the Wiimote for a portion of the screen. In which case, I'm thinking about adding a coverage area test (which yours already has, just needs some modifications) to aid drawing of the area during calibration. This is most flexible, but the most laborious. I'm not sure how many percentage of users will bother.

I don't really understand this...

Some users wanted to control only parts of the screen: The projected screen was too high and they couldn't reach the top, they wanted to do it anyway since most toolbars and the drawing area -that was a drawing program- rest in the lower parts of the screen.

In which case Whiteboard doesn't need to see the whole screen, just the parts that the user being interested in.

I agree though, that may not worth it. Personally I'd be quite content with what I have in Linux Whiteboard now. Surely if the Wiimotes can see half of the screen, it wouldn't be hard to adjust the angles so they'll see the whole screen, would it?.
Title: Re: Possible to use 2 wiimotes?
Post by: ujs on May 19, 2008, 07:03:14 AM
Some users wanted to control only parts of the screen: The projected screen was too high and they couldn't reach the top, they wanted to do it anyway since most toolbars and the drawing area -that was a drawing program- rest in the lower parts of the screen.

In which case Whiteboard doesn't need to see the whole screen, just the parts that the user being interested in.

I agree though, that may not worth it.

Ok, now I understand. This problem could either be solved by "skipping" the calibration points that are too high, or by changing the order in which points are calibrated (from bottom to top, user chooses when to stop).
I'd vote for the skipping approach, since it wouldn't change the calibration process for current users and it's actually easier to implement for me.
And of course, I had to take the check out whether the whole screen is covered by the Wiimotes. It guess it could be done without much work, but none of my users requested it so far...

Personally I'd be quite content with what I have in Linux Whiteboard now. Surely if the Wiimotes can see half of the screen, it wouldn't be hard to adjust the angles so they'll see the whole screen, would it?.

I've actually never used your Linux Whiteboard. I need to set up some other machine here with Windows and Linux for testing purposes...
One of my users requested the feature to use multiple Wiimotes to cover the screen for a (in my opinion) valid reason.
His screen is large, so he had to put the Wiimote far away. But then his IR pen wasn't bright enough to be picked up by the Wiimote's IR camera.
He wanted to use 2 Wiimotes (closer to the screen), each covering about half of the screen.
See  this post (http://www.uweschmidt.org/node/48/120#comment-120) for details.

Uwe
Title: Re: Possible to use 2 wiimotes?
Post by: fnf on May 19, 2008, 11:14:43 AM
And of course, I had to take the check out whether the whole screen is covered by the Wiimotes. It guess it could be done without much work, but none of my users requested it so far...

Yeah, since the number of users actually having more than 1 Wiimote is quite limited, I hesitate to invest on this idea. But I've got something that is easier to implement and a bit close to your solution:

(http://img380.imageshack.us/img380/5010/freeselectionsc1.png)

Here users will have a full-screen window to select the areas in the screen that they want to control. The bars can be created and dragged freely (they can be simple window dividers as commonly seen in most applications), then user will click on the desired areas, which will be numbered automatically.

It is still a bit complicated, but flexible enough to accommodate an unlimited number of Wiimotes.

Quote
I've actually never used your Linux Whiteboard. I need to set up some other machine here with Windows and Linux for testing purposes...
One of my users requested the feature to use multiple Wiimotes to cover the screen for a (in my opinion) valid reason.
His screen is large, so he had to put the Wiimote far away. But then his IR pen wasn't bright enough to be picked up by the Wiimote's IR camera.
He wanted to use 2 Wiimotes (closer to the screen), each covering about half of the screen.
See  this post (http://www.uweschmidt.org/wiimote-whiteboard#comment-120) for details.

Good point.