Vous êtes sur la page 1sur 24

Page

Training Presentation
AT Command & ADL
Vuong Thanh Tung
Page
Content
1. Sierra Wireless Products
2. AT commands
3. Open AT

Software Suite Architecture


4. Open AT

OS Functioning Modes
5. ADL Layer
6. Developer Studio
7. Demo




Page


Aircard Mobile Broadband Devices
AirPrime Embedded Wireless Modules
Airlink Intelligent Gateways and Routers
AirVantage M2M Cloud Platform


Page
Sierra AirPrime
Quad-band EDGE connectivity
Easy upgrade path to next-genaretion network
technologies
Controlled via AT commands or ANSI C/C++
Support AirVantage Management Services

Page
AirPrime SL Development Kit
Page
2. AT Commands
Page
Logos
Page
AT Command Structure
Logo
Decription
Syntax
Action command
Read command
Test command
Parameters and Defined Values
Paremeter Storage
Example
Note

Page
Example AT Command
Report Mobile Equipment Errors +CMEE


Description
This command defines the method or returning error
messages.
Synbtax
Action command: AT+CMEE=<n>
Read command: AT+CMEE?
Test command: AT+CMEE=?

Page
Example AT Command (Cont.)
Parameters and Defined Values
<n>: error reporting method
0 disable ME error reports, use only ERROR(default
value)
1 enable +CME ERROR: <err> or +CMS ERROR:
<err>
Parameter Storage
The <n> parameter is stored in EEPROM using AT&W
command. The default value can be restored using
AT&F.
Page
Example AT Command (Cont.)
Examples
Command Responses
AT+CMEE=? +CMEE: (0,1)
OK
AT+CMEE=0 OK
Note: Disable ME error reports, use only ERROR
AT+CMEE=1 OK
Note: Enable +CME ERROR: ,err. or +CMS ERROR:
<err>?
AT+CMEE? +CMEE: 1

Page
AT Commands Interfacce Guide
Volume 1
Describes the AT command features, basic commands, global
configuration, ....
Volume 2
Describes call control commands,...
Volume 3
Describes phonebooks commands, short message commands, sim
toolkit commands, ....
Volume 4
Describes Audio commands, battery commands,...
Appendix

Page
A
p
p
l
i
c
a
t
i
o
n

B
i
n
a
r
y

F
i
r
m
w
a
r
e

B
i
n
a
r
y

3. Open AT

Software Suite 2.x Architecture


Sierra Wireless Proprietary and Confidential. 13
TCU DSP GEAC RF UARTx USB USIM SPIx I2C ADC Flash IT Ctrl DMA DAC RTC KBD GPIOs PWM 32K
CLK
F
i
r
m
w
a
r
e

O
S

P
l
u
g
-
i
n
s

H
W

BSP Device BSP System
BSP GSM & Audio
Device services


GSM stack


Firmware application
ADL layer
Internet plug-
in
Security plug-
in
C-GPS plug-
in
LUA
plug-in

OEM Application
TCP/IP stack


OS & System
Page 14
4. Open AT

OS Functioning Modes
Standalone external application mode

1. External application sends
an AT command.
2. Serial link transmits this
command to the Open AT


Firmware.
3. The command is processed.
4. AT response is sent to the
external application.
5. AT response is received at
serial link.
6. The response is received
by the external application.


























Open AT

Embedded Binary
Open AT


Application
Open AT

OS Library

















AT
3
4










Serial
Link









External
Application
Send AT
Command
Receive
Response
Sierra AirPrime modem
5
2 1
6
Open AT

Firmware
Page 15
Open AT

OS Functioning Modes
Embedded application in standalone mode

1. The Open AT

Application
calls the function to send an
AT command.
2. The library calls the function
from Open AT

Firmware to
process the AT command.
3. The command is processed.
4. The AT response is sent to
the Open AT

Application.
5. The Open AT

OS receives
the response.
6. The response handler is
called in the Open AT


Application.






























Open AT

Embedded Binary
Open AT


Application
Open AT

OS Library

















AT
3 4










Serial
Link
Sierra Wireless AirPrime modem
Open AT

Firmware
adl_atCmdCreate()
5
6 1
2
Page 16
Open AT

OS Functioning Modes
Cooperative mode
1. The external application sends
an AT command.
2. The serial link transmits this
command to the Open AT


Firmware.
3. The Open AT

Firmware does
not process this command but
transmits it to the Open AT

OS.
4. The command is routed by the
Open AT

OS to the Open AT


Application.
5. The command is processed.
6. The AT response is sent to the
external application through the
Open AT

Firmware.
7. AT response is received at the
external application.





























Open AT

Embedded Binary
Open AT


Application
Open AT

OS Library

















AT









Serial
Link
Sierra Wireless AirPrime modem
Open AT

Firmware
4
5 6










External
Application
1
2
3
adl_atCmdSubscribe()
Send AT
command
7
Receive
Response
Page
DEMO AT COMMAND
Phonebooks commands
Write phonebook entery: +CPBW
Read phone book Entries: +CPBR
Find phonebook Entries: +CPBF
Delete calls phonebook: +WDCP
Short message commands
Send message: +CMGS
Read message: +CMGR
Delete message: +CMGD
Call control commands
Dial command: ATD
Answer a call: ATA
Hang-Up command: ATH

Page
5. Open AT

ADL mode
High level interface for development
High modularity
Add-on library support available











Embedded Open AT

Binary ( 1 binary file)







Embedded API Layer
Open AT

OS
ADL Library
Embedded Application
Application
Mandatory
API
AT
Cmd
API
OS
API
Standard
API
FCM
API
IO
API
BUS
API
Page
Open AT

ADL mode (Cont.)


To define the application call stack size.
const u16 wm_apmCustomStackSize = 1024; /*1024 is an example*/

Entry point function for the ADL application.
void adl_main ( adl_InitType_e InitType )
{
}

Page
6. Developer Studio
Page
Developer Studio (Con.t)
Developer Studio is an Integrated Development
Environment based on Eclipse features that provide the
capability to create, edit, navigate, build, and debug Open
AT

projects.
Sierra Wireless has developed Developer Studio on top
of Eclipse-provided tools (C/C++ Development Tools,
Remote Systems Explorer), integrating Open AT


applications development specificities into one unique
standalone environment.
Allows to debug the Open AT

Application in RTE mode.


Integrates itself with the compiler to compile the Open
AT

Application in target mode.


Provides code annotation and syntax decoration.

Page
DEMO ADL
Hello World
// Application tasks declaration table
const adl_InitTasks_t adl_InitTasks [] =
{
{ main_task, DECLARE_CALL_STACK ( 1024 ), "main", 1 },
{ 0, 0, 0, 0 }
};
void HelloWorld_TimerHandler ( u8 ID, void * Context )
{
/* Send a trace: Hello World */
TRACE (( 1, "Embedded : Hello World" ));
/* Send a response: Hello World */
adl_atSendResponse ( ADL_AT_UNS, "\r\nHello World from Open-AT\r\n" );
}
Page
DEMO ADL (Cont.)
void main_task ( void )
{
adl_InitType_e adl_InitType = adl_InitGetType ();
TRACE (( 1, "Embedded : Appli Init" ));
/* Set 1s cyclic timer */
adl_tmrSubscribe ( TRUE, 10, ADL_TMR_TYPE_100MS, HelloWorld_TimerHandler );
}
Page
Q & A

Vous aimerez peut-être aussi