Symbian3/PDK/Source/GUID-B2F5537B-3F47-5172-8DFA-185CC1CAAD22.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Fri, 22 Jan 2010 18:26:19 +0000
changeset 1 25a17d01db0c
child 3 46218c8b8afa
permissions -rw-r--r--
Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-B2F5537B-3F47-5172-8DFA-185CC1CAAD22"><title>MTP USB Transport Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>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. </p> <section><title>Architecture</title> <p>The two important components of the MTP over USB implementation are the USB Still Image Class Controller and the USB MTP Transport Plug-in: </p> <ul><li id="GUID-8BC23C79-02DB-5478-876C-647C8E4268E3"><p> <b> USB Still Image Class Controller</b>. 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. </p> </li> <li id="GUID-9679F961-BC75-5706-BC95-7F2D5DEF9DCB"><p> <b>USB MTP Transport Plug-in</b>. This Ecom plug-in is loaded by the MTP framework. It interacts with the USB Stack for data transfer. </p> </li> </ul> <p>The USB Manager and the USB Stack are components of <xref href="GUID-DD13AA8E-BDAD-57EC-81EC-49C8D6D30A86.dita">Symbian Shortlink Services</xref>. They are responsible for setting up and managing USB connections for different USB devices. </p> <p>MTP over USB can be initiated in two ways: </p> <p> <b>Using the Symbian USB Manager</b>  </p> <fig id="GUID-E46895A4-8DCC-5E80-B024-609ED1CC32B3"><image href="GUID-94D270B4-B1CB-53A0-BC60-8B8C64BDF98A_d0e601888_href.jpg" placement="inline"/></fig> <ol id="GUID-09D421B7-1579-5B24-BE0C-1D034ABA626F"><li id="GUID-C62279DC-C4DD-529E-AF39-5649ADE5A7D4"><p>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 <xref href="GUID-9EC375CD-A021-5DD0-93A9-748AC80356EE.dita">Enabling MTP over USB</xref>. </p> </li> <li id="GUID-BDF9247F-5904-5427-948F-9AFBF8038CE3"><p>The USB Still Image Class Controller calls the MTP Client API to send the <codeph>StartTransport</codeph> command to the MTP Framework. </p> </li> <li id="GUID-586D82E9-59A3-5225-A66A-AC0009DE6EE7"><p>The MTP Framework loads the USB MTP Transport plug-in. </p> </li> <li id="GUID-1A94C75D-3386-5F1D-9C8A-DD3B77F41198"><p>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). </p> </li> <li id="GUID-7D1EDA4C-1571-54BF-89AC-F961E7CD0245"><p>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. </p> <p>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 <xref href="GUID-32453B7B-4596-50FB-A7B8-04D53B41B7A1.dita">Configuring Multiple Transport</xref>. </p> <p> </p> </li> </ol> <p> <b>Using a user application</b>  </p> <fig id="GUID-B9CF75C9-F85C-54AD-9B4F-C0C2E0EB8B86"><image href="GUID-58135EB2-5DFF-599A-B17C-B1DD60B4A750_d0e601939_href.jpg" placement="inline"/></fig> <p>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. </p> <p>For more information about how to enable MTP over USB through a user application, see <xref href="GUID-9EC375CD-A021-5DD0-93A9-748AC80356EE.dita">Enabling MTP over USB</xref>. </p> </section> </conbody><related-links><link href="GUID-9EC375CD-A021-5DD0-93A9-748AC80356EE.dita"><linktext>Enabling MTP over USB</linktext> </link> <link href="GUID-32453B7B-4596-50FB-A7B8-04D53B41B7A1.dita"><linktext>Configuring Multiple
                Transports</linktext> </link> <link href="GUID-DE2E64A5-417A-538C-904B-6D498BB55273.dita"><linktext>USB Manager</linktext> </link> </related-links></concept>