MTP USB Transport Overview

Symbian supports USB as one of the MTP transport modes. The implementation uses the USB Still Image Capture Device Class v1.0 and is compatible with MTP Enhanced Specification v0.95. This section describes the components and how they are used to establish a connection between a host PC and a Symbian device.

Architecture

The two important components of the MTP over USB implementation are the USB Still Image Class Controller and the USB MTP Transport Plug-in:

  • USB Still Image Class Controller. This Ecom plug-in is loaded by the USB Manager. It helps the MTP Framework to start MTP services, such as loading the USB MTP Transport plug-in and setting up the connection between a Symbian device and a host.

  • USB MTP Transport Plug-in. This Ecom plug-in is loaded by the MTP framework. It interacts with the USB Stack for data transfer.

The USB Manager and the USB Stack are components of Symbian Shortlink Services. They are responsible for setting up and managing USB connections for different USB devices.

MTP over USB can be initiated in two ways:

Using the Symbian USB Manager

  1. When a user application requests USB MTP services, the USB Manager loads the USB Still Image Controller plug-in. For more information about how to enable MTP over USB using the USB Manager, see Enabling MTP over USB.

  2. The USB Still Image Class Controller calls the MTP Client API to send the StartTransport command to the MTP Framework.

  3. The MTP Framework loads the USB MTP Transport plug-in.

  4. The USB MTP Transport plug-in calls the USB Stack API to establish the connection between the host PC (initiator) and the Symbian device (responder).

  5. Once the connection is established, requests and responses can be issued and media object data can be transferred between the host PC and the Symbian device.

    If the connection is active and the MTP Framework receives a request for another transport connection the default behaviour is to reject the request, however this behaviour is configurable. For more information about multiple connections, see Configuring Multiple Transport.

Using a user application

You can write your own application to enable MTP over USB without using the USB Manager. The MTP framework presents a standard Symbian client server interface. Your application calls the MTP Client API. The MTP Framework then loads the USB MTP Transport plug-in.

For more information about how to enable MTP over USB through a user application, see Enabling MTP over USB.

Related tasks
Enabling MTP over USB
Related information
USB Manager