I think this has been around for a while now but this is the first time I’ve
seen the video of it.
Many laptop owners carry a spare mouse because they dont like the built in control, or because they just like to use a mouse. This adds weight, things to remember etc when you go anywhere. Also, if you use somebody elses laptop you may not be able to use their pad at all! I often setup software for somebody else on a laptop and curse the wigglestick on the keyboard that they fumble on with because they are that slow anyway but it holds me up. If I had a mouse with me at all times that would be amazing. So, the NokiaMouse was born.
Most phones now have a camera and can run Java, there is no reason that some software couldnt be written to watch for movement in the camera, and translate that into mouse signals for the PC. Bluetooth could be used to send the data to the PC.
So there was my challenge, a java program that took multiple frames from the nokia camera, translated that into direction and speed and sent it to the PC as mouse movements.
I dont intend to release this code as im trying to develop the Bluetooth HID before any kind of release, but it means any laptop owner need not carry a spare mouse or use the crappy touchpad!
Things didnt go entirely smoothly of course. The first thing everybody is probably saying is, but the camera only shows black when its flat on the mousepad! You are of course right, Light is needed. My temporary solution is to hold the phone about .6cm above the pad, letting light in the side. My camera picks up enough to see at this distance.
The initial code didnt use bluetooth, but a usb cable to the phone as I wasnt sure about accessing the bluetooth interface directly in java or how to make a real BT Mouse HID so it would pair as if it was a mouse. For now custom driver code runs on the PC and the phone, and data is sent over a usb lead.
After giving up on the idea of a proper mouse HID I used the bluetooth to just link the phone as normal and send the data over the Nokia driver to a special driver on the PC again, this isnt as convenient as the original plan as it needs software on the PC as well as the phone, if I can be bothered ill develop a proper HID mouse bluetooth driver for the nokia, this would mean that it could be used on ANY bluetooth pc without installing software!
A lot of thought went into the interface. Originaly the phone was the right way up with the screen at the top, but this put the buttons at the bottom! Not a good shape for a mouse. So, the phone was inverted with the screen where your palm would rest. This makes the keypad available for buttons. Not surprisingly I used three buttons, Star, Zero and Hash (pound for US’ites). Originally I intended to make the volume up/down on the side into a scroll wheel but it seems that its just not positioned right when the phone is upside down, and I decided that left right buttons were more important than scroll wheel.