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

When I am starting the application on Windows, as soon as I start the application I am getting two IR dots and the calibration is getting done even though I haven’t used any IR source. I have used WIDCOMM Bluetooth stack. My wiimote is getting detected properly. But I am not able to figure out how two IR dots are getting detected without using any IR pen. No other IR source is there near my PC. Please let me know if where the problem can be ?
Thanks & Regards,
Diptesh
Hi Diptesh,
The stray IR source may come from sunlight, lamps, laptop, mobile devices.
If you cover the Wiimote’s IR camera and still there is 2 dots registered, you may have a faulty Wiimote. Have you tried using Smoothboard to see whether the same issue arises?
Regards,
Boon Jin
Thanks for your quick response. And yes I have tried using the same wiimote with Smoothboard and it is working fine. Also I have tried using WiimoteLib with test application and it is also working fine. Only when I am using WiimoteWhiteboard, this issue is arising. Can there be some issue with WiiRemoteJ library ?
Thanks.
I’m using Debian Lenny in a Acer Travelmate 803LMI notebook. I tried to install and run wiimoteWhiteboard.jar after installing and adding http://bluecove.googlecode.com/files/bluecove-gpl-2.1.0.jar as described in post http://www.uweschmidt.org/comment/166 but I can’t get to run it as expected.
The log displayed from the console was:
Acer:/home/tonisoto/whiteboard/WiimoteWhiteboard# java -jar WiimoteWhiteboard.jar
JarClassLoader: Warning: Unable to load native library: java.lang.NullPointerException
JarClassLoader: Warning: Unable to load native library: java.lang.NullPointerException
JarClassLoader: Warning: Unable to load native library: java.lang.NullPointerException
JarClassLoader: Warning: Unable to load native library: java.lang.NullPointerException
Null peer?!
Null peer?!
BlueCove version 2.1.0 on bluez
4-ago-10 2:11:59 org.uweschmidt.wiimote.whiteboard.calibration.WiimoteCalibration notifyListener
INFO: Calibration Event: SCREEN_CHANGED
Exception during event dispatch:
java.lang.NoSuchMethodError: method java.awt.Window.isLocationByPlatform with signature ()Z was not found.
at org.jdesktop.application.SingleFrameApplication.initRootPaneContainer(SingleFrameApplication.java:218)
at org.jdesktop.application.SingleFrameApplication.show(SingleFrameApplication.java:269)
at org.uweschmidt.wiimote.whiteboard.WiimoteWhiteboard.startup(WiimoteWhiteboard.java:136)
at org.jdesktop.application.Application$1.run(Application.java:171)
at java.awt.event.InvocationEvent.dispatch(libgcj.so.90)
at java.awt.EventQueue.dispatchEvent(libgcj.so.90)
at java.awt.EventDispatchThread.run(libgcj.so.90)
… and it hangs!
.. the strange thing about that is that I have also installed the package gtkwhiteboard and it runs as expected: I mean it connects to wiimote and it let me calibrate the screen and using it.
Any idea about my issue…?
Thanks in advance.
Hi! I’m so excited about using your project but….Teacher in need-
When I am trying to get the bluetooth device to pick up the Wii remote, the device recognizes the remote and I begin the installation process. The problem occurs when I get to the message window where a pin or code is required for my Wii controller. The directions that I have found state that you should not enter a code and click skip or no code, but I do not have the option. I cannot click the next button and proceed with the installation unless there is an accurate code. We have tried guessing, that does not work- unfortunately!
Your help will be much appreciated!
EMoore
Hi,
If you are connecting manually using the Widcomm Bluetooth stack and it asks for the pass code, you may want to try to press Alt+S on the keyboard.
Regards,
Boon Jin
That worked! Thank you for the quick response!
Hi,
Thank you for making this available. I’ve downloaded it and am just about to try it out in the coming weeks. Will buy a pico projector, make an IR pen and… is there any way to make a whiteboard using the MacBook’s infrared detector, or isight camera (with IR filter)???
In thanks…
I’m using a macbook. I cannot connect to my wiimote consistently. I’d say I’m getting a connection about 1 out of ever 25 times. I know it’s not a hardware issue. (at least I’m pretty sure) I am consistently getting errors from my WiimoteWhiteboard. Please Help!
Thanks.
tks
On the Mac, Scribbles by atebits seems like it was made for this. http://www.atebits.com/scribbles/
Sorry for not answering questions here in a while…
Hi Eduard,
my app can only be used with a Wii Remote.
Patrick,
do you mean to trigger Mac multitouch commands (e.g. rotate and zoom) like they’re possible with the trackpad? That’s not possible with my app.
Hi Maatje,
maybe there are additional sources of infrared light like sunlight or light bulbs (see “Visible IR dots”), that could explain why it doesn’t work.
Also, “Mouse Control” has to be enabled with option “Move & Click” selected.
Hi Pietro,
my app doesn’t work with Winsock, please see this previous post.
Hi otilio,
I haven’t tried my app with Windows 7 at all, it might work when you’re using the Widcomm Bluetooth stack.
Hi Foxra,
I’m sorry, but I’m out of ideas…
Hi Ruturaj,
my app will work with Windows XP SP3 if you use the Widcomm Bluetooth stack, please see this previous post for more information.
Hi chryjs,
maybe you’re blocking the view for one of the two Wiimotes during calibration?
From How to use:
Hi Diptesh,
I don’t think there is an issue with WiiRemoteJ. I’d go with Boon Jin’s assumption of stray IR light. Does Smoothboard work under the exact circumstances when my app doesn’t?
Hi Toni,
maybe you installed a “headless” variant of Java that doesn’t come with the GUI libraries? Please see this previous post.
Hi,
it is possible to build a Whiteboard using a Webcam with an infrared filter (instead of using a Wiimote), but that is not supported by my application.
Hi DubPrecalc,
are there a lot of other Bluetooth devices around when you try to make the connection? If so, that could be the reason why it is so unreliable. You could try using the “org.uweschmidt.wiimote.whiteboard.wiimoteAddresses” runtime option to restrict connections only to your Wiimote, please read this for more information.
Uwe :
… But I use the exact same operations for both wiimote, symetrically.
I’ll make a new test in the next days and I’ll make a video
In fact it’s ok for 1 Wii , but the second one have ALL the points “out”… As if the calibration was wrong. Looking at what this wiimote “see”, is however ok…
Hi Uwe,
only one problem, i’m using a macbook, and one i’m calibrating, only one IR dot appears and calibrates, isn’t their suppose to be four of them?
Hi Ben,
what exactly happens when you try to calibrate? Does the calibration screen disappear after you do the first calibration point?
Maybe there are other sources of IR light interfering, like sunlight or light bulbs. Have you checked the “IR Camera Monitor”?
Hi Uwe,
i honestly don’t know what happened, but yesterday it wasn’t working, but today everything’s fine. Thank you for your quick response.
Hi Uwe,
Do you know of an application that does use the built-in iSight?
My thought has been to try a buffed plexiglass screen between me & the laptop, which is projected on and seen by the camera. Then use as a touchscreen.
hello ;
if do you have an idee for using tow wiiremote for displaying a cursor in 3D ,i’m using wiimotelib for brian peek with C#.
my question is how can I connect tow wiiremot in the same time?
thinks for helpping