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 everyone,
I’m a mac user and I wanted to say thanks for the whiteboard software. It looks great, I’m off to buy my LEDs tomorrow!
I just wanted to ask, if you’re using two wiimotes, does the software output 8 blobs or just 4?
I want to try finger tracking, and I was wondering how many inputs I’d be able to use.
also. does anyone know if there’s a mac version of this media centre out there?
http://www.multigesture.net/2007/09/17/multitouch-media-application-v2-release/
I’m trying to create one with XCode, but I’m learning the real basics at the moment and it might well take me forever!!
Thanks everyone. this is some real cool stuff… I can’t sleep cos I’m too excited about getting some leds… how often does that happen?!
If my macbook has bluetooth built in, do I still need a bluetooth adapter? I was looking at a webpage for teachers to build this interactive whiteboard and they recommend the Trendnet Advanced Bluetooth Adapter, but do I need it? Thanks!
Hi,
I’m not really sure what the problem is; and I don’t have Windows Vista to reproduce the error.
However, what seems odd to me is this part of the trace:
I just set the cursor position to the end of the text in the Log Window so that one doesn’t have to scroll down to see the latest messages. I’m not sure whether this plays a part in your problem or is just an unrelated issue.
Sorry for the late reply,
Uwe
Hi,
The number of dots is 4 at maximum.
I’ve actually used this app on my Mac; it works just as any other Flash app.
See this previous post that explains TUIO, Flash and Multitouch.
Sorry for the late reply,
Uwe
Hi Laura,
No, not in combination with my software. Using a 3rd-party Bluetooth adapter may work, but the internal one is probably better supported.
Maybe this webpage was talking about the situation on Windows machines.
Sorry for the late reply,
Uwe
As you’ve probably noticed, the comments are now spread over two pages. The reason is Drupal (the CMS used on this site) only has options for up to 300 comments per page. I could “hack” this, but it’s probably time to separate comments into multiple pages since it takes quite long to load the page, especially for users without broadband connections.
I could let every visitor choose how to display comments, but it can and will break links to existing comments (either from other comments or external websites). What do you think?
Links to comments on the second page are already broken (they go to the first page). This is a bug of Drupal; I currently don’t have the time to deal with that. Let me know if you know of a solution for this problem.
Uwe
Thank you for your expertise & software. I got my whiteboard working today. I bought an IR stylus from Amazon, but the clicker is on the end which is not too comfortable, so I will possibly try to make my own. I’ve never soldered before so . . . we’ll see. Thank you again! You’ve made a poor teacher very happy!
Thank you so very much for creating a this amazing software on Mac for everyone to use! You are roxxorz!!!!11!!1!1!
Not sure how this would work, or if it would, but a way to configure a sensor bar (could be powered with usb) would make this awesome cause the wiimote would replace the pen and u could click to ur hearts content more naturally, and this could be evolved to replace the mouse from a far.
Hi Phil,
I don’t understand what you mean. Maybe you can elaborate on your idea…
Uwe
Hi Uwe,
First of all, please let me repeat that Johnny Lee and you totally rock! This new world of accessible e-whiteboards is completely fantastic and exciting.
I have a new feature request for you. It would be awesome to pinch the whiteboard with two LED and simulate a mouse scroll. I’m thinking of pinching a Google Maps to zoom in and out; as Google Maps already reacts to the mousewheel it should be easy to implement. I’m also thinking of pinching a picture to zoom in and out, like Microsoft Surface or the iPhone. I’m also thinking of pinching a web page to zoom in and out; as browsers like Internet Explorer and Firefox already react to CTRL+mousewheel it should also be easy to implement.
Keep up the good work!
/Thibaud Lopez Schneider
Hi Thibaud,
I agree that multi-touch interaction with the operating system would be pretty cool. However, I don’t think this functionality should be added to my software. I suggest instead to write another program that uses the already available TUIO messages from my software.
Laurence Muller has also released an application called tDesk that brings multi-touch interaction to Windows XP.
Uwe
I got Wiimote Whiteboard to work multiple times until one time upon startup, I received this error:
INFO 22:45:06 Calibration Event: SCREEN_CHANGED(WiiRemote.java:214) (BluetoothL2CAPClientConnection.java:33)
FINE 22:45:27 WiiRemoteJ: Found Nintendo RVL-CNT-01 (001B7A2C0637)
FINE 22:45:27 WiiRemoteJ: Nintendo RVL-CNT-01 is a WiiRemote.
INFO 22:45:28 WiiRemoteJ: btl2cap://001B7A2C0637
SEVERE 22:45:38 WiiRemoteJ: Error getting device!
java.io.IOException: WiiRemote failed to connect!
at wiiremotej.WiiRemote.construct(WiiRemote.java:301)
at wiiremotej.WiiRemote.
at wiiremotej.WiiRemoteDiscoverer.getWiiRemote(WiiRemoteDiscoverer.java:94)
at wiiremotej.WiiRemoteJ.findRemote(WiiRemoteJ.java:208)
at wiiremotej.WiiRemoteJ.access$100(WiiRemoteJ.java:22)
at wiiremotej.WiiRemoteJ$2.run(WiiRemoteJ.java:284)
at java.lang.Thread.run(Thread.java:613)
Caused by: javax.bluetooth.BluetoothConnectionException: Failed to open connection(2) [0xe00002cd]
at com.intel.bluetooth.BluetoothStackOSX.l2OpenClientConnectionImpl(Native Method)
at com.intel.bluetooth.BluetoothStackOSX.l2OpenClientConnection(BluetoothStackOSX.java:717)
at com.intel.bluetooth.BluetoothL2CAPClientConnection.
at com.intel.bluetooth.MicroeditionConnector.openImpl(MicroeditionConnector.java:401)
at com.intel.bluetooth.MicroeditionConnector.open(MicroeditionConnector.java:510)
at javax.microedition.io.Connector.open(Connector.java:95)
at wiiremotej.WiiRemote.construct(WiiRemote.java:295)
… 6 more
This just keeps repeating as long as I try to connect the remote. Now I can no longer connect the Wiimote to my MacBook Pro (Leopard). Does anyone know how to fix this problem?
Is there some way to use multiple wiimotes to see greater than 4 points. I am trying to work on a multi-touch table where I could potentially play the piano on-screen (ir illumination will come from ftir) and 4 points would be pretty limiting. thoughts?
I had no idea this kind of technology existed. We have a Wii set up in our offices (we’re creatives) and have often considered an interactive whiteboard for brainstorming sessions. This has just saved us a couple grand on new technology.
Thank you very VERY much!
Hi Travis,
since nobody else had any suggestions I’d just guess that the Bluetooth connection wasn’t terminated properly for some reason and subsequent connection attempts hence fail.
I assume rebooting the OS solves the problem…
Sorry for the late reply,
Uwe
A single Wiimote won’t report the position of more than 4 points at any given time. You could however try to use blinking IR lights to eventually get the positions of all lights after some time by only using a single Wiimote.
There’s some math to be done to figure this out properly…
Sorry for the late reply,
Uwe
You’ve noticed by now that I’m big on sensitivity as an issue with this program. I was just starting to despair, as ever since school started (a week and a half ago), I’d been having serious issues with this program. The sensitivity has been degrading constantly!
I finally discovered the problem. The LED was wearing out. I tried a different IR pen and it works like a champ.
Just throwing this out there so you guys will know that these things wear out eventually.
FYI, the LED I had been using was from a broken TV remote, so I had no idea what the specs were, it just seemed pretty reliable. And it was, for quite a while. So I guess the moral is: don’t trust LEDs you know nothing about.
Hello
I managed to make this work one time but now instead of detecting my IR pen, the software detects my wiimote as mouse controller….
Can you help me please ?
I’m on macbook
Thank you
Hi, I don’t understand what you mean by saying “the software detects my wiimote as mouse controller”. Can you elaborate?
Uwe
Dear JCL,
I´m trying to test your (GREAT!) solution for future use by around 200 teachers in a University in Brazil. I will buy the control and I will build the LED Pen. Please, answer my questions (sorry for the long list and my poor “Englich”):
1.- Please tell me if 2 wiimotes is equal to 2 remote controllers. If so, I need to buy 2 remote controls. Right? What is the best model (Part number will be good with maker name)?
2.- More power on the LED, more distance from the screen to the controller will be possible? I saw LEDs for 3 mm diameter 6000 mcd and 5 mm for 8000 mcd. Are they good? Look for it on http://alan-parekh.vstore.ca/index.php/cPath/4_6/sort/2a/products_id/13
3.- Can I use LEDs not RED? I suppose no.
4.- When I install your software on my Windows Vista Home Premium it will make modifications on the Windows Vista?
5.- I have a Toshiba Satellite. Do you know if someone had problems using it?
Thanks for the answers. As soon as I conclude the tests I will send immediatly one more message to you. Congratulations!
Hugo:
About your question #3
You must use “IR” Leds (Infra-Red LED)
See my wiimote page here:
http://clinik.net/wiimote/wiimote_info_my_pen_2.php
and see the IR Led tech specs
Agora em português, viva Hugo:
Para funcionar com a câmara que está embutida no comando Wiimote precisas de ter uma Led de infra-vermelho (IR Led).
Não importa a cor do plástico que protege a parte superior. O que importa é emitir um feixe de luz infra-vermelho. Semelhante aquelas que existem nos comandos das televisões!
No meu site explico bem como a construir e também tenho especificado qual a IR Led que eu uso (e funciona bem… embora muito se especule sobre qual as melhores características…)
Nota: quando estiveres a montar a tua caneta, não te esqueças que a IR Led (como qualquer led normal) tem um lado positivo (que deve ir ter ao lado positivo da bateria) e um lado negativo (que deve ir ter ao lado negativo da bateria). Já agora… a perna maior dos Leds indica o polo positivo.
Eu uso este programa Wiimote Whiteboard com o meu Mac (10.5) e funciona bem!
Abraços
Cheers
Hi Hugo,
this is not Johnny Lee’s website, you can go to his site if you want to contact him.
About your questions:
Wiimote is just a shorter word for Wii Remote. You just need a single Wiimote to get started with the Whiteboard. I’m not aware of different Wiimote models…
What do you mean by “modifications”? Make sure to see this post if you want to use my software with Windows Vista.
Also check out Johnny Lee’s original software and Boon Jin’s Wiimote Smooth Board and choose the software that works best for you.
All your other, general, questions are best addressed at the wiimoteproject.com forums.
Uwe
Thanks! You really help me. And in Portuguese! Very good!
Hugo Penido Gattoni
Thanks for your answer.
I told about “Windows modifications”: changes in something like DLLs, changes in internal modules, remove of some programming module, and so on.
I´m happy you understood my “Englich”…
Bye.
Hugo Penido Gattoni
Hi Hugo,
My software doesn’t modify anything like this, and I think the other ones I mentioned, by Johnny Lee and Boon Jin, don’t do either.
However, my software requires Java to be installed on the computer; the other ones need the .NET Framework in order to work.
Uwe
Great job!
Will be using this in my moms classroom after school outfitted most of them – but not her’s – with $ 1K + smart-boards.
Is anyone interested in doing this professionally?
i.e. helping schools stop wasting their money on overpriced unneccesary solutions?
I wonder whether you (Uwe and Johnny Lee would mind the commercialization of the software in connection with providing set-up / installation services.
Once again, love your work!!!
Haette auch in D schreiben koennen. Bin seit 8 Jahren in NY …
Tschoe
Hi Michael,
I wouldn’t mind at all if someone was doing this professionally, using my software.
Glad you like it,
Uwe
Hello.
I’m on linux SlAMD64 12.1, I have Java 1.6 installed.
I followed your instructions step-by-step but WiimoteWhiteboard still doesn’t start. I get
followed by tons of other lines… among them
However bluecove and bluecove-gpl are both in the lib/ dir inside the jar:
$ unzip -l WiimoteWhiteboard.jar Archive: WiimoteWhiteboard.jar Length Date Time Name -------- ---- ---- ---- 22 09-16-07 19:33 .version 1046 09-16-07 19:32 OneJar.class 1710 09-16-07 19:32 com/simontuffs/onejar/Boot$1.class 1915 09-16-07 19:32 com/simontuffs/onejar/Boot$2.class 1418 09-16-07 19:32 com/simontuffs/onejar/Boot$3.class 16249 09-16-07 19:32 com/simontuffs/onejar/Boot.class 1454 09-16-07 19:32 com/simontuffs/onejar/Handler$1.class 863 09-16-07 19:32 com/simontuffs/onejar/Handler.class 259 09-16-07 19:32 com/simontuffs/onejar/IProperties.class 868 09-16-07 19:32 com/simontuffs/onejar/JarClassLoader$1.class 974 09-16-07 19:32 com/simontuffs/onejar/JarClassLoader$ByteCode.class 25169 09-16-07 19:32 com/simontuffs/onejar/JarClassLoader.class 0 06-13-08 16:43 META-INF/ 210 06-13-08 16:43 META-INF/MANIFEST.MF 0 05-28-08 02:53 lib/ 318595 02-16-08 03:40 lib/AppFramework.jar 47160 03-07-08 23:16 lib/NetUtil.jar 68438 02-28-08 16:02 lib/WiiRemoteJ.jar 485219 05-28-08 02:31 lib/bluecove-2.0.3-20080528.003139-81.jar 70787 01-06-08 14:54 lib/miglayout15-swing.jar 11103 09-20-07 18:29 lib/swing-worker.jar 1748 02-22-08 00:44 one-jar-license.txt 0 06-13-08 16:43 main/ 156983 06-13-08 16:38 main/WiimoteWhiteboard.jar 59687 06-12-08 19:43 lib/bluecove-gpl-2.0.3-20080612.174321-73.jar -------- ------- 1271877 25 filesAny hint? Thanks!
Hi, I replied to you on bluecove-users. Let’s continue the discussion there.
Uwe