LUA Application Note
|
|
|
- Brett Holland
- 10 years ago
- Views:
Transcription
1 LUA Application Note
2 Document Title: SIM52xx LUA Application Note Version: 0.04 Date: Status: Document ID: Release SIM52xx_LUA_Application_Note_V0.04 General Notes SIMCom offers this information as a service to its customers, to support application and engineering efforts that use the products designed by SIMCom. The information provided is based upon requirements specifically provided to SIMCom by the customers. SIMCom has not undertaken any independent search for additional relevant information, including any information that may be in the customer s possession. Furthermore, system validation of this product designed by SIMCom within a larger electronic system remains the responsibility of the customer or the customer s system integrator. All specifications supplied herein are subject to change. Copyright This document contains proprietary technical information which is the property of SIMCom Limited., copying of this document and giving it to others and the using or communication of the contents thereof, are forbidden without express authority. Offenders are liable to the payment of damages. All rights reserved in the event of grant of a patent or the registration of a utility model or design. All specification supplied herein are subject to change without notice at any time. Copyright Shanghai SIMCom Wireless Solutions Ltd LUA_Application_Note_V /29/2010
3 Version History Version Chapter Comments V0.01 New version V0.02 Add charger event Add AT+CSCRIPTCL V0.03 Add more description for heart beat part Add QNA part V0.04 Add AT+CSCRIPTCL LUA_Application_Note_V /29/2010
4 Contents General Notes... 2 Copyright... 2 Version History... 3 Contents Introduction Overview References Terms and Abbreviations SOFTWARE ARCHITECTURE Software Organization Embedded LUA Library Information LUA Build-in Custom Libraries BASE library IO Library OS Library SIO Library GPIO Library UART Library IIC Library ADC Library PCM Library AUDIO Library GPS Library NET Library FTP Library STRING Library BIT Library ATCTL Library LUA Script operations Executing a LUA script Write LUA script Download LUA script Compile LUA script Execute LUA script Stop the active LUA script Run the script automatically Debug the active LUA script Use the second parameter of AT+CSCRIPTSTART Use printdir and print functions to debug script Compile the LUA script Use Notepad++ to edit the LUA script LUA Script Samples LUA_Application_Note_V /29/2010
5 5.1 Execute AT Commands Perform GPIO Pins Operation Perform GPS Operation Perform ATCTL Operation Perform FTP Operation Perform EFS Operation Perform Bitwise Operation Use Heart Beat Use Event Functions QNA Does LUA affect the sleep mode of module When the vmsetpri() should use high priority LUA_Application_Note_V /29/2010
6 1. Introduction 1.2 Overview SIM52XX LUA extension is a feature that allows customer applications control and drive the module internally and easily. The SIM52XX LUA extension is aimed at light applications where the application was usually done by a small microcontroller that managed some I/O pins and the module through the AT command interface. By using the LUA extension APIs, customer can write applications using the nice high level LUA language very quickly. SIM52XX LUA features: Light script language, easy to be extended. Support both procedure-oriented and object-oriented styles development. Script files are saved in EFS Support AT command operation in script. Support GPIO/IIC/SPI/ADC/PCM/Audio/GPS/UART operation in script. Support FTP operation instead of using AT commands. Available memory for script is limited to 3.5M. Script can be started by extern MCU using AT command Script can run automatically when module powers up if the file name is c:\autorun.lua or c:\autorun.out. The priority of the script task can be adjusted to HIGH, NORMAL, LOW(default). High priority is not recommended to be used when external MCU is connected. Support event operation. Support timer operation(the maximize number of timer is 10). Support XMODEM method of transferring script file between extern MCU and module. 1.2 References The present document is based on the following documents: [1] SIMCOM_SIM5218_ATC_EN_V1.11.doc. 1.3 Terms and Abbreviations For the purposes of the present document, the following abbreviations apply: LUA_Application_Note_V /29/2010
7 API CPU LIB OS PDU RAM ROM UMTS USIM WCDMA Application Programming Interface Central Processing Unit Library Operating System Protocol Data Unit Random-Access Memory Read-Only Memory Universal Mobile Telecommunications System Universal Subscriber Identity Module Wideband Code Division Multiple Access 2. SOFTWARE ARCHITECTURE 2.1 Software Organization below: The Embedded LUA facility is a software mechanism, it follows the software architecture as shown LUA_Application_Note_V /29/2010
8 2.2 Embedded LUA Library Information Customer applications written using LUA scripts are text files stored in the EFS of the SIM52XX Module. Before running the customer applications, user should put their scripts to the C:\ directory on the SIM52XX module. The LUA script is executed in a task inside the SIM52XX module at a low priority, for not interfering the other system functions, the extended API vmsetpri is not recommended to set the LUA engine running on the high priority, except for some very special case. The maximum RAM can be used by LUA engine is 3.5M. Two APIs (getcurmem and getpeakmem) are provided to get the current memory used and the peak memory used while running the script. 1. Libraries Added The SIO library is the most important one. It allows LUA script to send AT commands, receive responses and unsolicited indications. The AT command is quite the same as the usual AT sent through the serial port interface in SIM52XX module. The difference is that this interface is not a real serial port but just an internal software bridge between LUA and mobile internal AT command handling engine. All AT commands working in the SIM52XX module are working in this software interface as well. The GPIO library allows LUA script to handle general purpose input output faster than through AT commands, skipping the command parser and going directly to control the pins. The UART library is an implementation on the LUA core of the UART master. It allows LUA to handle UART operations instead of using AT commands. The I2C library is an implementation on the LUA core of the IIC bus master. It allows LUA to read and write the specified IIC registers. The AUDIO library is an implementation on the LUA core of the AUDIO manager. The GPS library allows LUA script to set and query GPS setting and geographic information. The NET library allows LUA script to query the wireless network information, like registration information, RSSI information and the network mode (GSM, GPRS and WCDMA, etc). The FTP library allows LUA script to perform simple FTP put and get operations. The ADC library allows LUA script to read the analogue value on the specified ADC channel. The PCM library allows the switch of the specified pins between command GPIO and PCM functions. The BIT library allows LUA script to perform bitwise operations. The ATCTL library allows LUA script to handle the data received from external serial port instead of processing it using the internal AT handling engine. 2. Extended Libraries The following APIs are extended in the base library: LUA_Application_Note_V /29/2010
9 printdir print reportte sendtoport vmsetpri vmgetpri vmsleep pathoffilename setevtpri waitevt setevt clearevts vmstarttimer vmstoptimer getcurmem getpeakmem The following API is extended in the io library: file: ccur The following APIs are extended in the os library: os.filelength os.delfile The following APIs are extended in the string library: string.concat string.equal string.startwith string.absfind 3. Removed Libraries The following library is not supported on the SIM52XX LUA engine: debug The following APIs are not supported in the io library: io.flush io.input io.lines LUA_Application_Note_V /29/2010
10 io.output io.popen io.read io.tmpfile io.type io.write The following APIs are not supported in the os library: os.execute os.exit os.getenv os.tmpname SIM52XX module provides LUA extension based on LUA5.1.4, which supports most original standard LUA APIs. SIM52XX module also provides APIs which can access system functions and operating SIM52XX hardware directly. Table 2.1 lists SIM52XX extended LUA Libraries. Library sio Gpio Uart I2c Adc Pcm Audio Gps Net ftp Bit Atctl Functions The sio library is used by LUA script to send AT commands, receive responses and unsolicited indication. The gpio library allow LUA script to handle general purpose input output directly instead of using AT commands. The uart library allows LUA script to handle UART operations directly instead of using AT commands. The i2c library allows LUA script to handle IIC read/write operations directly instead of using AT commands. The adc library allows LUA script to read analogue value on the specified ADC channel instead of using AT commands. The pcm library allows LUA script to switch PCM and GPIO pins directly instead of using AT commands. The audio library allows LUA script to manage AUDIO functions directly instead of using AT commands. The GPS library allows LUA script to set and query GPS setting and geographic information instead of using AT commands. The net library allows LUA script to query the wireless network information directly instead of using AT commands. The ftp library allows LUA script to put/get files to/from FTP server directly instead of using AT commands. The bit library allows LUA script to perform bitwise operations. The atctl library allows LUA script to handle the data received from external serial port instead of processing it using the internal AT handling engine. Table 2.1 SIM52XX extended libraries LUA_Application_Note_V /29/2010
11 3. LUA Build-in Custom Libraries 3.1 BASE library printdir The function is used to set the direction of the print function void printdir ([int dir]) dir: the direction of the print 0: print to normal DIAG trace (default) 1: print to external AT interface --print to DIAG printdir(0) print( this is printed to DIAG trace\r\n ) --print to AT interface printdir(1) print( this is printed to AT interface\r\n ) print The function is used to print trace information to DIAG or external AT interface, this is an original LUA API, the only difference is the total print string length cannot exceed 1024 bytes. void print (var1, ) var1 : any value that can be converted to a string prompt = This is my prompt, count= LUA_Application_Note_V /29/2010
12 count = 1; print(prompt, count, \r\n ); reportte The function is used to send information to the TE. It is like the print function when printing to the external AT interface, and the total print string length cannot exceed 1024 bytes. void reportte (var1, ) var1 : any value that can be converted to a string prompt = This is my prompt, count= count = 1; reportte(prompt, count, \r\n ); sendtoport The function is used to send information to the TE. void sendtoport (int port, string data) port: the sio port to send data 0=to the port decided by AT+CATR 1=UART port 2=USB modem port 3=USB AT port data: the data to be sent prompt = This is my prompt\r\n port = 1 sendtoport(port, prompt) ; LUA_Application_Note_V /29/2010
13 3.1.5 vmsetpri The function is used to set the priority of the internal task for LUA. void vmsetpri (int pri) pri : the priority of the internal task for LUA 1: low 2: medium 3: high (This value is used for some very special case. For most applications, it shouldn t be used) LOW_PRIORITY = 1 MEDIUM_PRIORITY = 2 HIGH_PRIORITY = 3 vmsetpri(low_priority); vmsetpri(medium_priority); vmsetpri(high_priority); vmgetpri The function is used to get the priority of the internal task for LUA. int vmgetpri () the priority of the internal task for LUA 1: low 2: medium 3: high LUA_Application_Note_V /29/2010
14 LOW_PRIORITY = 1 MEDIUM_PRIORITY = 2 HIGH_PRIORITY = 3 pri = vmgetpri() print( current priority is, pri, \r\n ) vmsleep The function is used to make the internal LUA task sleeping. void vmsleep (int timeout) timeout: the time (ms) to sleep --sleep 2000 ms vmsleep(2000) pathoffilename The function is used to get the directory of a full file path. void pathoffilename (string fullpath) fullpath: the full path of a file fullpath = c:\\testdir\\myfile.txt ; dir = pathoffilename(fullpath); --print the dir ( c:\\testdir\\ ) print(«dir = «, dir, «\r\n») setevtpri LUA_Application_Note_V /29/2010
15 The function is used to set the priority of an event. For event id from 0 to 20, the default priority is 101(maximum). For event id form 21 to 40, the default priority is (100-event_id). ccurs setevtpri (int evt, int pri) evt: the event id to be set. Pri: the priority of the event. the result of the setting: true: successful false: failed event_id = 7 event_priority = 100 setevtpri(evt_id, event_priority) waitevt The function is used to wait an event to occur. ccurs ccurs waitevt (int timeout) timeout: the maximum time to wait. There are for return values for waitevt( ). Event_id: the id of the event with the highest priority that occurred. If no event ccurs, -1 will be returned. Event_param1: the first parameter of the event. For timer event, it is the timer id. For the SCRIPTCMD event, it is the sio port of running the command. For other events, this parameter is reserved now. event_param2: the second parameter of the event. Event_param3: the third parameter of the event.. Event and parameters description event event_id event_param1 event_param2 event_param3 GPIO_EVENT LUA_Application_Note_V /29/2010
16 UART_EVENT KEYPAD_EVENT USB_EVENT AUDIO_EVENT TIMER_EVENT 28 <timer_param1> 0 0 SIO_RCVD_EVENT ATCTL_EVENT OUT_CMD_EVENT LED_EVENT 32 <led_param1> <led_param2> 0 CHARGER_EVENT 33 <charger_connected> <charge_status> Parameter defined values <Timer_param1> Timer id, the range is 0~9 <led_param1> Network status 0 not registered 1 registered <led_param2> Call type 0 no call 1 voice call 2 CS data call 3 PS data call <charger_connected> Charger status 0 not connected 1 connected <charge_status> Charge status 0 not charging 1 charging event_id, event_param = waitevt(10000) print(event_id, " ", event_param, "\r\n "); setevt The function is used to set an event. boolean setevt (int evt, int param1, int param2, int LUA_Application_Note_V /29/2010
17 param3) evt: the id of the event to be set. param1: the first parameter of the event param2: the second parameter of the event param3: the third parameter of the event The result of setting: TRUE: successful FALSE: failed event_id = 30 setevt(event_id) clearevts The function is used to clear all the events that occurred and contained in the event array. void clearevts () clearevts() vmstarttimer The function is used to start a timer. boolean vmstarttimer (int timer_id, int timeout, int timer_type) timer_id: the ID of timer (0-9) timeout: the timeout value for the timer(ms) timer_type: the timer type LUA_Application_Note_V /29/2010
18 0: the timer will only generate 1 timer event 1: the timer will generate multiple timer event until the vmstoptimer function is called. (default) the result of starting timer: true: successful false: failed rst = vmstarttimer(0, 1000); while (true) do evt, evt_param = waitevt(10000); if (evt ~= -1) then print(evt, "\r\n "); end; end; vmstoptimer The function is used to stop a timer. boolean vmstoptimer (int timer_id) timer_id: the ID of timer (0-9) the result of stopping timer: true: successful false: failed rst = vmstarttimer(0, 1000); count = 0; while (true) do count = count + 1; if (count > 10) then LUA_Application_Note_V /29/2010
19 break; end; evt, evt_param = waitevt(10000); if (evt ~= -1) then print(evt, "\r\n "); end; end; vmstoptimer(0); getcurmem The function is used to get the size of the current memory used for the LUA script. int getcurmem () the size of the memory used now. cur_mem_used = getcurmem() print("currently ", cur_mem_used, "bytes of memory are used for this script\r\n") getpeakmem The function is used to get the size of the peak memory used for the LUA script. int getpeakmem () the peak size of the memory used for running the current script. peak_mem_used = getpeakmem() print(peak_mem_used, "bytes of peak memory are used for running this script\r\n") LUA_Application_Note_V /29/2010
20 getchargerstate The function is used to get the size of the peak memory used for the LUA script. Int int getchargerstate () charger state: the charger state 0: not connected 1: connected charge status: the charging status 0: not charging 1: charging peak_mem_used = getpeakmem() print(peak_mem_used, "bytes of peak memory are used for running this script\r\n") 3.2 IO Library file:trunc The function is used to truncate the file opened using io.open. void file:trunc () file = io.open("c:\\test1.txt","w") assert(file) file:trunc() file:write("test content\r\ntest\r\n") LUA_Application_Note_V /29/2010
21 file:close() 3.3 OS Library os.filelength The function is used to get the length of a file. int os.filelength (string path) path: the full path of the file the length of the file. len = os.filelength("c:\\test1.txt") print("the length of test1.txt is ", len, "bytes\r\n"); os.delfile The function is used to delete an existing file. boolean os.delfile (string path) path: the full path of the file the result of deleting: true: successful false: failed rst = os.delfile("c:\\test1.txt") 3.4 SIO Library sio.send The function is used to set send AT command to the virtual serial port on the module. LUA_Application_Note_V /29/2010
22 void sio.send(string cmd) cmd: the data to be sent to virtual serial port sio.send("ati\r\n"); sio.recv The function is used to set receive data from the virtual serial port on the module. string sio.recv(int timeout) timeout: the timeout value in ms to receive data. The data received on the serial port. sio.send("ati\r\n"); rst = sio.recv(); sio.clear The function is used to clear the cached data received from the virtual serial port on the module. void sio.clear() sio.clear(); sio.exclrpt The function is used to force the unsolidated result to be sent to the virtual serial port on the module only. void sio.exclrpt(int mode) LUA_Application_Note_V /29/2010
23 mode: the mode the reporting unsolidated result 0: the unsolidated result will be sent to the virtual serial port and other ports decided by at+catr. 1: the unsolidated result will only be sent to the virtual serial port. sio.exclrpt(1); 3.5 GPIO Library gpio.settrigtype The function is used to set the trigger mode of a specified GPIO. It has the same function as AT+CGPIO command. boolean gpio.settrigtype (int detect, int polarity[,int save]) detect: 0: LEVEL trigger mode 1: EDGE trigger mode polarity: 0: trigger when low level 1: trigger when high level save: 0: not save the setting (default) 1: save the setting the result of setting: true: successful false: failed LUA_Application_Note_V /29/2010
24 rst = gpio.settrigtype(0,1); gpio.setdrt The function is used to set the io direction of a specified GPIO. It has the same function as AT+CGDRT command. boolean gpio.setdrt (int gpionum, int gpio_io[,int save=0]) gpionum: the number of the gpio (2, 3, 5) gpio_io: 0: in 1: out save: 0: not save the setting (default) 1: save the setting the result of setting: true: successful false: failed rst = gpio.setdrt(5,1); gpio.setv The function is used to set the value of the specified GPIO. It has the same function as AT+CGSETV command. boolean gpio.setv (int gpionum, int gpio_hl[,int save=0]) gpionum: the number of the gpio (2, 3, 5) LUA_Application_Note_V /29/2010
25 gpio_hl: 0: low 1: high save: 0: not save the setting (default) 1: save the setting the result of setting: true: successful false: failed rst = gpio.setv(2,0); gpio.getv The function is used to get the value of the specified GPIO. It has the same function as AT+CGGETV command. int gpio.getv (int gpionum) gpionum: the number of the gpio (0, 1, 2, 3, 4, 5) the value of the GPIO: 0: low 1: high level = gpio.getdrt(5); print(level,"\r\n"); LUA_Application_Note_V /29/2010
26 3.6 UART Library uart.set_uart_md The function is used to set the UART working mode. It has the same function as AT+CSUART command. int uart.set_uart_md (int mode) mode: 0: 3-line mode 1: 7-line mode the result of setting: 1: successful 0: failed rst= uart.set_uart_md(0); uart.get_uart_md The function is used to get the UART working mode. It has the same function as AT+CGDRT command. int uart.get_uart_md () the UART working mode: 0: 3-line mode 1: 7-line mode mode= uart.get_uart_md(); print(mode,"\r\n"); LUA_Application_Note_V /29/2010
27 3.6.3 uart.set_dcd_md The function is used to set the DCD mode or normal GPIO working mode for the UART. It has the same function as AT+CDCDMD command. int uart.set_dcd_md (int mode) mode: 0: DCD mode 1: GPIO mode the result of setting: 1: successful 0: failed rst= uart.set_dcd_md(1); uart.get_dcd_md The function is used to get the mode of a UART (DCD or normal GPIO mode). It has the same function as AT+CDCDMD command. int uart.get_dcd_md () the mode the the GPIO: 0: DCD mode 1: normal GPIO mode mode= uart.get_dcd_md(); print(mode,"\r\n"); uart. dcd_setval LUA_Application_Note_V /29/2010
28 The function is used to set the value of the GPIO when UART working under the normal GPIO mode. It has the same function as AT+CDCDVL command. int uart.dcd_setval (int value) value: 0: low 1: high the result of setting: 1: successful 0: failed rst= uart. dcd_setval(0); uart. dcd_getval The function is used to set the value of the GPIO when UART working under the normal GPIO mode. It has the same function as AT+DCDVL command. int uart.dcd_getval () the value of the GPIO: 0: low 1: high rst= uart. dcd_getval(); 3.7 IIC Library i2c.read_i2c_dev LUA_Application_Note_V /29/2010
29 The function is used to read the value of a specified register or memory space. It has the same function as AT+CRIIC command. int i2c.read_i2c_dev (int device_id, int reg_addr, int reg_len) device_id: the id of the device reg_addr: the address of the device reg_len: the length to read the value of the specified address. If failed, return 0. rst= i2c.read_i2c_dev(15,15,2); i2c.write_i2c_dev The function is used to set the value of a specified register or memory space. It has the same function as AT+CWIIC command. int i2c.write_i2c_dev (int device_id, int reg_addr, int int reg_val, reg_len) device_id: the id of the device reg_addr: the address of the device reg_val: the value to write reg_len: the length to write the result of setting: 1: successful 0: failed rst= i2c.write_i2c_dev(15,15,4660,2); LUA_Application_Note_V /29/2010
30 3.8 ADC Library adc.readadc The function is used to read the value of the specified ADC channel. It has the same function as AT+CADC command. int adc.readadc (int type) type: the type of the ADC value to read 0: read the raw data (default) 1: read the temperature value the value of the specified address. If failed, return 0. rst= adc.readadc(0); 3.9 PCM Library pcm.switch_gpio_and_pcm The function is used to switch GPIO and PCM mode for the specified GPIO. It has the same function as AT+CPCM command. int pcm.switch_gpio_and_pcm (int mode) mode: the mode the GPIO 0: normal GPIO (default) 1: PCM mode the result of setting: 1: successful 0: failed LUA_Application_Note_V /29/2010
31 rst= pcm.switch_gpio_and_pcm(0); pcm.get_cur_pcm_md The function is used to get the specified GPIO mode (normal GPIO or PCM). It has the same function as AT+CPCM command. int pcm.get_cur_pcm_md (( the mode of the PCM: 0: normal GPIO 1: PCM rst= pcm.get_cur_pcm_md(); 3.10 AUDIO Library audio.setmicamp1 The function is used to set the audio path parameter micamp1. It has the same function as AT+CMICAMP1 command. int audio.setmicamp1 (int gain) gain: the gain value ( 0-15) the result of setting: 1: successful 0: failed rst= audio.setmicamp1(3); LUA_Application_Note_V /29/2010
32 audio.getmicamp1 The function is used to get the audio path parameter micamp1. It has the same function as AT+CMICAMP1 command. int audio.getmicamp1 () the value of micamp1. If failed, return 0 rst= audio.getmicamp1(); audio.setmicamp2 The function is used to set the audio path parameter micamp2. int audio.setmicamp2 (int gain) gain: the gain value (0-1) the result of setting: 1: successful 0: failed rst= audio.setmicamp2(1); audio.getmicamp2 The function is used to get the audio path parameter micamp1. int audio.getmicamp2 () the value of micamp2. If failed, return 0 LUA_Application_Note_V /29/2010
33 rst= audio.getmicamp2(); audio.setsidetone The function is used to set digital attenuation of sidetone. It has the same function as AT+SIDET command. int audio.setsidetone (int gain) gain: the gain value ( ) the result of setting: 1: successful 0: failed rst= audio.setsidetone(1000); audio.getsidetone The function is used to get digital attenuation of sidetone. It has the same function as AT+SIDET command. int audio.getsidetone () The digital attenuation of sidetone. If failed, return 0. rst= audio.getsidetone(); audio.settxgain The function is used to set the gain value of the TX direction for the current audio device. It has the same function as AT+CTXGAIN command. LUA_Application_Note_V /29/2010
34 int audio.settxgain (int gain) gain: the gain value ( ) the result of setting: 1: successful 0: failed rst= audio.settxgain(1000); audio.gettxgain The function is used to get the gain value of the TX direction for the current audio device. It has the same function as AT+CTXGAIN command. int audio.gettxgain () the TX gain value. If failed, return 0. rst= audio.gettxgain(); audio.setrxgain The function is used to set the gain value of the RX direction for the current audio device. It has the same function as AT+CRXGAIN command. int audio.setrxgain (int gain) gain: the gain value ( ) the result of setting: 1: successful 0: failed LUA_Application_Note_V /29/2010
35 rst= audio.setrxgain(1000); audio.getrxgain The function is used to get the gain value of the RX direction for the current audio device. It has the same function as AT+CRXGAIN command. int audio.getrxgain () the RX gain value. If failed, return 0. rst= audio.getrxgain(); audio.settxvol The function is used to set the volume value of the TX direction for the current audio device. It has the same function as AT+CTXVOL command. int audio.settxvol (int value) gain: the gain value ( ) the result of setting: 1: successful 0: failed rst= audio.settxvol(1000); audio.gettxvol The function is used to get the volume of the TX direction for the current audio device. It has the same LUA_Application_Note_V /29/2010
36 function as AT+CTXVOL command. int audio.gettxvol () the volume of the TX direction for the current audio device. If failed, return 0. rst= audio.gettxvol(); audio.setrxvol The function is used to set the volume value of the RX direction for the current audio device. It has the same function as AT+CRXVOL command. int audio.setrxvol (int value) value: the volume value ( ) the result of setting: 1: successful 0: failed rst= audio.setrxvol(100); audio.getrxvol The function is used to get the volume of the RX direction for the current audio device. It has the same function as AT+CRXVOL command. int audio.getrxvol () the volume of the RX direction for the current audio device. If failed, return 0. LUA_Application_Note_V /29/2010
37 rst= audio.getrxvol(); audio.settxftr The function is used to set the filter value of the TX direction for the current audio device. It has the same function as AT+CTXFTR command. int audio.settxftr (int filter1, int filter2, int filter3, int filter4, int filter5, int filter6, int filter7) filter1: the first fitler parameter value. filter2: the second fitler parameter value. filter3: the third fitler parameter value. filter4: the fourth fitler parameter value. filter5: the fifth fitler parameter value. filter6: the sixth fitler parameter value. filter7: the seventh fitler parameter value. the result of setting: 1: successful 0: failed rst= audio.settxftr(1111,2222,3333,4444,5555,6666,7777); audio.gettxftr The function is used to get the filter value of the TX direction for the current audio device. It has the same function as AT+CTXFTR command. int int int int int int int audio.gettxftr() LUA_Application_Note_V /29/2010
38 There are 7 return values for the filter parameters of the TX direction for the current audio device: filter1: the first fitler parameter value. filter2: the second fitler parameter value. filter3: the third fitler parameter value. filter4: the fourth fitler parameter value. filter5: the fifth fitler parameter value. filter6: the sixth fitler parameter value. filter7: the seventh fitler parameter value. filter1,filter2,filter3,filter4,filter5,filter6,filter7= audio.settxftr(1111,2222,3333,4444,5555,6666,7777); print(filter1, " ", filter2, " ", filter3, " ", filter4, " ", filter5, " ", filter6, " ", filter7,"\r\n"); audio.setrxftr The function is used to set the filter value of the RX direction for the current audio device. It has the same function as AT+CRXFTR command. int audio.setrxftr (int filter1, int filter2, int filter3, int filter4, int filter5, int filter6, int filter7) filter1: the first fitler parameter value. filter2: the second fitler parameter value. filter3: the third fitler parameter value. filter4: the fourth fitler parameter value. filter5: the fifth fitler parameter value. filter6: the sixth fitler parameter value. filter7: the seventh fitler parameter value. the result of setting: 1: successful 0: failed LUA_Application_Note_V /29/2010
39 rst= audio.setrxftr(1111,2222,3333,4444,5555,6666,7777); audio.getrxftr The function is used to get the filter value of the RX direction for the current audio device. It has the same function as AT+CRXFTR command. int int int int int int int audio.getrxftr () There are 7 return values for the filter parameters of the RX direction for the current audio device: filter1: the first fitler parameter value. filter2: the second fitler parameter value. filter3: the third fitler parameter value. filter4: the fourth fitler parameter value. filter5: the fifth fitler parameter value. filter6: the sixth fitler parameter value. filter7: the seventh fitler parameter value. filter1,filter2,filter3,filter4,filter5,filter6,filter7= audio.getrxftr(1111,2222,3333,4444,5555,6666,7777); print(filter1, " ", filter2, " ", filter3, " ", filter4, " ", filter5, " ", filter6, " ", filter7,"\r\n"); audio.setvollvl The function is used to set the audio path parameter RX volume for the current audio device. It has the same function as AT+CVLVL command. int audio.setvollvl (int level, int value) int level: sound level number (1-4) value: sound level value ( ) the result of setting: LUA_Application_Note_V /29/2010
40 1: successful 0: failed rst= audio.setvollvl(4,1000); audio.getvollvl The function is used to get the audio path parameter RX volume for the current audio device. It has the same function as AT+CVLVL command. int audio.getvolval () the value of the RX volume. rst= audio.getvollvl(); 3.11 GPS Library Note: GPS library is supported on SIM5211/SIM5218/SIM gps.start The function is used to start the GPS function. For the corresponding AT command, please refer to AT+CGPSCOLD and AT+CGPSHOT. int gps.start (int mode) mode: the start mode 1: hot start 2: code start the result of starting GPS: 1: successful LUA_Application_Note_V /29/2010
41 0: failed rst= gps.start(1); gps.close The function is used to stop the GPS function. For the corresponding AT command, please refer to AT+CGPS. int gps.close () the result of stopping GPS: 1: successful 0: failed rst= gps.close(); gps.gpsinfo The function is used to get the reported GPS information. For the corresponding AT command, please refer to AT+CGPSINFO. string gps.gpsinfo () the GPS information. rst= gps.gpsinfo(); LUA_Application_Note_V /29/2010
42 gps.gpssetmode The function is used to set the mode of the GPS. For the corresponding AT command, please refer to AT+CGPS. boolean gps.gpssetmode (int mode) mode: the mode of GPS 1: standalone 2: MSB 3: MSA the result of setting: True: successful false: failed rst= gps.gpssetmode(1); gps.gpsgetmode The function is used to get the mode of the GPS. For the corresponding AT command, please refer to AT+CGPS. int gps.gpsgetmode () the mode of GPS: 1: standlone 2: MSB 3: MSA rst= gps.gpsgetmode(); LUA_Application_Note_V /29/2010
43 gps.gpsseturl The function is used to set the server URL of the GPS. For the corresponding AT command, please refer to AT+CGPSURL. boolean gps.gpsseturl (string url) url: the URL of GPS the result of setting: True: successful false: failed rst= gps.gpsseturl(" :8888"); gps.gpsgeturl The function is used to get the mode of the GPS. For the corresponding AT command, please refer to AT+CGPSURL. string gps.gpsgeturl () the server URL of the GPS rst= gps.gpsgeturl(); gps.gpssetssl The function is used tog set the SSL mode of the GPS. For the corresponding AT command, please refer to AT+CGPSSSL. string gps.gpssetssl (int ssl) ssl: the SSL mode LUA_Application_Note_V /29/2010
44 0: do not use SSL 1: use SSL the result of setting: True: successful false: failed rst= gps.gpssetssl(0); gps.gpsgetssl The function is used to get the SSL mode of the GPS. For the corresponding AT command, please refer to AT+CGPSSSL. int gps.gpsgetssl () the SSL mode of the GPS 0: do not use SSL 1: use SSL rst= gps.gpsgetssl(); 3.12 NET Library net.creg The function is used to get the cs-domain register result. For the corresponding AT command, please refer to AT+CREG. int net.creg () LUA_Application_Note_V /29/2010
45 the result of the cs-domain register result. rst= net.creg(); net.cgreg The function is used to get the ps-domain register result. For the corresponding AT command, please refer to AT+CGREG. int net.cgreg () the result of the ps-domain register result. rst= net.cgreg(); net.csq The function is used to get the CSQ value. For the corresponding AT command, please refer to AT+CSQ. int int net.csq () The are two return values: csq: the CSQ value err_bit: the ERROR BIT rst= net.csq(); net.cnsmod LUA_Application_Note_V /29/2010
46 The function is used to query the network mode. For the corresponding AT command, please refer to AT+CNSMOD. int net.cnsmod () the network mode: 0: no service 1: GSM 2: GPRS 3: EGPRS (EDGE) 4: WCDMA 5: HSDPA only 6: HSUPA only 7: HSPA( HSDPA and HSUPA) rst= net.cnsmode(); 3.13 FTP Library ftp.simpput The function is used to put a file from local EFS to the remote FTP server. For the corresponding AT command, please refer to AT+CFTPPUTFILE. int ftp.simpput (string address, int port, string name, string password, string remote_filepath, string local_filepath, int passive) address: FTP server address port: FTP server port name: FTP user name password: FTP user password LUA_Application_Note_V /29/2010
47 remote_filepath: the path of the remote file. local_filepath: the path of the local EFS file passive: passive mode (1=passive mode, 0=not passive mode) the result of the FTP putting: 0: successful other: failed server = "e-device.net"; port = 21; name = "myaccount"; pass = "password"; remote_file = "/up_normal.jpg"; uplocal_file = "c:\\picture\\normal.jpg"; passive = 0; rst = ftp.simpput(server, port, name, pass, remote_file, uplocal_file, passive); ftp.simpgut The function is used to get a file from the remote FTP server to local EFS. For the corresponding AT command, please refer to AT+CFTPGETFILE. int ftp.simpget (string address, int port, string name, string password, string remote_filepath, string local_filepath, int passive) address: FTP server address port: FTP server port name: FTP user name password: FTP user password remote_filepath: the path of the remote file. LUA_Application_Note_V /29/2010
48 local_filepath: the path of the local EFS file passive: passive mode (1=passive mode, 0=not passive mode) the result of the FTP getting: 0: successful other: failed server = "e-device.net"; port = 21; name = "myaccount"; pass = "password"; remote_file = "/up_normal.jpg"; downlocal_file = "c:\\video\\down_normal.jpg"; passive = 0; rst = ftp.simpget(server, port, name, pass, remote_file, downlocal_file, passive); 3.14 STRING Library string.concat The function is used to connect two strings. string string.concat (string str1, string str2) str1: the string to connect. str2: the string to connect. the result of str1 + str2. local str1 = "test string1"; local str2 = "test string2"; LUA_Application_Note_V /29/2010
49 local rst = string.concat(str1,str2); print("string.concat(str1,str2)=",rst,"\r\n"); string.equal The function is used to judge whether two strings are equal. boolean string.equal (string str1, string str2[, int ignore_case]) str1: the string to compare. str2: the string to compare. ignore_case: ignore the case of the two strings. 0: not ignore the case 1: ignore the case the result of comparing: true: equal false: not equal local str1 = "test string1"; local str2 = "test string2"; local rst = string.equal(str1,str2); print("string.equal(str1,str2)=",rst,"\r\n"); string.startwith The function is used to judge whether a string contains the same string in the header of another string. boolean string.startwith (string str1, string str2[, int ignorecase]) str1: the string to compare. str2: the string to compare. ignore_case: ignore the case of the two strings. LUA_Application_Note_V /29/2010
50 the result of comparing: true: str1 contains the same string as str2 in the header. false: str1 doesn t contain str2 in the header. local str1 = "test string1, test string"; local str2 = "TEST string1"; local rst = string.startwith(str1,str2, 1); print("string. startwith (str1,str2, 1)=",rst,"\r\n"); string.absfind The function is used to find the start position in a string that contains another string. boolean string.absfind (string str1, string str2[,int start_pos[, int ignorecase]]) str1: the string that may contain str2. str2: the string to find. start_pos: the start position of finding in str1. ignore_case: ignore the case of the two strings. 0: not ignore the case 1: ignore the case the position of finding. If failed, return nil. local str1 = "test string1, test string"; local str2 = ",TEST string"; local pos = string.absfind(str1,str2, 1); print("string. absfind (str1,str2, 1)=",pos,"\r\n"); LUA_Application_Note_V /29/2010
51 3.15 BIT Library bit.cast The function is used to cast a variable to an internally-used integer type. int bit.cast(int var) var: the variable to be cast. the cast result rst = bit.cast (-1) bit.bnot The function is used to perform a bitwise NOT operation. int bit.bnot(int var) var: the variable to be calculated using bitwise NOT. the bitwise NOT operation result rst = bit.bnot (-1) assert (rst == bit.cast (0)) bit.band The function is used to perform a bitwise AND operation. int bit.band(int var1, var2) var1, var2: the variable to be calculated using bitwise AND. the bitwise AND operation result LUA_Application_Note_V /29/2010
52 assert (bit.band (-1, -1) == bit.cast (-1)) bit.bor The function is used to perform a bitwise OR operation. int bit.bor(int var1, int var2) var1, var2: the variable to be calculated using bitwise OR. the bitwise OR operation result assert (bit.bor (0, -1) == bit.cast (-1)) bit.bxor The function is used to perform a bitwise XOR operation. int bit.bxor(int var1, int var2) var1, var2: the variable to be calculated using bitwise XOR. the bitwise XOR operation result assert (bit.bxor (0, -1) == bit.cast (-1)) bit.lshift The function is used to perform a bitwise left-shift operation. int bit.lshift(int var) var: the variable to be calculated using bitwise left-shift. the bitwise left-shift operation result assert (bit.lshift (0, 0) == bit.cast (0)) LUA_Application_Note_V /29/2010
53 bit.rshift The function is used to perform a logical bitwise right-shift operation. int bit.rshift(int var) var: the variable to be calculated using logical bitwise right-shift. the logical bitwise right-shift operation result assert (bit.rshift (-1, 0) == bit.cast (-1)) bit.arshift The function is used to perform an arithmetic bitwise right-shift operation. int bit.rshift(int var) var: the variable to be calculated using arithmetic bitwise right-shift. the arithmetic bitwise right-shift operation result assert (bit.arshift (-1, 1) == bit.cast (-1)) 3.16 ATCTL Library atctl.setport The function is used to set the serial port for ATCTL purpose use. The port used by atctl.setport shouldn t be the same as set using AT+CATR, or else which may not work correctly. boolean atctl.setport(int port) port: the port to be used by ATCTL 1: UART PORT 2: MODEM PORT LUA_Application_Note_V /29/2010
54 3: USB AT PORT -1: Release the port used by ATCTL the setting result true: successful false: failed rst = atctl.setport (3) rst = atctl.setport (-1) atctl.recv The function is used to receive string from the port set by atctl.setport. string atctl.recv(int timeout) timeout: the timeout value for receiving string from the port set by atctl.setport. the string received from the port. If failed, return nil. rst = atctl.recv (5000) atctl.send The function is used to send string to the port set by atctl.setport. void atctl.send(string rpt) rpt: the content to send using the port set by atctl.setport. atctl.send ("test string1, test string") LUA_Application_Note_V /29/2010
55 atctl.clear The function is used to clear the cached string received from the port set by atctl.setport. void atctl.clear() atctl.clear () 4. LUA Script operations 4.1 Executing a LUA script The steps required to have a script running by LUA engine of the module are: Write the LUA script Download the LUA script into the EFS of the module Execute the LUA script Write LUA script Open the notepad.exe program on windows operating system, and enter the following text which prints HELLO WORLD to TE and then ends. After entering the text, save it as helloworld.lua, and then close the notepad.exe program Download LUA script Use XMODEM to transfer the helloworld.lua file to the C:\ directory on the module. For the XMODEM related AT command, please refer to AT+CRXFILE in [1]. LUA_Application_Note_V /29/2010
56 4.1.3 Compile LUA script User may compile the LUA script to binary format files. Following is an example that the test1.lua is compiled to test1.out and encrypted using password AT+CSCRIPTPASS=, OK AT+CSCRIPTCL= test1.lua OK +CSCRIPT: Execute LUA script Connect the module to PC, and open the AT port or UART port using hypertrm.exe, then type the following AT command to run the LUA script: AT+CSCRIPTSTART= helloworld.lua, 1 After executing the script, the module will report +CSCRIPT: <result>. If the <result> equals 0, it means executing the script successfully. Other value for the <result> means failing to execute the script. Following is the executing result of the helloworld.lua script: HELLO WORLD! LUA_Application_Note_V /29/2010
57 +CSCRIPT: Stop the active LUA script User may input AT+CSCRIPTSTOP? command on TE to query which script is running now inside the module. If there is an active script, the AT+CSCRIPTSTOP? command may report +CSCRIPTSTOP: <FILENAME>. User also may input AT+CSCRIPTSTOP to stop the active script Run the script automatically User may save the script as C:\autorun.lua or C:\autorun.out on the module, and each time when the module powers on, this script will run automatically. If both files exist, the C:\autorun.lua file will run automatically. 4.2 Debug the active LUA script The debug of the active LUA script needs to be done on the target, and user can use the following two methods to debug the application Use the second parameter of AT+CSCRIPTSTART AT+CSCRIPTSTART command provides the second parameter to support reporting error of LUA script to TE. When user is developing the script, it is very useful, and may report the grammar or running error immediately and help user to correct it. Following is an example of the error report: AT+CSCRIPTSTART= myprogram.lua, 1 +LUA ERROR: myprogram.lua:5: 'then' expected near 'print' +CSCRIPT: 3 Following is the myprogram.lua script: LUA_Application_Note_V /29/2010
58 4.2.2 Use printdir and print functions to debug script The printdir and print functions are mainly designed to assist user to trace the work flow of the script. When developing the script, user can set printdir(1), which may let the print function trace debug information to TE. When releasing the script, user can just set printdir(0), which then let the print function stop tracing debug information to TE. 4.3 Compile the LUA script To improve efficiency, user can compile the LUA script to binary mode. The corresponding AT command is AT+CSCRIPTCL. Following is an example of compiling C:\test.lua to C:\test.out : AT+CSCRIPTCL= test.lua Or AT+CSCRIPTCL= test.lua, test.out 4.4 Use Notepad++ to edit the LUA script Notepad++ is a light and free text editor which supports LUA language grammar lightening, and it is recommended for customers to edit the SIM52XX LUA script. User can set the SIM52XX APIs by selecting the Settings Style configurator menu, and input the extended API names in the Style Configurator dialog like the following: LUA_Application_Note_V /29/2010
59 5. LUA Script Samples This section shows some samples which are aimed to assist customer to be familiar with SIM52XX LUA extended APIs. 5.1 Execute AT Commands The following script performs the ATI query every 2 seconds. 5.2 Perform GPIO Pins Operation The following script gives an example of operating GPIO pins. LUA_Application_Note_V /29/2010
60 5.3 Perform GPS Operation The following script let the GPS device run with code start for 60 seconds and then run with hot start for 30 seconds. LUA_Application_Note_V /29/2010
61 5.4 Perform ATCTL Operation The following script sets the USBAT port to ATCTL mode, and control the input and output of the port instead of letting the normal AT command processing engine to control the port. LUA_Application_Note_V /29/2010
62 5.5 Perform FTP Operation The following script gives an example of FTP put and get operations. LUA_Application_Note_V /29/2010
63 5.6 Perform EFS Operation The following script gives an example of operating files in EFS. LUA_Application_Note_V /29/2010
64 5.7 Perform Bitwise Operation The following script gives an example of bitwise operation. LUA_Application_Note_V /29/2010
65 5.8 Use Heart Beat The following script gives an example of using heart heat. In this example, the external MCU should LUA_Application_Note_V /29/2010
66 send AT+CSCRIPTCMD command to module every 1 minute, which generates event 31 to the running LUA script. Once the script receives event 31, it will reset the heart beat timer. If no event 31 is received within 1 minute, the script will reset external MCU using reset_external_mcu() function. Following is a general example of using heart beat design: 5.9 Use Event Functions The following script gives an example of using event functions. LUA_Application_Note_V /29/2010
67 LUA_Application_Note_V /29/2010
68 6. QNA 6.1 Does LUA affect the sleep mode of module The module wouldn t enter sleep mode when LUA script is running except that LUA script is calling LUA_Application_Note_V /29/2010
69 vmsleep() or waitevt() functions. 6.1 When the vmsetpri() should use high priority The vmsetpri() function supports three priorities. If the script uses high priority, it may affect the performing of general AT commands sent by external MCU. So when no external MCU is running and the script name is saved as c:\autorun.lua or c:\autorun.out, the priority can be set to high. In all other cases, normal or low priority is recommended to be used. LUA_Application_Note_V /29/2010
70 Contact us Shanghai SIMCom Wireless Solutions Ltd. Add: Building A, SIM Technology Building, No.633, Jinzhong Road, Changning District Tel: Fax: URL: LUA_Application_Note_V /29/2010
SIM900_Custom Application Building Tutorial_Application Note_V1.00
SIM900_Custom Application Building Tutorial_Application Note_V1.00 Document Title: SIM900 Custom Application Building Tutorial Application Note Version: 1.00 Date: 2010-9-16 Status: Document Control ID:
SMS Application Note. SIM5360_SMS_Application_Note_V0.01
SMS Application Note 0 Document Title: SIM5360 SMS Application Note Version: 0.01 Date: 2014-02-21 Status: Document ID: Developing General Notes Simcom offers this information as a service to its customers,
Quectel Cellular Engine
Cellular Engine GSM FTP AT Commands GSM_FTP_ATC_V1.1 Document Title GSM FTP AT Commands Version 1.1 Date 2010-12-28 Status Document Control ID Release GSM_FTP_ATC_V1.1 General Notes offers this information
SIM800 Series_IP_Application Note_V1.02
SIM800 Series_IP_Application Note_V1.02 Document Title SIM800 Series_IP_Application Note Version 1.02 Date Status Document Control ID Release SIM800 Series_IP_ Application Note_V1.02 General Notes SIMCom
GSM. Quectel Cellular Engine. HTTP Service AT Commands GSM_HTTP_ATC_V1.2
GSM Cellular Engine HTTP Service AT Commands GSM_HTTP_ATC_V1.2 Document Title HTTP Service AT Commands Version 1.2 Date 2015-04-13 Status Document Control ID Release GSM_HTTP_ATC_V1.2 General Notes offers
SIM900 Eclipse environment install Application Note_V1.00
SIM900 Eclipse environment install Application Note_V1.00 Document Title: Note Version: V1.00 Date: 2011-01-11 Status: Document Control ID: Edit SIM900_Eclipse_environment_install_Application_Note _V1.01
SIMCom_3G_SSL_Application Note_V1.10
SIMCom_3G_SSL_Application Note_V1.10 Document Title: SIMCom_3G_SSL_Application Note Version: 1.10 Date: Status: Document Control ID: Release SIMCom_3G_SSL_Application Note_V1.10 General Notes SIMCom offers
Quectel Cellular Engine
Cellular Engine GSM UART Port Application Notes GSM_UART_AN_V1.01 Document Title GSM UART Port Application Notes Version 1.01 Date 2009-11-16 Status Document Control ID Release GSM_UART_AN_V1.01 General
SIM800 Series_SSL_Application Note_V1.01
SIM800 Series_SSL_Application Note_V1.01 Document Title: SIM800 Series_SSL_Application Note Version: 1.01 Date: 2014-06-30 Status: Document Control ID: Release SIM800 Series_SSL_ Application Note_V1.01
ADL User Guide for Open AT V4.10
ADL User Guide for Open AT V4.10 Revision: 002 Date: September 2006 ADL User Guide for Open AT V4.10 Revision: 002 Date: Reference: WM_DEV_OAT_UGD_019 Confidential Page: 1 / 220 Document History Index
TCPIP Application Note for WCDMA Solution V2.0
TCPIP Application Note for WCDMA Solution V2.0 Scope SIM5218, SIM5215, SIM5216, SIM5320 Reference SIMCOM_SIM5320_Serial_ATC_EN_V1.26.doc -1-2012-11-20 Content 1. External PPP Setting...3 2. SIMCom Internal
SIM800 Series_SSL_Application Note_V1.00
SIM800 Series_SSL_Application Note_V1.00 Document Title: SIM800 Series_SSL_Application Note Version: 1.00 Date: 2013-09-18 Status: Document Control ID: Release SIM800 Series_SSL_ Application Note_V1.00
GSM. Quectel Cellular Engine. GSM TCPIP Application Notes GSM_TCPIP_AN_V1.1
GSM Cellular Engine GSM TCPIP Application Notes GSM_TCPIP_AN_V1.1 Document Title GSM TCPIP Application Notes Version 1.1 Date 2011-09-22 Status Document Control ID Release GSM_TCPIP_AN_V1.1 General Notes
Quectel Cellular Engine
Cellular Engine HTTP Service AT Commands GSM_HTTP_ATC_V1.00 Document Title HTTP Service AT Commands Version 1.00 Date 2009-07-06 Status Document Control ID Release GSM_HTTP_ATC_V1.00 General Notes offers
WCDMA&GSM Module_Extra_Function_for_Network
WCDMA&GSM Module_Extra_Function_for_Network Document Title: Ve rsion : Date: Status: Document Control ID: General Notes SIMCom offers this information as a service to its customers, to support application
GIVE WINGS TO YOUR IDEAS TOOLS MANUAL
GIVE WINGS TO YOUR IDEAS TOOLS MANUAL PLUG IN TO THE WIRELESS WORLD Version: 001 / 1.0 Date: October 30, 2001 Reference: WM_TOO_OAT_UGD_001 confidential Page: 1 / 22 (THIS PAGE IS INTENTIONALY LEFT BLANK)
PC Base Adapter Daughter Card UART GPIO. Figure 1. ToolStick Development Platform Block Diagram
TOOLSTICK VIRTUAL TOOLS USER S GUIDE RELEVANT DEVICES 1. Introduction The ToolStick development platform consists of a ToolStick Base Adapter and a ToolStick Daughter card. The ToolStick Virtual Tools
Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs
Develop a Dallas 1-Wire Master Using the Z8F1680 Series of MCUs AN033101-0412 Abstract This describes how to interface the Dallas 1-Wire bus with Zilog s Z8F1680 Series of MCUs as master devices. The Z8F0880,
L16. Quectel GNSS Engine. EVB User Guide L16_EVB_UGD_V1.0
L16 GNSS Engine EVB User Guide L16_EVB_UGD_V1.0 Document Title L16 EVB User Guide Version 1.0 Date 2012-07-18 Status Document Control ID Released L16_EVB_UGD_V1.0 General Notes offers this information
GSM Click - Cross-Platform Development Quick Start Guide
GSM Click - Cross-Platform Development Quick Start Guide Overview This document explains how to use the MikroElektronika GSM Click board as an accessory to the following host development platforms (microcontrollers):
U10. Quectel Cellular Engine. Video Call Application Notes. U10_ Video_Call_AN_V1.0
U10 Cellular Engine Video Call Application Notes U10_ Video_Call_AN_V1.0 Document Title Video Call Application Notes Version 1.0 Date 2012-05-22 Status Document Control ID Released U10_Video_Call_AN_V1.0
Quectel Cellular Engine
Cellular Engine GPRS Startup User Guide GPRS_Startup_UGD_V1.01 Document Title GPRS Startup User Guide Version 1.01 Date 2009-11-16 Status Document Control ID Release GPRS_Startup_UGD_V1.01 General Notes
T-BOXN12R. First steps with T-BOXN12R. You can make it wireless. Date: 2004-07-16 Version 1.0
T-BOXN12R You can make it wireless First steps with T-BOXN12R Date: 2004-07-16 Version 1.0 Content 1. Purpose of this document... 3 2. T-BoxN12R overview... 4 3. First step... 5 3.1. Preparing your workshop
THE EASY WAY EASY SCRIPT FUNCTION
THE EASY WAY EASY SCRIPT FUNCTION Page: 1 Date: January 30th, 2006 The Easy Script Extension is a feature that allows to drive the modem "internally" writing the software application directly in a high
M72. Quectel Cellular Engine. EVB User Guide M72_EVB_UGD_V1.0
M72 Quectel Cellular Engine EVB User Guide M72_EVB_UGD_V1.0 Document Title EVB User Guide Version 1.0 Date 2011-05-18 Status Document Control ID Release M72_EVB_UGD_V1.0 General Notes Quectel offers this
Quectel Cellular Engine
Cellular Engine GSM Multiplexer Application Notes GSM_MUX_AN_V1.00 Document Title GSM Multiplexer Application Notes Version 1.00 Date 2009-06-27 Status Document Control ID Release GSM_MUX_AN_V1.00 General
M85 OpenCPU Solution Presentation
M85 OpenCPU Solution Presentation 2013/09/22 Wireless Solutions Co., Ltd. All rights reserved OUTLINE OpenCPU Summary Advantages Software Architecture What s New? Open Resources Development Requirements
Python for Series 60 Platform
F O R U M N O K I A Getting Started with Python for Series 60 Platform Version 1.2; September 28, 2005 Python for Series 60 Platform Copyright 2005 Nokia Corporation. All rights reserved. Nokia and Nokia
AN220 USB DRIVER CUSTOMIZATION
USB DRIVER CUSTOMIZATION Relevant Devices This application note applies to the following devices: CP2101/2/3/4/5/8, C8051F320/1/6/7, C8051F340/1/2/3/4/5/6/7/8/9/A/B/C/D, C8051F380/1/2/3/4/5/6/7, C8051T320/1/2/3/6/7,
C Programming. for Embedded Microcontrollers. Warwick A. Smith. Postbus 11. Elektor International Media BV. 6114ZG Susteren The Netherlands
C Programming for Embedded Microcontrollers Warwick A. Smith Elektor International Media BV Postbus 11 6114ZG Susteren The Netherlands 3 the Table of Contents Introduction 11 Target Audience 11 What is
Software User Guide UG-461
Software User Guide UG-461 One Technology Way P.O. Box 9106 Norwood, MA 02062-9106, U.S.A. Tel: 781.329.4700 Fax: 781.461.3113 www.analog.com ezlinx icoupler Isolated Interface Development Environment
BLUETOOTH SERIAL PORT PROFILE. iwrap APPLICATION NOTE
BLUETOOTH SERIAL PORT PROFILE iwrap APPLICATION NOTE Thursday, 19 April 2012 Version 1.2 Copyright 2000-2012 Bluegiga Technologies All rights reserved. Bluegiga Technologies assumes no responsibility for
M95 Dual SIM Application Notes
M95 Dual SIM Application Notes GSM/GPRS Module Series Rev. 3.0 Date: 2013-01-29 www.quectel.com Our aim is to provide customers with timely and comprehensive service. For any assistance, please contact
Email(SMTP/POP3) Application Note
Email(SMTP/POP3) Application Note Document Title: Email(SMTP/POP3) Application Note Version: 0.01 Date: 2014-02-21 Status: Document ID: Developing.doc General Notes SIMCom offers this information as a
Freescale Semiconductor, I
nc. Application Note 6/2002 8-Bit Software Development Kit By Jiri Ryba Introduction 8-Bit SDK Overview This application note describes the features and advantages of the 8-bit SDK (software development
µtasker Document FTP Client
Embedding it better... µtasker Document FTP Client utaskerftp_client.doc/1.01 Copyright 2012 M.J.Butcher Consulting Table of Contents 1. Introduction...3 2. FTP Log-In...4 3. FTP Operation Modes...4 4.
L10. Quectel GPS Engine. EVB User Guide L10_EVB_UGD_V1.00
L10 GPS Engine EVB User Guide L10_EVB_UGD_V1.00 Document Title L10 EVB User Guide Version 1.00 Date 2009-7-20 Status Document Control ID Release L10_EVB_UGD_V1.00 General Notes offers this information
Easy Script in Python. 80000ST10020a Rev.15 2012-10-09
APPLICABILITY TABLE GC Family ( Compact ) GC864-QUAD GC864-QUAD-V2 GC864-DUAL-V2 GE/GL Family ( Embedded ) GE864-QUAD GE864-QUAD-V2 GE864-QUAD-Automotive V2 GE864-QUAD-ATEX GE864-DUAL-V2 GE864-GPS GE865-QUAD
In-System Programmer USER MANUAL RN-ISP-UM RN-WIFLYCR-UM-.01. www.rovingnetworks.com 1
RN-WIFLYCR-UM-.01 RN-ISP-UM In-System Programmer 2012 Roving Networks. All rights reserved. Version 1.1 1/19/2012 USER MANUAL www.rovingnetworks.com 1 OVERVIEW You use Roving Networks In-System-Programmer
GTS-4E Hardware User Manual. Version: V1.1.0 Date: 2013-12-04
GTS-4E Hardware User Manual Version: V1.1.0 Date: 2013-12-04 Confidential Material This document contains information highly confidential to Fibocom Wireless Inc. (Fibocom). Fibocom offers this information
Wireless Communication With Arduino
Wireless Communication With Arduino Using the RN-XV to communicate over WiFi Seth Hardy [email protected] Last Updated: Nov 2012 Overview Radio: Roving Networks RN-XV XBee replacement : fits in the
Wi-Fi Router Huawei E5. User Guide
Wi-Fi Router Huawei E5 User Guide 1 Content Modem Description Specification SW installation guide User manual Troubleshooting Terms 2 Modem Description Huawei E5830 HSDPA Wifi-router and a USB modem combined
ETM9350-1/9400-1 Quick Start Guide
GSM/GPRS Terminal ETM9350-1 HSDPA/UMTS/GSM/GPRS Terminal ETM9400-1 Cinterion EU3-P Inside ETM9400-1 TC63i Inside ETM9350-1 ETM9350-1/9400-1 Quick Start Guide Features: 3G (HSDPA/UMTS) Connectivity ETM9400-1
SKP16C62P Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.
SKP16C62P Tutorial 1 Software Development Process using HEW Renesas Technology America Inc. 1 Overview The following tutorial is a brief introduction on how to develop and debug programs using HEW (Highperformance
Implementing SPI Master and Slave Functionality Using the Z8 Encore! F083A
Application Note Implementing SPI Master and Slave Functionality Using the Z8 Encore! F083A AN026701-0308 Abstract This application note demonstrates a method of implementing the Serial Peripheral Interface
FLYPORT Wi-Fi 802.11G
FLYPORT Wi-Fi 802.11G System on module 802.11g WIFI - Infrastructure mode - softap mode - Ad hoc mode Microchip PIC 24F 16 bit processor Microchip MRF24WG0MA/MB - Native WiFi 802.11g transceiver - PCB
ESP8266 WiFi Module Quick Start Guide
ESP8266 WiFi Module Quick Start Guide Introduction Your ESP8266 is an impressive, low cost WiFi module suitable for adding WiFi functionality to an existing microcontroller project via a UART serial connection.
Digitale Signalverarbeitung mit FPGA (DSF) Soft Core Prozessor NIOS II Stand Mai 2007. Jens Onno Krah
(DSF) Soft Core Prozessor NIOS II Stand Mai 2007 Jens Onno Krah Cologne University of Applied Sciences www.fh-koeln.de [email protected] NIOS II 1 1 What is Nios II? Altera s Second Generation
2014 GSM SHIELD COMPATIBLE WITH ARDUINO GSM SHIELD USING SIMCOMM (SIM900A)
2014 GSM SHIELD COMPATIBLE WITH ARDUINO GSM SHIELD USING SIMCOMM (SIM900A) Contents 1 Description... 3 1.1 SIM900... 5 1.2 Features... 6 1.3 Specifications for Fax... 6 1.4 Specifications for SMS via GSM/GPRS...
Wireless Microcontrollers for Environment Management, Asset Tracking and Consumer. October 2009
Wireless Microcontrollers for Environment Management, Asset Tracking and Consumer October 2009 Jennic highlights Jennic is a fabless semiconductor company providing Wireless Microcontrollers to high-growth
Modbus Communications for PanelView Terminals
User Guide Modbus Communications for PanelView Terminals Introduction This document describes how to connect and configure communications for the Modbus versions of the PanelView terminals. This document
HP Device Manager 4.6
Technical white paper HP Device Manager 4.6 Installation and Update Guide Table of contents Overview... 3 HPDM Server preparation... 3 FTP server configuration... 3 Windows Firewall settings... 3 Firewall
Display Message on Notice Board using GSM
Advance in Electronic and Electric Engineering. ISSN 2231-1297, Volume 3, Number 7 (2013), pp. 827-832 Research India Publications http://www.ripublication.com/aeee.htm Display Message on Notice Board
Kaseya 2. User Guide. Version 1.0
Kaseya 2 Mobile Device Management User Guide Version 1.0 March 12, 2012 About Kaseya Kaseya is a global provider of IT automation software for IT Solution Providers and Public and Private Sector IT organizations.
How To Use An Adh8012 Gsm Gprs Module With A Gsm 2.2.2 (Gsm) Gpros (Gsp) Gpls (Geo) Gsp (Gpl) Gs
ADH Technology Co. Ltd. ADH8012 GSM GPRS Modem User s Manual www.adh-tech.com.tw [email protected] Page 1 Content ADH8012 GSM GPRS Modem User s Manual... 1 1. Introduction... 3 2. Product concept...
How to Obtain an OPC License--5. Creating a System Code 5 Entering an Authorization Code 6. Getting Started with SNMP Editor--7
Contents Introduction--1 Product definition 1 Implementing SNMP 2 Integrating SNMP into the user interface 3 Components of OPC SNMP Gateway 4 How to Obtain an OPC License--5 Creating a System Code 5 Entering
MeshBee Open Source ZigBee RF Module CookBook
MeshBee Open Source ZigBee RF Module CookBook 2014 Seeed Technology Inc. www.seeedstudio.com 1 Doc Version Date Author Remark v0.1 2014/05/07 Created 2 Table of contents Table of contents Chapter 1: Getting
CCNA 2 Chapter 5. Managing Cisco IOS Software
1 CCNA 2 Chapter 5 Managing Cisco IOS Software The default source for Cisco IOS Software depends on the hardware platform; most commonly, though, the router looks to the configuration commands that are
Tenrox. Single Sign-On (SSO) Setup Guide. January, 2012. 2012 Tenrox. All rights reserved.
Tenrox Single Sign-On (SSO) Setup Guide January, 2012 2012 Tenrox. All rights reserved. About this Guide This guide provides a high-level technical overview of the Tenrox Single Sign-On (SSO) architecture,
BLE113 DEVELOPMENT KIT
BLE113 DEVELOPMENT KIT QUICK START Thursday, 14 March 2013 Version 1.5 Copyright 2000-2013 Bluegiga Technologies Bluegiga Technologies reserves the right to alter the hardware, software, and/or specifications
Send Email TLM. Table of contents
Table of contents 1 Overview... 3 1.1 Overview...3 1.1.1 Introduction...3 1.1.2 Definitions... 3 1.1.3 Concepts... 3 1.1.4 Features...4 1.1.5 Requirements... 4 2 Warranty... 5 2.1 Terms of Use... 5 3 Configuration...6
HP Security Modules. Software Upgrade Guide. Part number: 5998-2259 Document version: 6PW103-20130314
HP Security Modules Software Upgrade Guide Part number: 5998-2259 Document version: 6PW103-20130314 Legal and notice information Copyright 2013 Hewlett-Packard Development Company, L.P. No part of this
Bluetooth for device discovery. Networking Guide
Bluetooth for device discovery Networking Guide Index Document Version: v4.4-11/2014 Libelium Comunicaciones Distribuidas S.L. INDEX 1. Introduction... 3 1.1. General description...3 2. Hardware... 5 2.1.
Installation and Operation Manual TAP Application on the Open Java Server
Installation and Operation Manual Contents 1 Introduction... 1 1.1 Abbreviations and Glossary... 1 1.2 Functionality... 1 2 Protocol Mapping... 2 2.1 Unite Communications... 2 3 Installation... 4 3.1 Configuration...
DOCUMENT REFERENCE: SQ312-002-EN. SAMKNOWS SMARTPHONE-BASED TESTING SamKnows App for Android White Paper. March 2014
DOCUMENT REFERENCE: SQ312-002-EN SAMKNOWS SMARTPHONE-BASED TESTING SamKnows App for Android White Paper March 2014 SAMKNOWS QUALITY CONTROLLED DOCUMENT. SQ REV LANG STATUS OWNER DATED 312 002 EN FINAL
Testing Data Radio Modem with Serial Port Tool V1.20
Testing Data Radio Modem with Serial Port Tool V1.20 This document demonstrates how to test the communication of data radio modem with tool Advanced Serial Port Monitor from AGG Software and USB board.
Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation
Nokia and Nokia Connecting People are registered trademarks of Nokia Corporation Nokia E70 Configuring connection settings Nokia E70 Configuring connection settings Legal Notice Copyright Nokia 2006. All
Getting Started Guide with WIZ550web
1/21 WIZ550web is an embedded Web server module based on WIZnet s W5500 hardwired TCP/IP chip, Users can control & monitor the 16-configurable digital I/O and 4-ADC inputs on module via web pages. WIZ550web
AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping
AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping 3.1.1 Constants, variables and data types Understand what is mean by terms data and information Be able to describe the difference
Ultra Thin Client TC-401 TC-402. Users s Guide
Ultra Thin Client TC-401 TC-402 Users s Guide CONTENT 1. OVERVIEW... 3 1.1 HARDWARE SPECIFICATION... 3 1.2 SOFTWARE OVERVIEW... 4 1.3 HARDWARE OVERVIEW...5 1.4 NETWORK CONNECTION... 7 2. INSTALLING THE
OfficeServ Link. User Guide. Version 2.1 June 2005
OfficeServ Link User Guide Version 2.1 June 2005 OfficeServ Link Version 2.1 User Guide This manual should be read before the installation and operation of the OfficeServ Link Software. COPYRIGHT This
IPRS-7 IP/GPRS PC Receiver Software Quick Start V1.2
IPRS-7 IP/GPRS PC Receiver Software Quick Start V1.2 Overview Introduction Before You Begin Installation The IPRS-7 Main Page Configuring the IPRS-7 (IPRS-7 splash screen pictured) Introduction The IPRS-7
RN-XV-RD2 Evaluation Board
RN-XV-RD2 Evaluation Board 2012 Roving Networks. All rights reserved. -1.01Version 1.0 9/28/2012 USER MANUAL OVERVIEW This document describes the hardware and software setup for Roving Networks RN-XV-RD2
TRBOnet Enterprise 3.0
TRBOnet Enterprise 3.0 Installation and Configuration Guide TRBOnet Enterprise Installation and Configuration Guide 2 Contents: Architecture Overview 1 1.1. Architecture Overview 1 1.2. System Diagram
A Real Time, Object Oriented Fieldbus Management System
A Real Time, Object Oriented Fieldbus Management System Mr. Ole Cramer Nielsen Managing Director PROCES-DATA Supervisor International P-NET User Organisation Navervej 8 8600 Silkeborg Denmark [email protected]
RSA SecurID Ready Implementation Guide
RSA SecurID Ready Implementation Guide Partner Information Last Modified: December 18, 2006 Product Information Partner Name Microsoft Web Site http://www.microsoft.com/isaserver Product Name Internet
Point of View ProTab 3XXL IPS - Android 4.0 Tablet PC. Contents... 1 General notices for use... 2 Disclaimer... 2 Box Contents...
Point of View ProTab 3XXL IPS - Android 4.0 Tablet PC English Contents Contents... 1 General notices for use... 2 Disclaimer... 2 Box Contents... 2 1.0 Product basics... 3 1.1 Buttons and connections...
Interfacing an HTML Form to the ez80f91 MCU
Application Note Interfacing an HTML Form to the ez80f91 MCU AN020803-0708 Abstract This application note demonstrates how to use Zilog s ez80f91 microcontroller unit (MCU) as a web server to send electronic
Recording Supervisor Manual Presence Software
Presence Software Version 9.2 Date: 09/2014 2 Contents... 3 1. Introduction... 4 2. Installation and configuration... 5 3. Presence Recording architectures Operating modes... 5 Integrated... with Presence
Revision: 002 Date: September 2006. Porting Guide From EdSoft V3.10 to WIPSoft V2.00
Revision: 002 Date: September 2006 Porting Guide From EdSoft V3.10 to WIPSoft V2.00 PORTING GUIDE FROM EDSOFT V3.10 TO WIP SOFT V2.00 Reference: WM_DEV_OAT_UGD_027 Revision : 002 Date: 26th September 2006
Quectel Wireless Solutions Wireless Module Expert U10 UMTS Module Presentation
Quectel Wireless Solutions Wireless Module Expert U10 UMTS Module Presentation 2012-1 Contents General Description Target Applications Highlights Hardware Architecture Software Advantage Enhanced AT Commands
IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version 6.3.1 Fix Pack 2.
IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version 6.3.1 Fix Pack 2 Reference IBM Tivoli Composite Application Manager for Microsoft
5.1 Overview of Wireless Card Activation and Configuration
encor! enetworks TM Version A.5, January 2013 2013 Encore Networks, Inc. All rights reserved. Activating a Wireless Card in a Cellular Carrier Network Wireless connections use radiofrequencies (RF) through
IceWarp to IceWarp Server Migration
IceWarp to IceWarp Server Migration Registered Trademarks iphone, ipad, Mac, OS X are trademarks of Apple Inc., registered in the U.S. and other countries. Microsoft, Windows, Outlook and Windows Phone
USER GUIDE EDBG. Description
USER GUIDE EDBG Description The Atmel Embedded Debugger (EDBG) is an onboard debugger for integration into development kits with Atmel MCUs. In addition to programming and debugging support through Atmel
The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications
The BSN Hardware and Software Platform: Enabling Easy Development of Body Sensor Network Applications Joshua Ellul [email protected] Overview Brief introduction to Body Sensor Networks BSN Hardware
InventoryControl for use with QuoteWerks Quick Start Guide
InventoryControl for use with QuoteWerks Quick Start Guide Copyright 2013 Wasp Barcode Technologies 1400 10 th St. Plano, TX 75074 All Rights Reserved STATEMENTS IN THIS DOCUMENT REGARDING THIRD PARTY
Sierra Wireless AirCard Watcher Help for Mac OS X
Sierra Wireless AirCard Watcher Help for Mac OS X Sierra Wireless AirCard Watcher allows you to manage and monitor the connection between your modem and the network. With Watcher, you can: Determine signal
gpio.ipcore: Manual Copyright 2015 taskit GmbH
gpio.ipcore Manual gpio.ipcore: Manual Copyright 2015 taskit GmbH gpio.ipcore All rights to this documentation and to the product(s) described herein are reserved by taskit GmbH. This document was written
Features Overview Guide About new features in WhatsUp Gold v12
Features Overview Guide About new features in WhatsUp Gold v12 Contents CHAPTER 1 Learning about new features in Ipswitch WhatsUp Gold v12 Welcome to WhatsUp Gold... 1 What's new in WhatsUp Gold v12...
FTP Client Engine Library for Visual dbase. Programmer's Manual
FTP Client Engine Library for Visual dbase Programmer's Manual (FCE4DB) Version 3.3 May 6, 2014 This software is provided as-is. There are no warranties, expressed or implied. MarshallSoft Computing, Inc.
Products that are referred to in this document may be trademarks and/or registered trademarks of the respective owners.
2015 GEOVAP, spol. s r. o. All rights reserved. GEOVAP, spol. s r. o. Cechovo nabrezi 1790 530 03 Pardubice Czech Republic +420 466 024 618 http://www.geovap.cz Products that are referred to in this document
TRBOnet Watch. User Guide. Copyright 2011 Neocom Software, Ltd.
TRBOnet Watch User Guide TRBOnet Watch User Guide 2 Contents: Architecture Overview 4 Architecture Overview 4 Installing and Configuring TRBOnet Watch Server 5 Installing Prerequisite software 5 To install
MT-350 SMS. Operation Manual. PORTech Communications Inc.
MT-350 SMS Operation Manual PORTech Communications Inc. Index 1.Hardware Setup...1 2.Software Setup...1 3.Operation Guide...2 4.How to send out a short message...3 5.Report File...6 6.Q & A...6 MT-350
Section 11.1, Simple Network Management Protocol. Section 11.2, Port Data Capture
Chapter 11 SNMP and Port Data Capture This module discusses the Simple Network Management Protocol (SNMP) and the BANDIT device s Port Data Capture feature, and how they can be used to augment or enhance
Quick Reference Guide. Online Courier: FTP. Signing On. Using FTP Pickup. To Access Online Courier. https://onlinecourier.suntrust.
Quick Reference Guide Online Courier: FTP https://onlinecourier.suntrust.com With SunTrust Online Courier, you can have reports and files delivered to you using an FTP connection. There are two delivery
CGI-based applications for distributed embedded systems for monitoring temperature and humidity
CGI-based applications for distributed embedded systems for monitoring temperature and humidity Grisha Spasov, Nikolay Kakanakov Abstract: The paper discusses the using of Common Gateway Interface in developing
AKIPS Network Monitor Installation, Configuration & Upgrade Guide Version 16. AKIPS Pty Ltd
AKIPS Network Monitor Installation, Configuration & Upgrade Guide Version 16 AKIPS Pty Ltd July 5, 2016 1 Copyright Copyright 2015 AKIPS Holdings Pty Ltd. All rights reserved worldwide. No part of this
PATROL Console Server and RTserver Getting Started
PATROL Console Server and RTserver Getting Started Supporting PATROL Console Server 7.5.00 RTserver 6.6.00 February 14, 2005 Contacting BMC Software You can access the BMC Software website at http://www.bmc.com.
