How to use x11vnc to 'drive' the N800 from a PC

  1. Mike Cowlishaw

Mike Saunby's port of x11vnc lets one drive the N800 from a PC or laptop. This is useful when a lot of work has to be done on the N800, or for getting screenshots, for demonstrating the device using a LCD projector, etc.

To use it, the installation file and instructions for installation and starting x11vnc can be found at:

http://mike.saunby.googlepages.com/x11vncfornokia7702

(the source is there, too).

You also need a VNC viewer, such as RealVNC, running on the PC or laptop (there are several of these).

Using x11vnc with the N800 has two 'big problems' which make it difficult to use x11vnc for demonstrating the N800 via a laptop and projector:

a. The buttons on the left edge of the screen (the task manager) are not clickable with the mouse makes it almost impossible to 'drive' the device

b. (This one may not be a problem if you don't want to use xterm): In xterm, the keyboard Enter key switches the thumb keyboard (or the stylus keyboard if that is selected) on or off rather than acting as the Enter key (the keypad Enter key works OK on a full-size keyboard, but is not available on most laptops).

Fortunately there is a workaround for both these problems:

a. to Eero Tamminen for this

The problem is caused by the N800 giving priority to pressure information rather than remotely-input mouse clicks. This can be circumvented by disabling pressure information usage, by running the device X server with XInput protocol/extension disabled.

To do this, modify the file /etc/init.d/x-server by adding the option "-extension XInputExtension" to the end of the ARGS="...." string, preceded by a space, and then rebooting the device.

(I did this by copying the file to the home directory, editing it with vi and copying it back.)

Eero warns: "Note that if you make a mistake and X server doesn't start, your device could end up in a reboot loop."

Paul Tap: At my N810 this disables the function of the Fn key (so no numbers and other signs available in xterm and other apps.). This is easily resolved by restoring the old file. I keep 2 versions now in /root, x-server.orig and x-server.vnc, which I can copy to /etc/init.d/x-server via ssh login.

b. For this I swapped the mapping of the two Enter keys in the vnc viewer. Oddly, I couldn't find a viewer that allowed one to configure the key mapping without rebuilding, so I rebuilt RealVNC. To do this for Windows, you need Microsoft C/C++ Visual Studio and also the source of RealVNC, which is available at: http://www.realvnc.com/products/free/4.0/download.html and other sources are there, too.

All that needs to be changed is two lines in keymap.h (keysymdef.h in Linux). For the Windows case change the line

{ XK_Return,           VK_RETURN, 0 },

to

{ XK_Return,           VK_RETURN, 1 },

and the line

{ XK_KP_Enter,         VK_RETURN, 1 },

to

{ XK_KP_Enter,         VK_RETURN, 0 },

the Linux case the equivalent change should work.

Hope this helps someone!

Mike Cowlishaw

CategoryHowTo

What links here?

sponsored by Nokia Corporation