Training
description
Transcript of Training
-
5/26/2018 Training
1/24
Page
Training Presentation
AT Command &
ADL
Vuong Thanh Tung
-
5/26/2018 Training
2/24
Page
Content
1. Sierra Wireless Products2. AT commands
3. Open ATSoftware Suite Architecture
4. Open ATOS Functioning Modes
5. ADL Layer
6. Developer Studio
7. Demo
-
5/26/2018 Training
3/24
Page
Aircard Mobile Broadband Devices
AirPrime Embedded Wireless Modules
Airlink Intelligent Gateways and Routers
AirVantage M2M Cloud Platform
-
5/26/2018 Training
4/24
Page
Sierra AirPrime
Quad-band EDGE connectivity
Easy upgrade path to next-genaretion network
technologiesControlled via AT commands or ANSI C/C++
Support AirVantage Management Services
-
5/26/2018 Training
5/24
Page
AirPrime SL Development Kit
-
5/26/2018 Training
6/24
Page
2. AT Commands
-
5/26/2018 Training
7/24Page
Logos
-
5/26/2018 Training
8/24Page
AT Command Structure
Logo
Decription
Syntax
Action command
Read command
Test command
Parameters and Defined Values
Paremeter Storage
Example
Note
-
5/26/2018 Training
9/24Page
Example AT Command
Report Mobile Equipment Errors +CMEE
Description
This command defines the method or returning error
messages.
Synbtax
Action command: AT+CMEE=Read command: AT+CMEE?
Test command: AT+CMEE=?
-
5/26/2018 Training
10/24Page
Example AT Command (Cont.)
Parameters and Defined Values
: error reporting method
0 disable ME error reports, use only ERROR(default
value)
1 enable +CMEERROR: or +CMS ERROR:
Parameter Storage
The parameter is stored in EEPROM using AT&W
command. The default value can be restored usingAT&F.
-
5/26/2018 Training
11/24Page
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:
?
AT+CMEE? +CMEE: 1
-
5/26/2018 Training
12/24Page
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
-
5/26/2018 Training
13/24Page
Ap
plicationBinary
FirmwareB
inary
3. Open ATSoftware Suite 2.x Architecture
Sierra Wireless Proprietary and Confidential. 13
TCU DSP GEACRFUARTx USB USIMSPIx I2C ADC Flash IT CtrlDMADAC RTC KBD GPIOs PWM 32K
CLK
F
irmware
OS
Plug-ins
HW
BSP Device BSP System BSP GSM & Audio
Device servicesGSM stack
Firmware application
ADL layer
Internet plug-in
Security plug-in
C-GPS plug-in
LUAplug-in
OEM Application
TCP/IP stack
OS & System
-
5/26/2018 Training
14/24Page 14
4. Open ATOS Functioning ModesStandalone external application mode
1. External application sendsan AT command.
2. Serial link transmits thiscommand to the Open AT
Firmware.3. The command is processed.
4. AT response is sent to theexternal application.
5. AT response is received at
serial link.6. The response is receivedby 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
21
6
Open AT Firmware
-
5/26/2018 Training
15/24Page 15
Open ATOS Functioning Modes
Embedded application in standalone mode
1. The Open AT Applicationcalls the function to send anAT command.
2. The library calls the functionfrom Open ATFirmware to
process the AT command.3. The command is processed.
4. The AT response is sent tothe Open ATApplication.
5. The Open AT OS receivesthe response.
6. The response handler iscalled in the Open ATApplication.
Open ATEmbedded Binary
Open AT
Application
Open AT OS Library
AT
34
Serial
Link
Sierra Wireless AirPrime modem
Open AT Firmware
adl_atCmdCreate()
5
6 1
2
-
5/26/2018 Training
16/24Page 16
Open ATOS Functioning Modes
Cooperative mode
1. The external application sendsan AT command.
2. The serial link transmits thiscommand to the Open ATFirmware.
3. The Open AT Firmware does
not process this command buttransmits it to the Open AT OS.
4. The command is routed by theOpen AT OS to the Open AT
Application.
5. The command is processed.
6. The AT response is sent to theexternal application through theOpen ATFirmware.
7. AT response is received at theexternal application.
Open AT Embedded Binary
Open AT
Application
Open AT OS Library
ATSerial
Link
Sierra Wireless AirPrime modem
Open AT Firmware
4
5 6
External
Application
1 2 3
adl_atCmdSubscribe()
Send AT
command
7
Receive
Response
-
5/26/2018 Training
17/24Page
DEMO AT COMMAND
Phonebooks commands
Write phonebook entery: +CPBW
Read phone book Entries: +CPBR
Find phonebook Entries: +CPBF
Delete calls phonebook: +WDCP
Short message commandsSend message: +CMGS
Read message: +CMGR
Delete message: +CMGD
Call control commandsDial command: ATD
Answer a call: ATA
Hang-Up command: ATH
-
5/26/2018 Training
18/24
Page
5. Open ATADL mode
High level interface for development
High modularity Add-on library support available
Embedded Open AT
Binary ( 1 binary file)
Embedded API Layer
Open ATOS
ADL Library
Embedded Application
Application
Mandatory
API
AT
Cmd
API
OS
API
Standard
API
FCM
API
IO
API
BUS
API
-
5/26/2018 Training
19/24
Page
Open ATADL 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 ){
}
-
5/26/2018 Training
20/24
Page
6. Developer Studio
-
5/26/2018 Training
21/24
Page
Developer Studio (Con.t)
Developer Studio is an Integrated Development
Environment based on Eclipse features that provide thecapability to create, edit, navigate, build, and debug Open
ATprojects.
Sierra Wireless has developed Developer Studio on top
of Eclipse-provided tools (C/C++ Development Tools,Remote Systems Explorer), integrating Open ATapplications development specificities into one uniquestandalone environment.
Allows to debug the Open ATApplication in RTE mode.
Integrates itself with the compiler to compile the OpenATApplication in target mode.
Provides code annotation and syntax decoration.
-
5/26/2018 Training
22/24
Page
DEMO ADLHello 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" );
}
-
5/26/2018 Training
23/24
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 );
}
-
5/26/2018 Training
24/24
Page
Q & A