Maemo PC Connectivity provides tools to access the desktop of a remote machine from a local machine over network. That is, you can get the desktop GUI of your maemo device displayed at your host PC and vice-versa. For that, you need to install maemo-pc-connectivity meta package on maemo device and host-pc-connectivity package on host PC (Linux, Windows and Mac OS). Bellow, it will be described how to use the remote desktop tools available on Maemo PC Connectivity. To simplify, it is assumed that you already have a Usb network between maemo device and host PC.
With X11VNC server, it is possible to share the GUI (Graphical User Interface) of your maemo device with your host PC. That is, you can access the desktop of your maemo device remotely (from host PC) as you were physically in front of it. Bellow, it will be described how to configure your maemo device and host PC.
You can configure X11VNC server through PC Connectivity Manager applet, as described:
Also, you can start X11VNC server manually from ``Extras'' menu.
As X11VNC server is not launched automatically when you turn the maemo device on, you need to start it following the steps above. You can use PC Connectivity Manager applet or X11VNC shortcut from ``Extras'' menu.
If you installed host-pc-connectivity package, your Linux host PC already has a VNC client.
Otherwise, you should install the VNC client manually:
$ sudo apt-get install xtightvncviewer
You can launch your maemo device through xtightvncviewer application giving its IP address:
$ xtightvncviewer 192.168.2.15
If you installed host-pc-connectivity package, your Windows host PC already has a VNC client.
Otherwise, you can download and install TightVNC manually from here. You can launch your maemo device as described bellow:
The host-pc-connectivity package already installs a VNC client on your Mac OS host PC. So, your host PC is ready.
Otherwise, you can download and install TightVNC manually:
$ mkdir ~/tightvnc $ mv tightvnc-1.3.10_javabin.tar.gz ~/tightvnc $ cd ~/tightvnc $ tar -zxvf tightvnc-1.3.10_javabin.tar.gz
You can launch your maemo device through TightVNC application giving its IP address and port:
$ java VncViewer HOST 192.168.2.15 PORT 5900
The current X11VNC server (0.9.3-maemo4) available on Diablo may crash if a key is pressed on host PC keyboard and there is no mapping for that key on maemo device. A workaround is to add manually missing key mappings as described below:
$ sudo apt-get install x11-utils
KeyPress event, serial 31, synthetic NO, window 0x2000001, root 0x3f, subw 0x0, time 2488134890, (-257,171), root:(294,445), state 0x10, keycode 48 (keysym 0xfe51, dead_acute), same_screen YES, XLookupString gives 2 bytes: (c2 b4) "´" XmbLookupString gives 0 bytes: XFilterEvent returns: True
Exec=/usr/bin/x11vnc -display :0 -nowf -noxdamage -noscr -remap dead_acute-None,<key_name_1>-None,<key_name_N>-None
RDESKTOP is a client for remotely accessing your Windows host PC from your maemo device. Bellow, it will described how to enable Remote Desktop on your Windows host PC and how to use your maemo device to access the desktop of your Windows host PC.
You must enable the Remote Desktop feature on your Windows host PC so that you can control it remotely from maemo device. For that, you must be logged on as an administrator or a member of the Administrators group to enable Remote Desktop on your Windows host PC. To setup your Windows host PC:
Note: if you are running Windows XP Service Pack 2 (SP2) and you enable Remote Desktop, Windows Firewall will be automatically configured to allow Remote Desktop connections to your host PC. However, Remote Desktop will not work if you have Windows Firewall configured to allow no exceptions. To allow exceptions in Windows Firewall, in the control panel open the ``Security Center'', click ``Windows Firewall'' and clear the check-box next to ``Don't allow exceptions''.
Once you installed maemo-pc-connectivity meta package, the maemo device is ready to access your Windows host PC through RDESKTOP application:
$ rdesktop-cli -u <windows_user> -p <windows_password> <windows_ip_address>
You should pass the user name and password to access the given Windows host PC
With X Tunneling, it is possible to execute an application on your maemo device and display its GUI on your host PC over SSH and vice-versa. Next, it will be described how to forward X11 GUI in both ways:
On host PC:
$ Xephyr :3 -ac -dpi 96 -screen 800x480x16 -host-cursor & $ ssh -l <maemo_device_user> -R 6002:<host_pc_ip>:6003 <maemo_device_ip> $ export DISPLAY=:2 $ /usr/lib/sapwood/sapwood-server & $ <run_application>
On maemo device:
$ ssh -l <host_pc_user> -R 6000:<maemo_device_ip>:6000 -X <host_pc_ip> $ <run_application>