This program allows you to use the Wii Remote (Wiimote) to turn any surface into a Low-Cost Interactive Whiteboard. It is based on Johnny Lee’s original WiimoteWhiteboard program that is written in C# and available for Windows only. My program uses Java to allow for (some) platform-independence. I also provide a Mac-only version since I’m a Mac user and this is, up to my knowledge, currently the only such program for the Mac. For Windows only, Boon Jin has enhanced Johnny’s software and created the shareware program Smoothboard. There is also a SourceForge project that provides other implementations, but it is not getting much attention.
Check out the video and the other cool projects at Johnny Lee’s page if you have no idea what I’m talking about
.
Features in a nutshell
- Open source
- Runs on Mac OS X, Windows, and Linux
- Simple User Interface available in English, Estonian, French, German, Indonesian, Italian, Polish, Portuguese, Russian, Slovene, and Spanish
- Camera Monitor and Calibration Details for better Wiimote placement
- Auto-connects up to 2 Wiimotes
- Right-click support, double-click assistance
- Mouse cursor smoothing

- Screen selection
- Touchpad Mode
- Update notification
- TUIO/OSC support for multitouch applications
More details in the Wiki.
Download (1.0.3)
Some example videos
Documentation & Support
You can post your comments, bug reports, feature requests, etc. at the bottom of this page. The latest documentation is available in the Wiki. You can also find out how you can help.
The wiimoteproject.com forums are a great resource for everything Wiimote. You may use this subforum to discuss everything related to my software. The Smoothboard Wiki also contains useful information for setting up your interactive whiteboard.
Infrared pens
You need a source of infrared (IR) light to use the software. Many people build their own IR pens for that purpose, usually by retrofitting some sort of marker. You’ll find all you need to know here. I started with a simple IR pen made from a battery clip.
There are also IR pens for sale if you don’t want to build one yourself. Several vendors sell different models, the IR Pen marketplace is a good place to get an overview.
You can use the coupon code uwe if you buy from IRPensOnline.com. This will give you a discount of $2 and I’ll get $1.
Compatibility
I only heard of few problems on Mac OS X, using the built-in stack. I also got reports from users who got the program running on Windows using either the Widcomm or BlueSoleil stack. It seems like Widcomm works better, see this post about BlueSoleil. You need to use the BlueZ stack on Linux, see the Wiki or this post for further instructions.
Issue on PowerPC Macs (excerpt from the WiiRemoteJ-README):
Note for Mac OS X PowerPC (PPC) users: you will have to delete the Wii Remote from your previous devices list in System Preferences->Bluetooth->Devices after each connection (every time you connect a given Wii Remote). Even then, the outgoing connection will still fail every other time. There is some sort of bug relating to HCI devices and Apple’s library. Luckily, it was fixed for the Intel Macs.
Further details can be found in the Wiki or the help files bundled with the application.
Subscribe

