Documentation/Maemo PC Connectivity Tutorial/Introduction

The Maemo PC Connectivity project aims to make easier communication between a Maemo device and a host PC. For this, it provides a set of tools to simplify tasks like connection establishment, connection sharing, remote access, file sharing and transfer.

Maemo PC Connectivity fully supports the Maemo Fremantle platform and devices (such as N900) and the Maemo Diablo platform and devices (such as N800 and N810).

Photo of N900 with open hardware keyboard
Figure 1.1: Maemo device - N900

Maemo PC Connectivity target users are Maemo developers as they must use it to set up their Maemo development environment. The Maemo development environment consists of a Maemo device and host PC running Scratchbox and Maemo SDK (and possibly Eclipse IDE) integrated together with services provided by Maemo PC Connectivity. Maemo PC Connectivity is targeted also for those non-developers who are able to use provided tools and services from command line interfaces, as all services available do not yet have a simple enough Graphical User Interface for end users.

Maemo PC Connectivity supports USB Networking, Bluetooth and WLAN connectitivy types between a Maemo device and a remote machine. USB Networking is recommended as, performance wise, it provides the best connectivity for networking. All services that Maemo PC Connectivity provides can be used with all connectivity types assuming that the host PC accessing services has the required clients available.

Some basic services provided by Maemo PC Connectivity and Host PC Connectivity to integrate a Maemo device and host PC include:

Connection establishment
By using Maemo PC Connectivity configuration applets, it is possible to easily establish a connection over USB, Bluetooth or WLAN, and to configure services between a Maemo device and a host PC.
Connection sharing
By using Maemo PC Connectivity applets and services installed to the Maemo device, it is possible to easily share connection over USB, Bluetooth or WLAN both ways, that is from a Maemo device to a host PC or from a host PC to a Maemo device.
Secure Shell
SSH allows data to be exchanged using a secure channel between two networked devices.
Scratchbox Remote Shell
SBRSH is a remote command execution system similar to rsh and ssh. It is designed with slow devices and Scratchbox's special requirements in mind.
SSH File System
SSHFS is a file system client based on the SSH protocol. It allows local mounting of a remote file system via SSH.
Network File System
NFS allows file system sharing over a network.
Samba
provides shared access to files, printers, serial ports, and miscellaneous communications between nodes on a network. Most usage of Samba involves host PCs running Microsoft Windows.
Virtual Network Computing
VNC is a graphical desktop sharing system that allows a host PC to remotely control a Maemo device.
Rdesktop
is a client for remotely accessing Windows desktops from a Maemo device.
X Tunneling over SSH
allows the forwarding of X11 desktop from a Maemo device to a host PC.
SSH File Transfer Protocol
SFTP is a network protocol that provides a secure file transfer over a network using SSH.
Secure Copy
SCP is another way to transfer files between a local and a remote host using SSH.
Rsync
is a utility that provides fast incremental file transfer, that is, it transfers only the bytes inside files that have been changed since the previous transfer.