Page 3
Do not operate the Sierra Wireless modem in any aircraft, whether the aircraft is on the ground or in flight. In aircraft, the Sierra Wireless modem MUST BE POWERED OFF. When operating, the Sierra Wireless modem can transmit signals that could interfere with various onboard systems. Note: Some airlines may permit the use of cellular phones while the aircraft is on the ground and the door is open. Sierra Wireless modems may be used at this time. The driver or operator of any vehicle should not operate the Sierra Wireless modem while in control of a vehicle. Doing so will detract from the driver or operatorʹs control and operation of that vehicle. In some states and provinces, operating such ...
Page 4
Mini Card / AirCard / Compass USB Driver Developer’s Guide REVENUE OR ANTICIPATED PROFITS OR REVENUE ARISING OUT OF THE USE OR INABILITY TO USE ANY SIERRA WIRELESS PRODUCT, EVEN IF SIERRA WIRELESS AND/OR ITS AFFILIATES HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR THEY ARE FORESEEABLE OR FOR CLAIMS BY ANY THIRD PARTY. Notwithstanding the foregoing, in no event shall Sierra Wireless and/or its affiliates aggregate liability arising under or in connection with the Sierra Wireless product, regardless of the number of events, occurrences, or claims giving rise to liability, be in excess of the price paid by the purchaser for the Sierra Wireless product. Patents Portions of this product may be covered by some or all of the following US patents: 5,515,013 5,629,960 5,845,216 5,847,553 5,878,234 5,890,057 5,929,815 6,169,884 6,191,741 6,199,168 6,339,405 6,359,591 6,400,336 6,516,204 6,561,851 6,643,501 6,653,979 6,697,030...
Page 5
QUALCOMM is a registered trademark of QUALCOMM Incorporated. Used under license. Other trademarks are the property of the respective owners. Contact Information Sales Desk: Phone: 1-604-232-1488 Hours: 8:00 to 5:00 Pacific Time sales@sierrawireless.com E-mail: Post: Sierra Wireless 13811 Wireless Way Richmond, BC Canada V6V 3A4 Fax: 1-604-231-1109 www.sierrawireless.com Web: Consult our website for up‐to‐date product descriptions, documentation, application notes, firmware upgrades, trouble‐ shooting tips, and press releases: www.sierrawireless.com Revision History Revision...
Page 6
Mini Card / AirCard / Compass USB Driver Developer’s Guide Revision Release Changes number date Sep 2008 - Changed document title (removed ‘Embedded Module’, added ‘Compass’ - Added MC8790, AC8790V, C597, C888 - Reorganized and updated Table 1-1, “Devices described in this guide,” on page 9 - Updated Mux, Non-Mux, and Hybrid-Mux sections in Chapter 2 to reflect details of new devices, including NMEA and Mass Storage.
1: Introduction Sierra Wireless manufactures several embedded modules, PC Cards, ExpressCards, and USB modems. Each of these devices includes a USB interface for communication with a host device. The USB interface is based on a QUALCOMM chipset. Table 1-1: Devices described in this guide Network Device Device QUALCOMM Standards chipset Type CDMA AC595 MSM6800 IS-95A / CDMA 1X 1xEV-DO Rev-0 / Rev-A AC595U AC597E MSM6800A C597 MC5725 MSM6800 MC5725V MC5727 MSM6800A AC875...
AC59X = AC595 / AC595U / AC597E • AC8XX = AC875 / AC875U / AC880 / AC880E / AC880U / AC881 / AC881U • C59X = C597 • C8XX = C885 / C 888 Purpose of this guide This guide is intended for use when designing non‐Windows Note: Sierra Wireless provides drivers for these modules. It describes the following infor‐ drivers and a connection ® mation: manager application (Watcher for Windows 2000, Windows XP Services (protocols) available over the USB connection (AT/ • ™ and Windows Vista PPP, HCnSIP, CnS, DM, NMEA, Mass storage)
Introduction Related documents Related and supporting documents and products include: Table 1-2: Related documentation Document title Related content UMTS Modems Supported AT This document lists the standard AT commands supported Commands (Document by the MC87XX, AC8XX, and C885. For descriptions of 2130617) standard AT commands, see AT Command Set for User Equipment (UE) (Release 6).
Page 12
Mini Card / AirCard / Compass USB Driver Developer’s Guide Proprietary and Confidential 2130634...
2: USB architecture This chapter describes supported driver architectures for data transfer, and the physical USB interface for each architecture. USB standards compliance The AC59X, AC8XX, C59X, C8XX, MC572X, and MC87XX comply with USB 2.0 standards, including the following: USB slave only • • USB 2.0 (backwards compatible with USB 1.1) • Full‐speed 12 Mb/s and low‐speed 1.5 Mb/s data transfer rates. • High‐speed 480 Mb/s is supported by C8XX, MC8785V, MC8790, MC8790V, MC8791V, and MC8792V. Standard USB flow control • Standard USB power management—Suspends the USB bus • when it is idle, to conserve power. The architecture for these devices is derived from the Abstract Control Model (ACM) described in the Universal Serial Bus Class Definitions for Communication Devices, Version 1.1 (CDC) specification. To best support advanced power management, a modified (non‐composite) endpoint / interface model combines the Communication and Data Interface pipes with two proprietary pipes (HIP and NMEA/Data1) into one vendor‐specific interface. Note: It is assumed that you Note: These devices do not claim any CDC classes in the descriptors have a good understanding of and do not support functional descriptors.
Mini Card / AirCard / Compass USB Driver Developer’s Guide over a second pair of endpoints. If supported, Mass Storage is implemented over a third set of endpoints. USB endpoints USB endpoints are uniquely addressable portions of a USB device used to transfer information between the host and module. Each defined endpoint is a unidirectional link from the modem to the host (IN) or from the host to the modem (OUT). USB descriptors Each physical endpoint is defined in (page 39) Note: The logical endpoint and is referred to in this document by a logical endpoint numbers in this guide are used number (for example, endpoint ‘2’) and direction (IN or OUT). for ease of reading. When developing your drivers, you Where bidirectional communication is required for a specific ...
Page 15
Primary data channel (AT/PPP) 4 IN / OUT (Bulk) HIP (carrying CnS and DM) Note: If required, OEMs can consult with Sierra Wireless to discuss how to change the default data service. Possible service types are DM, HIP (carrying CnS), and HIP (carrying CnS and DM).
Page 16
4 OUT and DM), or service on endpoint 4 is Note: The default data service can HIP (CnS & DM). be changed if required. Contact Sierra Wireless for details. Interface 0 NMEA NMEA 5 IN 5 OUT (C597 only)
Page 17
USB architecture Table 2-2: AC8XX / MC8775–MC8781 — Non-MUX mode endpoints Endpoint Supported service 0 (Control) Management element 1 IN (Interrupt) Notification element Interrupt used by the module to flow control the host over each supported data channel (AT, HIP, Data 1). 2 IN / OUT (Bulk) Data 1 (PPP) (Primary PPP context) Also supports AT commands to set up the PPP...
Page 18
Mini Card / AirCard / Compass USB Driver Developer’s Guide Figure 2-2: AC8XX / MC8775–MC8781 — Non-MUX mode endpoints Host Device AC8XX / MC8775-MC8781 The host-side driver interface Management accepts and interprets Control Element incoming and outgoing data for each supported Interrupt service (AT, HIP, Data 1).
Page 19
USB architecture Table 2-3: C8XX / MC8785V to MC8792V — Non-MUX mode endpoints Endpoint Supported service 0 (Control) Management element 1 IN / OUT (Bulk) — Interface 0 2 IN / OUT (Bulk) — QUALCOMM DM diagnostics Interface 1 3 IN / OUT (Bulk) — NMEA Interface 2 Notification element...
Page 20
Mini Card / AirCard / Compass USB Driver Developer’s Guide Table 2-3: C8XX / MC8785V to MC8792V — Non-MUX mode endpoints (Continued) Endpoint Supported service 12 IN / 8 OUT (Bulk) — (C8XX only) Mass storage (when enabled) Interface 7 Note: You can access the micro-SD device in TRU-Install Note: TRU-Install mode mode (Interface 0) and modem mode (Interface 7).
Page 21
USB architecture Figure 2-3: C8XX / MC8785V to MC8792V — Non-MUX mode endpoints Host Device C8XX / MC8785V to MC8792V USB interface Control channel Management Control Element Interface 0 1 IN HIP (Carrying CnS) HIP (carrying CnS) 1 OUT Interface 1 2 IN 2 OUT Interface 2...
Mini Card / AirCard / Compass USB Driver Developer’s Guide MUX (multiplexing) mode MUX mode, based on the 3GPP 27.010 multiplexer protocol, Note: Implementation of drivers defines a framework for supporting several simultaneous for this protocol requires a sessions over a single asynchronous serial interface using USB detailed understanding of the endpoints that vary by module type: 27.010 requirements. See Terminal Equipment to User • AC59X / C 59X / M C572X — T able 2‐4 and Figure 2‐4 Equipment (TE-UE) •...
Page 23
USB architecture Figure 2-4: AC59X / C59X / MC572X—MUX mode endpoints and DLCI control channel assignments Host Device AC59X / C59X / MC572X The host device implements interface MUX/DeMUX to extract data Management from each DLCI channel. Control Element The representation of DLCIs Interrupt is the responsibility of the host Interface 0...
Page 24
4—NMEA (AC875, AC875U, AC88X, MC8775V, MC8780, MC8781) · 5—Data 1 (PPP) · 6—Data 2 (future use) · 7—Data 3 (future use) Note: NMEA must be enabled by Sierra Wireless, and may not be the default shipping configuration. Proprietary and Confidential 2130634...
Page 25
USB architecture Figure 2-5: AC8XX / MC8775 to MC8781 — MUX mode endpoints and DLCI control channel assignments Host Device AC8XX / MC8775 to MC8781 interface The host device implements MUX/DeMUX to extract data Management Control from each DLCI channel. Element The representation of DLCIs Interrupt...
Page 26
5—Data 1 (PPP1) · 6—Data 2 (PPP2) · 7—Data 3 (PPP3) Note: NMEA must be enabled by Sierra Wireless, and may not be the default shipping configuration. 2 IN / 2 OUT (Bulk) — Not used Interface 1 3 IN / 3 OUT (Bulk) —...
Page 27
USB architecture Table 2-6: C8XX / MC8785V to MC8792V — MUX mode endpoints and DLCI control channel assignments Endpoints Supported service 11 IN / 7 OUT (Bulk) — Not used Interface 6 12 IN / 8 OUT (Bulk)— (C8XX only) Mass storage (when enabled) Interface 7 Note: You can access the micro-SD device in TRU-Install Note: TRU-Install mode...
Mini Card / AirCard / Compass USB Driver Developer’s Guide Hybrid-MUX (Hybrid multiplexing) mode Hybrid‐MUX mode is a proprietary architecture implemented on devices using the MSM6800 / M SM6800A chipsets—the AC59X, C59X, MC5725, MC5725V, and MC5727. Intended to reduce overhead on data packets and to improve Note: Implementation of drivers performance, this mode: for this protocol requires a detailed understanding of the • Enables AT/Data service over endpoints 2‐IN and 2‐OUT 27.010 requirements. See MUXes all other services over endpoints 4‐IN and 4‐OUT.
Page 29
USB architecture Table 2-7: AC59X / C59X / MC572X—Hybrid-MUX mode endpoints and DLCI control channel assignments Endpoints Supported service 4 IN / OUT (Bulk) Data • DLCI Channels: · 0—27.010 Control · 2—DM · 3—HIP (carrying CnS) · 4—NMEA (supported only on modules with MSM6800 / MSM6800A chipsets, and enabled by default only on MC5725 / MC5725V / MC5727)
Page 30
Mini Card / AirCard / Compass USB Driver Developer’s Guide Figure 2-7: AC59X / C59X / MC572X—Hybrid-MUX mode endpoints and DLCI control channel assignments Host Device AC59X / C59X / MC572X The host device implements interface Hybrid MUX/DeMUX to Management extract data from each DLCI Control Element...
USB architecture Activating / Deactivating MUX mode After a USB connection has been established between the host and the module, activate and deactivate MUX mode using the following methods: Table 2-8: Methods for activating / deactivating MUX mode Module Activate MUX mode Deactivate MUX mode type AC59X / • Vendor-specific USB • Vendor-specific USB commands C59X / commands Use the Close Down Service Request over the •...
Page 32
Mini Card / AirCard / Compass USB Driver Developer’s Guide Proprietary and Confidential 2130634...
3: Services This chapter describes the services (logical protocols) supported by the module for the transfer of data and control information. These services include: USB‐standard Control, page 33 • USB Interrupt, page 33 • AT/PPP, page 33 • • HIP (Host Interface Protocol), page 34 CnS (Control and Status), page 35 • DM (QUALCOMM Diagnostic Monitoring), page 35 • • NMEA (National Marine Electronics Association), page 36 • (MC87XX / AC8XX / C8XX only) Data 1, Data 2, Data 3 (Additional PPP), page 37 (C59X / C8XX only) Mass Storage, page 38 • USB-standard Control The standard control channel (management element) is imple‐ mented on endpoint 0 (as required by the USB and ACM speci‐ fications). This supports the use of selected USB interface and power management, ACM, and Sierra Wireless’ proprietary commands and requests. For a list of supported CDC / ACM messages, see Appendix C on page 71. USB Interrupt The interrupt channels (notification elements) are imple‐ mented on the following endpoints: C8XX ...
2-IN / 2-OUT (Data 1), and 5-IN / 5-OUT (AT). AirCard modems may need to be reconfigured using AT!NVPORTMAP. Note: The Heatherington escape method (TIES) is not supported. This channel supports the transfer of AT commands for module control, and TCP/IP (or other transport protocol) data via PPP for network communication. For lists of supported AT commands, see: AC595 / A C595U / M C572X • · AT Command Set for User Equipment (UE) (Release 6) · AT Command Reference (Document 2130620) ·...
DM). If required, the default configuration for these devices can be changed to DM, HIP (carrying CnS), or HIP (carrying CnS and DM). Contact Sierra Wireless for details. AC8XX, MC8775, MC8775V, MC8780, MC8781 —In non‐MUX Note: In boot and hold mode, •...
Mini Card / AirCard / Compass USB Driver Developer’s Guide Note: The default non-MUX data service (on endpoints 4-IN and 4-OUT) is HIP (carrying CnS and DM) for AC59X, C59X, and MC572X. The default can be changed, if required, to DM, HIP (carrying CnS), or HIP (carrying CnS and DM).
Services Note: The modem’s default shipping configuration may include NMEA support. For those modems that support NMEA, the default NMEA channel is on for MC5725 / MC5725V / MC5727, and off for all others. This channel is used to transfer GPS receiver data (NMEA‐0183 formatted ‘sentences’) between the module and the host for use in Location‐Based Services (LBS) applications. Data 1, Data 2, Data 3 (Additional PPP) (AC8XX ...
Mini Card / AirCard / Compass USB Driver Developer’s Guide Mass Storage (C59X / C 8XX only) In modem mode (non‐MUX, MUX, Hybrid‐MUX), the module can be configured to add a mass storage device using the following endpoints: C59X — E ndpoints 6‐IN and 7‐OUT (Interface 1) • C8XX — E ndpoints 12‐IN and 8‐OUT (Interface 7) • In TRU‐Install mode, the mass storage device uses the following endpoints: C59X — E ndpoints 6‐IN and 7‐OUT (Interface 0) • C8XX ...
Appendix B Vendor-specific commands The modem’s state can be controlled using vendor‐specific commands over the USB control interface as an alternative to using AT commands. As described in Universal Serial Bus Specification, Rev 2.0, each control transfer includes the following: • Setup stage (host to module) • An optional Data stage (information being transferred host to module, or module to host) Status stage (opposite direction from the previous stage). • Command availability Table B-1: Command availability by device type Command / Description AC8XX C8XX AC59X / MC87XX C59X / MC572X Set Device Power State (page 58) Powers the modem on or off Set Mode Non-MUX (page 59) Tears down the 27.010 MUX protocol on the...
Mini Card / AirCard / Compass USB Driver Developer’s Guide Table B-1: Command availability by device type (Continued) Command / Description AC8XX C8XX AC59X / MC87XX C59X / MC572X Get Mode NMEA (page 66) Query the current status of the NMEA channel Set Host Power State (page 67) Indicate the current power state of the host...
Vendor-specific commands Table B-2: Setup stage Offset Size (bytes) Field Value Value State 0x0000 (D0 state, modem power on) • • 0x0003 (D3 state, modem power off) Index 0x0000 (not used) Length 0x0000 (not used) Status stage (IN) Module returns a zero‐length packet when the Set Device Power State request is completed. Set Mode Non-MUX Tears down the 27.010 MUX protocol on the selected channel.
Mini Card / AirCard / Compass USB Driver Developer’s Guide Set Mode MUX Sets up the 27.010 MUX protocol on the selected channel. Stages: Note: The module moves from Setup (Indicate the channel that will be set to mux) • “Non-MUX” mode to “Transition” Data (Out—Set channel parameters) • mode when it receives the Set Status (In—Indicates completion of operation by the Mode MUX request. The module •...
Vendor-specific commands Get Mode MUX Tells the module to return the 27.010 MUX protocol status for a selected channel. Stages: Setup (Indicate which channel the module should report) • • Data (In—Indicates the current protocol status on the channel) • Status (Out—Indicates that host has received the response) Table B-6: Setup stage Offset Size (bytes) Field Value Request type 0xC0 Request 0x03 Value 0x0000 (not used) Index Channel selection 0x0000 Data • • 0x0001 Control (For MSM-based devices, this indicates Hybrid-MUX mode.) •...
Mini Card / AirCard / Compass USB Driver Developer’s Guide Get NDIS Support Tells the module to indicate if the NDIS driver is supported. Stages: Setup (Indicate that modem should return NDIS support • status) Data (In—Indicates if the NDIS driver is supported) • Status (Out—Indicates that host has received the response) • Table B-8: Setup stage Offset Size (bytes) Field Value Request type 0xC0 Request 0x04 Value 0x0000 (not used) Index 0x0000 (not used) Length...
Vendor-specific commands Get NDIS Preference Tells the module to indicate if the NDIS driver is established or disabled. Stages: Setup (Indicate that module should report NDIS • preference) Data (In—Indicates NDIS preference) • • Status (Out—Indicates that host has received the response) Table B-10: Setup stage Offset Size (bytes) Field Value Request type 0xC0 Request 0x05 Value 0x0000 (not used) Index 0x0000 (not used) Length 0x0002 (length of data in Data stage) Table B-11: Data stage (IN) Offset Size (bytes)
Mini Card / AirCard / Compass USB Driver Developer’s Guide Get Attributes (MC87XX and MSM6800 / M SM6800A‐based devices only) Query the attributes of the firmware image. Stages: • Setup (Indicate that module should report firmware attributes) Data (In—Indicates firmware attributes) • • Status (Out—Indicates that host has received the response) Table B-12: Setup stage Offset Size (bytes) Field Value Request type 0xC0 Request 0x06 Value 0x0000 (not used) Index...
Vendor-specific commands Set Mode NMEA Starts or stops the NMEA data stream over the endpoint used for the NMEA channel. Stages: Setup (Indicates whether to start or stop the stream) • • Status (In—Indicates completion of the operation by the module) Table B-14: Setup stage Offset Size (bytes) Field Value Request type 0x40 Request 0x07 Value NMEA mode 0x0000 Stop • 0x0001 Start • Index 0x0000 (not used) Length 0x0000 (not used) Status stage (IN)
Mini Card / AirCard / Compass USB Driver Developer’s Guide Get Mode NMEA Tells the module to indicate if NMEA streaming is stopped or started. Stages: Setup (Indicates that the NMEA mode status is requested) • Data (In—Indicates the current status of NMEA streaming) • Status (Out—Indicates that host has received the response) • Table B-15: Setup stage Offset Size (bytes) Field Value Request type 0xC0 Request 0x08 Value 0x0000 (not used) Index 0x0000 (not used) Length...
Vendor-specific commands Set Host Power State Tells the module the current power state of the host device. Stages: Setup (Indicates the current power state of the host device) • • Status (In—Indicates completion of the operation by the module) Table B-17: Setup stage Offset Size (bytes) Field Value Request type 0x40 Request 0x09 Value State 0x0000 Host device is awake • • 0x0001 Host device is suspended Index 0x0000 (not used) Length...
Mini Card / AirCard / Compass USB Driver Developer’s Guide Get TRU-Install Information Tells the module to indicate which installation packages are stored on a TRU‐Install™ enabled device. When received, the host can use this information to determine whether to fully enumerate the device as a mass‐storage device to load the installation package, or to re‐enumerate as a modem because the package has already been loaded. Stages: Setup (Indicates request for installation package identifi‐ • cation) Data (In—Includes first portion of the CWE header, • indicating installation package types) Status (Out—Indicates that host has received the response) • Table B-18: Setup stage Offset Size (bytes) Field Value Request type 0xC0 Request 0x0A Value...
Vendor-specific commands Set TRU-Install Mode Tells a TRU‐Install enabled module to enumerate as a mass storage device (to install software) or as a modem (for normal use). Note: The command is ignored if the module does not support TRU- Install, or if it is in a state where the requested mode is not allowed (for example, Boot and Hold mode). Stages: Setup (Indicates requested mode) •...
Need help?
Do you have a question about the AC595 and is the answer not in the manual?
Questions and answers