hi there,
i found this function in smoothboard
http://www.facebook.com/photo.php?pid=3900315&id=109757703015
is this possible with WW, pls?
thx
Thank you Boon Jin.
The issue was in fact the sunlight. We have covered the window, and all is working well. We are trialing both the java wii whiteboard application and Smoothboard in our building.
Thank you for your quick response and the solution that will help us move forward with this trial.
Helen
Hi Cyrille,
I don’t know, but the website says it works on “SableVM on Debian 4.0r3 ARM on Linksys NSLU2”.
Not really, other than referring you to the BlueCove Users Discussion Group. This is your best option to resolve this.
Try using bluecove-gpl-2.1.0.jar instead.
Hi Helen,
this is good idea. You can also do this with my app by changing the runtime option org.uweschmidt.wiimote.whiteboard.sensitivity.
Hi Dan,
this should also work with my app (see the end of my video), but I haven’t tested it in a real scenario. Please let me know if this works for you, in case you try it out.
I uwe, can I ask you a question about the license of your beatiful program?
Which is the license of the whiteboard?
Why do you not include the bluecove-gpl required by Linux inside thebinary package?
I think that if the license is compliant with the gpl you can include the bluecove
You could release all the code under the gpl
Thanks a lot for your work, in a special way for the Tuio support that allow to use
the wiimote whiteboard as multitouch
Bye
Hi pietro,
license issues are unfortunately tricky. My program relies on the WiiRemoteJ library, which is (in my opinion) incompatible with the GPL.
The rest of the libraries are probably GPL-compatible, although I’m not even totally sure about that…
hi,
i have a Mac Pro with 3 outputs on graphic cards. is somehow possible to calibrate two external desktop toghether?
http://www.initi.org/wii.png
thx in advance
best
dan
Hi Dan,
that’s unfortunately not possible. I meant to do this at some point, but never got around to it. Don’t expect this to happen any time soon, if ever…
Hi Uwe,
First of all thank you for spending time on this program, it looks fantastic.
I’m having problems calbrating my screen which I can’t do. The Wii remote connects but when I try to calibrate the screen apears then nothing happens.
I’m using a Mac OS X which I have set up to use as two seperate monitors so I can see the tool box when I’m trying to calibrate on the board.
In the ‘Visible IR dots’ bit numbers 2 and 3 change when I click my IR pen so I’m presuming it’s picking up two sources so that where the problem is.
I’ve tried using a IR pen and just an IR diode and a battery and it still see two dots, I’ve also tried the Wii remote in different postions. Any ideas on how to fix this.
Many thanks
Chris
Hi Chris,
How far are you positioning the Wiimote from the screen? There is a possibility that there are reflections of the IR causing the additional points.
When you do not activate the IR pen, does the Wiimote still detect any dots? If yes, you are having some stray IR sources in your vicinity.
Regards,
Boon Jin
Hi Uwe
Great to see how far the app has come since you started over 2 years ago.
I am trying to get running on my Windows 7 Netbook. It is the Windows BT stack, which according to the documentation is compatable (XP Sp2 or newer) but I’m getting the ‘Not supported on winsock’ been a while does this mean no luck my stack is incompatable & I’m reading documentation wrong?
Cheers
Ben
i get a little confused
when i used the mac version it work flawlessly.
but when i used the cross-platform version (i double click the WiimoteWhiteboard.jar), it generates error like this :
JarClassLoader: Warning: Unable to load native library: java.lang.NullPointerException
Native Library bluecove not available
java.lang.IllegalStateException: Bluetooth failed to initialize. There is probably a problem with your local Bluetooth stack or API.
is this a bug, or maybe the cross platform version are unable to run on a mac?
note :
this is my java version
➜ ~ java -version
java version “1.6.0_17″
Java(TM) SE Runtime Environment (build 1.6.0_17-b04-248-10M3025)
Java HotSpot(TM) 64-Bit Server VM (build 14.3-b01-101, mixed mode)
Hi Ben,
my app still only suports the WIDCOMM stack on Windows, AFAIK. Where did you find this in the documentation?
Hi Bobby,
the cross-platform version on your system is started in 64-bit mode by default, which currently doesn’t work (the Mac app already takes care of this). To solve your problem, open Terminal.app and run this (in the correct folder):
Uwe
“Microsoft Bluetooth stack (currently this means Windows XP SP2 or newer and Windows Mobile 2003 or newer)”
http://code.google.com/p/bluecove/wiki/stacks
Or is this just XP, surprised bluecove doesn’t support Windows Stack as now default for Win7, very few radios require additional software.
Ben
Hi Ben,
the stack has to support L2CAP in combination with BlueCove, which only applies to WIDCOMM.
Hello!
I followed (again) the exact process precisely describerd above, but I always get the same unfortunate message:
“Bluetooth failed to initialize. There is probably a pb with your local BT stack or API”
Any hint how to fix that bugging status ;-(
Hi Cyrille,
what process did you follow? Do you mean adding bluecove-gpl to my app?
I’m not much of help when it comes to Linux-related problems, because I don’t have a Linux box for testing right now.
Yes, I followed exactly this:
1. Download the cross-platform Java version and unzip the archive (folder WiimoteWhiteboard will be created)
2. Go to the WiimoteWhiteboard folder and create a new sub-directory lib
3. Download the latest GPL’d BlueCove Linux library (currently snapshot 73) and put it in the lib folder
4. Type zip WiimoteWhiteboard.jar lib/bluecove-gpl-2.0.3-*.jar at the command-line in folder WiimoteWhiteboard
5. That’s it. The software should start normally by typing java -jar WiimoteWhiteboard.jar
6. If it works, you can remove the folder lib and its contents
and unfortunately I can’t connect my Wiimote to the Linux box ;-( I know BT works on that machine with other devices!
Hi Cyrille,
you need to use bluecove-gpl-2.1.0 instead of a 2.0.3 snapshot (as mentioned here).
Hi I have a problem I can not use the program that appears as wrong, wiiremote failed to connect, not supported on winsokc, and I know how I can fix it please
Hi Rodolfo,
the winsock Bluetooth stack doesn’t work with my app.
Please see this comment for more information.
I’ve tried finding the driver for Wincomm 5.1.0.110 but to no avail. It seems that Whiteboard does not work with the current wincomm (6.1) stack as the error comes up as “Not supported on winsock” and won’t connect to the Wiimote. I’ve found that it works on Smoothboard but I hate to have to remove and then re-add the Wiimote. I’m slightly disappointed that I can’t use the Whiteboard…
Hi. Is it possible to use 2 wiimotes and one lcd projector in order to create a wider ir coverage? Thanks for any help you may provide.
Hi,
I think you mean the Widcomm driver, not Wincomm. Maybe you searched for the wrong name?
The error message “Not supported on winsock” indicates that you’re using the default Windows Bluetooth stack winsock, which does not work with my app.
From the BlueCove documentation:
Hence, try starting my app like this (with installed Widcomm stack):
Hi Ouie,
that should work as long as each Wiimote can “see” at least one quarter of the display; see my video.
I’ve been trying to get this program running in Windows 7 for a couple days now – no luck. I’ve tried 3 different BT dongles and with the built-in MS stack, BlueSoleil, and Toshiba drivers included with the most recent dongle. I cannot use the Widcomm drivers because version 6 simply won’t install (it asks me to plug in or turn on my device and sits). I’ve tried to find the older Widcomm 5.1 drivers as others have suggested, but I cannot locate them anywhere.
Really though, I don’t care so much about using this software; I just need a Java library for connecting to the Wiimote for my own project. I don’t want to use a .dll like Smoothboard since my software is in Java and I want to be able to use it in Linux as well. Are there any other Java libraries for connecting to the Wiimote I could try?
Hi Justin,
I guess these two links will help.
Good luck with your project.
Released version 1.0.3: