Android & Linux
CMUX Driver User Guide
Rev. Android&Linux_CMUX_Driver_User_Guide_V1.1
Date: 2015-04-07
www.quectel.com
Android & Linux CMUX Driver User Guide
Our aim is to provide customers with timely and comprehensive service. For any
assistance, please contact our company headquarters:
Quectel Wireless Solutions Co., Ltd.
Office 501, Building 13, No.99, Tianzhou Road, Shanghai, China, 200233
Tel: +86 21 5108 6236
Mail:
[email protected]Or our local office, for more information, please visit:
l
http://www.quectel.com/support/salesupport.aspx
t e
For technical support, to report documentation errors, please visit:
c l
http://www.quectel.com/support/techsupport.aspx
a
Or Email: [email protected]
GENERAL NOTES
u e n t i
QUECTEL OFFERS THIS INFORMATION AS A SERVICE TO ITS CUSTOMERS. THE INFORMATION
Q ide
PROVIDED IS BASED UPON CUSTOMERS’ REQUIREMENTS. QUECTEL MAKES EVERY EFFORT
TO ENSURE THE QUALITY OF THE INFORMATION IT MAKES AVAILABLE. QUECTEL DOES NOT
MAKE ANY WARRANTY AS TO THE INFORMATION CONTAINED HEREIN, AND DOES NOT ACCEPT
f
ANY LIABILITY FOR ANY INJURY, LOSS OR DAMAGE OF ANY KIND INCURRED BY USE OF OR
RELIANCE UPON THE INFORMATION. ALL INFORMATION SUPPLIED HEREIN IS SUBJECT TO
n
CHANGE WITHOUT PRIOR NOTICE.
o
COPYRIGHT
C
THIS INFORMATION CONTAINED HERE IS PROPRIETARY TECHNICAL INFORMATION OF
QUECTEL CO., LTD. TRANSMITTABLE, REPRODUCTION, DISSEMINATION AND EDITING OF THIS
DOCUMENT AS WELL AS UTILIZATION OF THIS CONTENTS ARE FORBIDDEN WITHOUT
PERMISSION. OFFENDERS WILL BE HELD LIABLE FOR PAYMENT OF DAMAGES. ALL RIGHTS
ARE RESERVED IN THE EVENT OF A PATENT GRANT OR REGISTRATION OF A UTILITY MODEL
OR DESIGN.
Copyright © Quectel Wireless Solutions Co., Ltd. 2015. All rights reserved.
Android & Linux_CMUX_Driver_User_Guide Confidential / Released 1/7
Android & Linux CMUX Driver User Guide
About the Document
History
Revision Date
t el Author Description
c l
1.0 2014-05-21 Joe WANG Initial
e ia
1.1 2015-04-07 Kent XU Added applicable modules
u n t
Q ide
n f
Co
Android & Linux_CMUX_Driver_User_Guide Confidential / Released 2/7
Android & Linux CMUX Driver User Guide
Contents
About the Document ................................................................................................................................... 2
Contents ....................................................................................................................................................... 3
1 Introduction .......................................................................................................................................... 4
2 System Integration ............................................................................................................................... 5
2.1. The Structure of CMUX ............................................................................................................. 5
2.2. Driver Integration ....................................................................................................................... 5
2.2.1. Get CMUX Driver Source Code ....................................................................................... 5
l
2.2.2. Compile Driver ................................................................................................................. 5
2.2.3. Parameters Instruction ..................................................................................................... 6
t e
3 Appendix A Reference......................................................................................................................... 7
e c ia l
u n t
Q ide
n f
Co
Android & Linux_CMUX_Driver_User_Guide Confidential / Released 3/7
Android & Linux CMUX Driver User Guide
1 Introduction
This document mainly introduces how to integrate the CMUX driver into Android or Linux OS for Quectel
wireless module.
This document is applicable to Quectel GSM and WCDMA modules.
t el
e c ia l
u n t
Q ide
n f
Co
Android & Linux_CMUX_Driver_User_Guide Confidential / Released 4/7
Android & Linux CMUX Driver User Guide
2 System Integration
This chapter describes the structure of Android and Linux CMUX driver and explains how to integrate the
CMUX driver into Android or Linux OS for Quectel wireless module.
l
2.1. The Structure of CMUX
t e l
The multiplexer provides several virtual connections between TE and MS. TE and MS communicate with
c
each other through the virtual channel. And each channel between TE and MS is called Data Link
e ia
Connection (DLC) and established separately and sequentially. Each DLC may have individual flow
t
control procedures for buffer management and the aggregate link also has overall flow control
u
mechanisms.
Q ide n
TE MS
TE Process MS Process
Convergence Convergence
f
Layer Layer
n
Multiplexer Multiplexer
Layer Layer
o
Physical Layer Physical Layer
Serial link Serial link
C
Figure 1: CMUX Structure
2.2. Driver Integration
2.2.1. Get CMUX Driver Source Code
Quectel provides the CMUX source code, please contact Quectel technical support to get it.
2.2.2. Compile Driver
CMUX driver only has one file named “gsm0710muxd_bp.c”, you can use the following command to
Android & Linux_CMUX_Driver_User_Guide Confidential / Released 5/7
Android & Linux CMUX Driver User Guide
compile CMUX driver:
"gcc -o gsm0710muxd_bp gsm0710muxd_bp.c -lpthread"
For embedded system, you should use cross compiler to compile.
2.2.3. Parameters Instruction
1. Here are all parameters for CMUX driver:
-d: Fork, get a daemon [yes]
-v: Set verbose logging level. 0 (Silent) - 7 (Debug) [6]
l
-s: <serial port name>: Serial port device to connect to [/dev/ttyS0]
e
-c: <hardware flow control>: Hardware flow control [disabled]
t
-t: <timeout>: Reset modem after this number of seconds of silence [0]
l
c
-P: <pin-code>: PIN code to unlock SIM [-1]
-p: <number>: Use ping and reset modem after this number of unanswered pings [0]
e ia
-b: <baudrate>: Mode baudrate [115200]
t
-m: <modem>: Mode (basic, advanced) [basic]
u
-f: <framsize>: Frame size [130]
n
-n: <number of ports>: Number of virtual ports to create, must be in the range of 1-31 [3]
Q ide
-o: <output log to file>: Output log to /tmp/gsm0710muxd.log [no]
-h: Show this help message and show current settings.
Parameters in “[]” are the default values.
n f
2. Here are several parameters which are used frequently:
o
-s: <serial port name>: Serial port device to connect [/dev/ttyS0]
-n: <number of ports>: Number of virtual ports to create, must be in the range of 1-31 [3]
-b: <baudrate>: Mode baudrate [115200]
C
3. Example of how to run CMUX driver:
gsm0710muxd_bp -s /dev/ttyS0 -b 115200 -n 3
When CMUX driver is working, it will create several pts files in /dev/pts, and also create several links in
/dev/chn. It is better to use links than pts files, because links are always named from 1 to N (N is the
parameter you set), while pts files maybe not.
4. Debug
-v: Set verbose logging level. 0 (Silent) - 7 (Debug) [6]
If debug is needed, set parameter “-v” value to 7 to print all debug message.
Android & Linux_CMUX_Driver_User_Guide Confidential / Released 6/7
Android & Linux CMUX Driver User Guide
3 Appendix A Reference
Table 1: Terms and Abbreviations
Abbreviation Description
l
DLC Data Link Connection
t e
OS Operating System
c l
TE Terminal Equipment
e ia
MS Mobile Station
u n t
Q ide
n f
Co
Android & Linux_CMUX_Driver_User_Guide Confidential / Released 7/7