AT+I Programmer`s Manual Version 7.4a
Transcription
AT+I Programmer`s Manual Version 7.4a
.. .. .. .. .. AT+I Programmer’s Manual . . . . . Version 7.4a ETEK R&D CO.,LTD. . . . . . .. .. .. .. . AT+I Programmer’s Manual V7.4a I NDE X 1. AT+i Command Set ..........................................................................................11 1.1. AT+i Command Guidelines .........................................................................11 1.2. AT+i Command Format...............................................................................11 1.3. Escape Code Sequence..............................................................................13 1.4. Auto Baud Rate Detection...........................................................................13 1.5. Reset via Serial Link....................................................................................14 1.6. Reset via Forced Watchdog Activation (ETPro 315/211 /312 only)............14 2. General Format .................................................................................................15 2.1. AT+i Commands by Category .....................................................................15 3. AT+i Result Code Summary............................................................................22 4. Report Status ....................................................................................................26 4.1. +iRP - Report Status ...................................................................................26 5. Connection ........................................................................................................28 5.1. +iBDRA - Forces ETPro Series into auto baud rate mode..........................28 5.2. +iUP - Initiate Internet Session....................................................................29 5.3. +iTUP - Triggered Internet Session Initiation ..............................................30 5.4. +iDOWN -Terminate Internet Session.........................................................31 5.5. +iPING - Send a PING Request to a Remote Server .................................32 5.6. +iWDR - Force Watchdog RESET ..............................................................33 6. Email Send Commands ...................................................................................34 6.1. +iEMA - Accept ASCII coded Lines for Immediate Email Send..................34 6.2. +iEMB - Accept Binary Data for Immediate Email Send .............................36 6.3. +iE* - Terminate Binary Email .....................................................................39 7. Email Retrieve ...................................................................................................40 7.1. +iRML - Retrieve Mail List ...........................................................................40 7.2. +iRMH - Retrieve Mail Header ....................................................................42 ETEK R&D CO.,LTD 2 .. .. .. .. . AT+I Programmer’s Manual V7.4a 7.3. +iRMM - Retrieve Mail Message .................................................................43 7.4. +iRFU - Retrieve Firmware Update via Email .............................................46 7.5. Email Receive (RMM) Flow Diagram ..........................................................47 8. HTTP Client Interface .......................................................................................48 8.1. +iRLNK - Retrieve Link................................................................................48 9. SerialNET Mode Initiation ................................................................................50 9.1. +iSNMD - Activate SerialNET mode ...........................................................50 10. Web Server Interface........................................................................................51 10.1. +iWWW - Activate Embedded Web Server.................................................51 10.2. +iWNXT - Retrieve Next Changed Web Parameter....................................52 11. File Transfer Protocol (FTP)............................................................................53 11.1. +iFOPN - FTP Open Session......................................................................53 11.2. +iFDL - FTP Directory Listing......................................................................55 11.3. +iFDNL - FTP Directory Names Listing.......................................................56 11.4. +iFMKD - FTP Make Directory ....................................................................57 11.5. +iFCWD - FTP Change Working Directory .................................................58 11.6. +iFRCV - FTP Receive File.........................................................................59 11.7. +iFSTO - FTP Open File for Storage ..........................................................61 11.8. +iFAPN - FTP Open File for Appending......................................................62 11.9. +iFSND - FTP Send File Data.....................................................................63 11.10. +iFCLF - FTP Close File .............................................................................65 11.11. +iFDEL - FTP Delete File ............................................................................66 11.12. +iFCLS - FTP Close Session ......................................................................67 12. Telnet Client.......................................................................................................68 12.1. +iTOPN - Telnet Open Session...................................................................68 12.2. +iTRCV - Telnet Receive Data....................................................................69 12.3. +iTSND - Telnet Send Data line..................................................................70 12.4. +iTBSN[%] - Telnet Send a Byte Stream ....................................................71 ETEK R&D CO.,LTD 3 .. .. .. .. . AT+I Programmer’s Manual V7.4a 12.5. +iTFSH[%] - Flush Telnet Socket’s Outbound Data....................................72 12.6. +iTCLS - Telnet Close Session ...................................................................73 13. Direct Socket Interface.....................................................................................74 13.1. +iSTCP - Open and Connect a TCP Socket ...............................................74 13.2. +iSUDP - Open a Connectionless UDP Socket ..........................................75 13.3. +iLTCP - Open a TCP Listen Socket ..........................................................76 13.4. +iLSST - Get a Listen Socket’s Active Connection Status..........................77 13.5. +iSST - Get a Single Socket Status Report ................................................78 13.6. +iSSND[%] - Send a Byte Stream to a Socket............................................79 13.7. +iSRCV - Receive a Byte Stream from a Socket’s Input Buffer..................80 13.8. +iGPNM - Get Peer Name for a Specified Socket ......................................81 13.9. +iSDMP - Dump Socket Buffer....................................................................82 13.10. +iSFSH[%] - Flush Socket’s Outbound Data ..............................................83 13.11. +iSCLS - Close Socket................................................................................84 14. Special Modem Commands ............................................................................85 14.1. +iMCM - Issue Intermediate Command to GPRS/CDMA module ..............85 15. IP Registration...................................................................................................86 15.1. mail Registration..........................................................................................86 15.2. Socket Registration .....................................................................................87 15.3. Web Server Registration .............................................................................87 16. ................................................................................................................................................................88 17. MIME Encapsulated Email Messages............................................................89 17.1. ETPro Series Generated Binary Message Formats....................................89 17.2. MIME Related AT+i Commands and Parameters.......................................91 17.2.1 AT+I Parameters that support Binary Attachments................................................................92 17.2.2 AT+i Command to define a textual body for Binary Messages..............................................93 17.3. MIME Encapsulated Email Message Format ..............................................94 18. Flow Control ......................................................................................................95 ETEK R&D CO.,LTD 4 .. .. .. .. . AT+I Programmer’s Manual V7.4a 18.1. Host ETPro Series Software Flow Control ..................................................95 18.2. Software Flow Control Diagram in Binary Email Send................................98 18.3. Software Flow Control During a Socket Send.............................................99 18.4. Software Flow Control Diagram in Socket Send ...................................... 100 18.5. Host-IP module Hardware Flow Control................................................... 101 19. ETPro Series Email Firmware Update .........................................................102 19.1. Introduction............................................................................................... 102 19.2. Transparent Update ................................................................................. 102 19.3. Initiated Update ........................................................................................ 103 19.4. Dedicated Mailbox Update ....................................................................... 104 19.5. Firmware Update Distribution................................................................... 105 20. ETPro Series Parameter Update...................................................................106 20.1. General..................................................................................................... 106 20.2. Remote Parameter File (RPF) Structure.................................................. 106 20.3. Header Parameters Names and Values .................................................. 108 20.4. Uploading a Parameters Update File to the ETPro Series ...................... 109 21. ETPro Series Embedded Web Server..........................................................111 21.1. Introduction............................................................................................... 111 21.2. Features ................................................................................................... 111 21.3. Web Server Modes................................................................................... 113 21.4. The Application Website........................................................................... 113 21.5. Parameter Tags........................................................................................ 115 21.6. ETPro Configuration Mode....................................................................... 115 21.7. Host Interaction Mode .............................................................................. 117 21.8. Website Creation, Packing and Uploading............................................... 120 21.9. Manipulating Variables in the Application Website .................................. 120 21.10. Security and Restrictions.......................................................................... 124 21.11. Parameter Update Error Handling............................................................ 126 ETEK R&D CO.,LTD 5 .. .. .. .. . AT+I Programmer’s Manual V7.4a 21.12. File Types Supported by ETPro Web Server: .......................................... 126 22. ETPro RAS Server ..........................................................................................127 22.1. Introduction............................................................................................... 127 22.2. RAS Parameters ...................................................................................... 127 22.3. RAS Theory of operation.......................................................................... 129 Auto PPP RAS Mode ..................................................................................................................... 130 SerialNET Mode ............................................................................................................................. 131 Lost Carrier..................................................................................................................................... 132 Restrictions..................................................................................................................................... 133 23. SerialNET Theory of Operation.....................................................................134 23.1. Introduction............................................................................................... 134 23.2. SerialNET Mode ....................................................................................... 134 23.3. Server Devices ......................................................................................... 136 23.4. Client Devices .......................................................................................... 136 23.5. Automatic SerialNET Server Wakeup Procedure .................................... 137 23.6. Transmit Packets...................................................................................... 138 23.7. Completing a SerialNET Session............................................................. 138 23.8. SerialNET Failed Connection ................................................................... 138 23.9. Local Serial Port Configuration................................................................. 138 23.10. Activation Command ................................................................................ 140 24. File Transfer Protocol (FTP) Theory of Operation .....................................141 24.1. Introduction............................................................................................... 141 24.2. ETPro Series FTP-Client Command Set.................................................. 141 24.3. ETPro FTP Client Operation Mode .......................................................... 142 24.4. FTP Command Socket ............................................................................. 142 24.5. FTP Receive Flow .................................................................................... 143 25. Telnet Client Operation..................................................................................144 26. Remote AT+i Service......................................................................................145 ETEK R&D CO.,LTD 6 .. .. .. .. . AT+I Programmer’s Manual V7.4a 26.1. Introduction............................................................................................... 145 26.2. Remote AT+i commands.......................................................................... 145 26.3. Closing a Remote AT+i Session .............................................................. 145 26.4. Caveats and Restrictions ..............................................................................2 27. Nonvolatile Parameter Database......................................................................3 27.1. Parameter Descriptions.................................................................................3 27.2. +iFD - Restore all Parameters to Factory Default .......................................10 27.3. Parameter Access Commands....................................................................11 27.3.1 +iXRC - Extended Result code............................................................................................11 27.3.2 +iDMD - Modem Dial Mode ..................................................................................................12 27.3.3 +iMIS - Modem Initialization String.....................................................................................13 27.3.4 +iMTYP - Set Type of GPRS/CDMA module Connected to IP Module ............................15 27.3.5 +iWTC - Wait Time Constant ...............................................................................................16 27.3.6 +iTTO - TCP Timeout............................................................................................................17 27.3.7 +iPGT - PING Timeout..........................................................................................................18 27.3.8 +iMPS - Max PPP Packet Size .............................................................................................19 27.3.9 +iTTR - TCP retransmit timeout ..........................................................................................20 27.3.10 +iBDRF - Define a Fixed Baud Rate on Host Connection ..............................................21 27.3.11 +iBDRM- Define a Fixed Baud Rate on IP module to GPRS/CDMA module Connection ...........................................................................................................................................................22 27.3.12 +iAWS - Activate WEB Server Automatically ..................................................................23 27.3.13 +iLATI - TCP/IP Listen Socket to Service Remote AT+I commands .............................24 27.3.14 +iFLW - Set Flow Control Mode ........................................................................................25 27.3.16 +iPSE - Set Power Save Mode...........................................................................................27 27.3.17 +iPN44 - Set Pin 44 Function: Clock-Out or Heart-Beat Signal .....................................28 27.3.18 +iWDM - Set Watchdog Activation Mode .........................................................................29 27.3.19 +iISPn - Set ISP Phone Number ........................................................................................30 27.3.20 +iATH Set PPP Authentication on Method .........................................错误!未定义书签。 27.3.21 +iUSRN - Define Connection User Name .........................................................................32 ETEK R&D CO.,LTD 7 .. .. .. .. - Number of times to Redial ISP ............................................................................34 27.3.23 +iRDL . AT+I Programmer’s Manual V7.4a 27.3.22 +iPWD - Define Connection Password.............................................................................33 27.3.24 +iRTO - Delay Period Between Redials to ISP.................................................................35 27.3.25 +iLVS - 'Leave on Server' Flag .....................................................................................36 27.3.26 +iDNSn - Define Domain Name Server IP Address .........................................................37 27.3.27 +iSMTP - Define SMTP Server Name ................................................................................38 27.3.28 +iSMA - SMTP Authentication Method.............................................................................39 27.3.29 +iSMU - Define SMTP Login User Name ..........................................................................40 27.3.30 +iSMP - Define SMTP Login Password ............................................................................41 27.3.31 +iPOP3 - Define POP3 Server Name.................................................................................42 27.3.32 +iMBX - Define POP3 Mailbox Name ................................................................................43 27.3.33 +iMPWD - Define POP3 Mailbox Password .....................................................................44 27.3.34 +iNTSn - Define Network Time Server..............................................................................45 27.3.35 +NTOD - Define Network Time-of-Day Activation Flag...................................................46 27.3.36 +iGMTO - Define Greenwich Mean Time Offset...............................................................47 27.3.37 +iDSTD - Define Daylight-Savings-Transition Rule ........................................................48 27.3.38 +iPDSn - Define PING Destination Server........................................................................49 27.3.39 +iPFR - PING Destination Server, Polling Frequency.....................................................50 27.3.40 +iUFn - User Fields & Macro Substitution ..........................................错误!未定义书签。 27.3.41 +iXFH - Transfer Headers Flag..........................................................................................53 27.3.42 +iHDL - Limit Number of Header Lines ............................................................................54 27.3.43 +iFLS - Define Filter String ................................................................................................55 27.3.44 +iSBJ - Email Subject Field ...............................................................................................56 27.3.45 +iTOA - Define Primary Addressee...................................................................................57 27.3.46 +iTO - Email 'To' Description/Name ....................................................................59 27.3.47 +iREA - Return Email Address..........................................................................................60 27.3.48 +iFRM - Email 'From' Description/Name ..........................................................................61 27.3.49 +iCCn - Define Alternate Addressee <n> .........................................................................62 ETEK R&D CO.,LTD 8 .. .. .. .. - Media Subtype String...........................................................................................64 27.3.51 +iMST . AT+I Programmer’s Manual V7.4a 27.3.50 +iMT - Media Type Value....................................................................................................63 27.3.52 +iFN - Attachment File Name ............................................................................................65 27.3.53 +iURL - Default URL Address............................................................................................66 27.3.54 +iWPWD – Password for Application Website Authentication......................................68 27.3.55 +iRAR - RAS RINGs............................................................................................................69 27.3.56 +iRAU - Define RAS Login User Name.............................................................................70 27.3.57 +iRAP – Password for RAS Authentication.....................................................................71 27.3.63 +iHSRV - Host Server Name/IP..........................................................................................72 27.3.64 +iDSTR - Define Disconnection String for SerialNET Mode ..........................................74 27.3.65 +iLPRT - SerialNET Device Listen Port ............................................................................75 27.3.66 +iRRMA -IP Registration Mail Address ............................................................................76 27.3.67 +iRRSV - Ring Response Host Server Name...................................................................77 27.3.68 +iRRWS - Ring Response Web Server .............................................................................78 27.3.69 +iRRRL - Ring Response Return Link..............................................................................79 27.3.70 +iHSTN – ETPro Host Name ..............................................................................................80 27.3.71 +iMBTB - Max Bytes To Buffer..........................................................................................81 27.3.72 +iMTTF - Max Timeout To Socket Flush ..........................................................................82 27.3.73 +iFCHR - Flush Character..................................................................................................83 27.3.74 +iMCBF - Maximum Characters Before Socket Flush .......................错误!未定义书签。 27.3.75 +iIATO - Inactivity Timeout................................................................................................84 27.3.76 +iSNSI - SerialNET Device Serial Interface ......................................................................86 27.3.77 +iSTYP - SerialNET Device Socket Type..........................................................................87 27.3.78 +iSNRD - SerialNET Device Re-initialization Delay.........................................................88 27.3.79 +iSPN - SerialNET Server Phone Number........................................................................89 27.3.80 +iSDT - SerialNET Dialup Timeout....................................................................................90 27.3.81 +iSWT - SerialNET Wakeup Timeout ................................................................................91 27.3.82 +iPTD - SerialNET Packets To Discard ............................................................................92 ETEK R&D CO.,LTD 9 .. .. .. .. -Define Dedicated Firmware Update Mailbox Name ........................................95 27.3.84 +iUMBX . AT+I Programmer’s Manual V7.4a 27.3.83 +iUEN - Email Firmware Update Enable...........................................................................94 27.3.85 +iUPOP - Define Dedicated Firmware Update POP3 Server Name ...............................96 27.3.86 +iUMPW - Define Dedicated Firmware Update Mailbox Password ...............................97 27.3.87 +iRPG – Remote Parameter Update Group/Password ......................错误!未定义书签。 28 Appendix A .......................................................................................................................................98 29 Appendix B .........................................................................................................................................2 29.1 Sample Parameter Update File ..............................................................................................2 30 Appendix C .........................................................................................................................................3 ETEK R&D CO.,LTD 10 .. .. .. .. . AT+I Programmer’s Manual V7.4a 1. AT+i Command Set 1.1. AT+i Command Guidelines The AT+i commands Internet-mode operations used to control the ETPro Series. When ETPro Series is in COMMAND mode, basic AT commands and raw data (not prefixed by AT+i) shall be transparently transferred to the underlying modem DCE (Digital Communications Equipment), where they will be serviced. AT and AT+i commands may be issued intermittently. During an Internet session, when ETPro Series is online, an AT command may be sent to the GPRS/CDMA module using the AT+iMCM command. The ASCII ISO 646 character set (CCITT T.50 International Alphabet 5, American Standard Code for Information Interchange) is used for the issuance of commands and responses. Only the low-order 7 bits of each character are used for commands or parameters; the high-order bit is ignored. Upper case characters are equivalent to lower case characters. 1.2. AT+i Command Format An AT+i command line is a string of characters sent from a Host to the ETPro Series while they are in the command state. The command line has a prefix, a body, and a terminator. Each command must begin with the character sequence AT+i and must be terminated by a carriage return (<CR>). Commands entered in upper-case or lower-case are accepted. Commands that do not begin with the AT+i prefix are transferred to the underlying DCE, where they are parsed and acted upon. DCE responses are transparently returned to the host. The AT+i command body is restricted to printable ASCII characters (032 - 126). The command terminator is the ASCII <CR> character. The command line interpretation begins upon receipt of the carriage return character (an exception to this rule are the AT+iEMB, AT+iSSND and AT+iFSND commands). ETEK R&D CO.,LTD 11 .. .. When ECHO. is enabled, the <CR> (Carriage Return) character is echoed as a 2-character .. sequence: <CR><LF> (Carriage Return + Line Feed). .. AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 12 .. .. .. .. . AT+I Programmer’s Manual V7.4a Characters within the AT+i command line are parsed as commands with associated parameter values. The ETPro Series support the editing of command lines by recognizing a backspace character. When ECHO is enabled, they respond to receipt of a backspace by echoing a backspace character, a space character, and another backspace. When ECHO is disabled, backspace characters are treated as data characters without further processing. If a syntax error is found anywhere in a command line, the remainder of the line will be ignored and the I/ERROR result code will be returned. Commands will only be accepted by the ETPro Series once the previous command has been fully executed, which is normally indicated by the return of an appropriate result code. 1.3. Escape Code Sequence While the ETPro Series is in Internet mode, attending to the Internet communications, it is possible to break into the data communications and abort the Internet mode in an orderly manner. This is achieved by sending the ETPro Series a sequence of three ASCII ‘+’ characters (‘+++’) after a half second silence period. In response to this, the ETPro Series will shut down the Internet communications, terminate data transmission to the host and respond with an ‘I/ERROR(056)’ message and return to command mode. A maximum delay of 10mSec may still exist from the time the ‘+++’ escape sequence was transmitted until ETPro Series cuts off the transmission to the host. The interrupted Internet activity will not be completed, however this will be considered to comprise a session. Thus, parameters set with the ‘~’ character shall be restored to their permanent value. 1.4. Auto Baud Rate Detection The ETPro Series supports auto baud rate detection on the host serial communications line. After power-up, the ETPro Series will go in to auto baud mode when the BDRF parameter contains ‘a’. The AT+iBDRA command forces the ETPro Series into auto baud mode while it is already in operation. In auto baud mode, the ETPro Series expects an ‘A’ or ‘a’ character. This is usually the first character sent, since in Command mode a meaningful command is always prefixed by ‘AT+i' (or ‘AT’ for ETPro Series). Any other characters shall be discarded without ETEK R&D CO.,LTD 13 .. .. .. . affecting the..baud rate detection mode. AT+I Programmer’s Manual V7.4a The host may send an ‘a’ or ‘A’ to the ETPro Series to allow it to determine the host’s baud rate. It may also send a complete ‘AT+i' (or ‘AT’ for ETPro Series) command. In any case the ETPro Series will detect the ‘A’ or ‘a’ character, determine the correct baud rate and configure the ETPro Series’s serial channel during the stop-bit. Thus, the next character will be received by the serial port at the correct baud rate. The ‘A’ itself is retained as well. ETPro Series supports auto baud rate detection for baud rates: 2400, 4800, 9600, 19200, 38400, 57600 and 115200. When the BDRF parameter contains a (fixed) baud rate, the ETPro Series will initialize to the specified baud rate without entering the auto-baud mode. Commands issued by the host must be sent using that baud rate in order to be recognized. In this case the ETPro Series may be forced into auto-baud mode by holding the special input signal low for not more than five seconds after power-up. When the BDRM parameter contains an ‘a’ value, the ETPro Series assumes the attached modem has the auto baud rate feature. Once the host-IP module baud rate is determined the IP module-GPRS/CDMA module baud rate will be set to the same. Otherwise, any other value in BDRM will be used as a fixed baud rate to the GPRS/CDMA module. 1.5. Reset via Serial Link Issuing a ‘BREAK’ signal on the Host serial link will effectively RESET the ETPro Series. A ‘BREAK’ signal is issued by transmitting a LOW (zero value) for a period that is longer than 23 bits at the current baud rate. Considerably lowering the host baud rate (300 baud or less) and transmitting a binary zero will in effect generate a ‘BREAK’ signal. After a ‘BREAK’ signal is issued, ETPro Series requires 4 seconds to complete the reset cycle before commands may be issued. When ETPro Series is configured for auto baud rate (AT+iBDRF=a), the ‘BREAK’ method is especially useful to force ETPro Series back into auto baud rate mode when ETPro Series and the host loose sync. 1.6. Reset via Forced Watchdog Activation (ETPro 315/211 /312 only) The ETPro 315/211/312 includes an internal Watchdog mechanism. When enabled, the internal watchdog circuitry will physically RESET the ETPro Series device if the ETPro Series firmware does not execute in an orderly manner, as expected. The AT+iWDR command forces the watchdog circuitry to instigate a RESET condition, as a means to reset the ETPro Series device with an AT+i command from the host. ETEK R&D CO.,LTD 14 .. .. .. .. . AT+I Programmer’s Manual V7.4a 2. General Format AT+i<cc>[<del>[<parameter> | #UFn]…]<CR> <cc> (or <par>) : 2-4 letter command code (<cc>) or parameter name (<par>) Delimiter: '=', '~', '?', ':', ‘,’ Optional parameter or data. If <parameter> contents includes a <del>, as defined above, it must be enclosed in single (‘) or double (“) quotes. The terminating <CR> is considered as a terminating quote as well. User-Field Macro Substitution. Carriage-Return Line terminator <del> : <parameter> : #UFn : <CR> : (ASCII 13) 2.1. AT+i Commands by Category Command AT+i Function Command Prefix Parameters/Description Required to precede all commands Host En <par>=value or <par>:value Echo Mode n=0 - Do not echo host characters (Default upon power up). n=1 - Echo all host characters. This command is equivalent to and interchangeable with ATEn. Parameter Database Maintenance Set Parameter value stored in parameter <par> in nonvolatile <par>~value Assign single session parameter value <par>? Read parameter ETEK R&D CO.,LTD Interface memory. <par> will retain set value across power down, indefinitely. For description of all available parameters see section 4.3 value is assigned to parameter <par> for the duration of a single Internet session. Following the session the original value is restored. Parameter value is returned. 15 .. .. .. .. . AT+I Programmer’s Manual V7.4a <par>=? FD RP<i> Parameter what? Factory Defaults Request Status report Returns the allowed values for this parameter. Restores all parameters to Factory Defaults. Returns a status report value based on <i>. BDRA Auto baud mode Connect to Internet Forces the ETPro Series into auto baud rate detection This command forces ETPro Series to go online, establish an Internet session and optionally register its IP address. TUP Triggered Internet Session Mode This command enters a mode, where ETPro Series will go online in response to triggers from external signals. It also supports a special “Always Online” mode. DOWN Disconnect from Internet PING a remote system RESET ETPro Series This command forces the ETPro Series to terminate an Internet session and go offline. Send PING message and wait for its echo response This command forces a H/W Reset to ETPro Series by utilizing the internal watchdog circuitry. UP PING WDR ETEK R&D CO.,LTD 16 .. .. .. .. . Command AT+I Programmer’s Manual V7.4a [!]EMA:<text > Function Parameters/Descri ption Email Send Immediate Defines the textual contents of the Email body. Send textual Email immediate Following this command several text lines may be sent in sequence. Sending a CR.CR (line containing only a period) terminates the text body. After termination the Email is sent automatically. Total <text> size is limited to 18K. Prefixes a binary data stream. The data is encapsulated as a base64 encoded MIME attachment. Following this prefix, exactly <sz> bytes are streamed to the ETPro Series. For values of <sz> greater than 256, ETPro Series’s software flow control applies. [!]EMB:<sz>,<data> Send Binary Email immediate [!]E* [!]RML Terminate Binary Terminates a Binary (MIME Attachment) Email Retrieve Email from Mailbox Retrieve Mail List Retrieves an indexed, short form, list of all qualifying [!]RMH[:<i>] Retrieve Header [!]RMM[:<i>] Retrieve Email RFU Firmware Update Retrieve a firmware update via Email. HTTP Client Download Retrieve a file from a URL on a Web server. If Retrieve Link [!]RLNK[:<URL> ] messages in mailbox. Retrieves only the Email header part from the <i>'th Email in the mailbox or the entire mailbox. Retrieves all Email contents of the <i>'th Email in the mailbox or the entire mailbox. <URL> is not specified, use the URL stored in the URL parameter. SerialNET [!]SNMD WWW WNXT Activate SerialNET mode Activate the ETPro Series’s dedicated Serial to Network HTTP Server Activate the Web Activate the ETPro Series’s internal Web Server. If server the ETPro Series is not online, it shall be connected. Retrieve next changed Web parameter Once activated, Returns the parameter Tag name and new value of the next Web parameter that has been changed as a result of a submit by a remote browser. Telnet Client TOPN TRCV TSND TBSN[%] ETEK R&D CO.,LTD Telnet Open Session Telnet Receive Telnet Send Line Telnet Send Open a Telnet session to a remote Telnet server. If the ETPro Series is not online, it shall be connected. Receive data from the remote Telnet server. Send an ASCII data line to the remote Telnet server. Send a binary data stream to the remote Telnet 17 .. .. .. .. . AT+I Programmer’s Manual V7.4a TFSH[%] TCLS ETEK R&D CO.,LTD Telnet Flush Telnet Close Flush the Telnet socket’s outbound data Close the Telnet session 18 .. .. .. .. . Command AT+I Programmer’s Manual V7.4a FOPN Function Parameters/Descri ption File Transfer Protocol (FTP ) Open an FTP command socket to a remote FTP Open FTP Link server. If the ETPro Series is not online, it shall be connected. Once an FTP link is established it may be used to carry out operations on the server’s file system. Retrieve the remote FTP server’s file directory listing. The full, server dependant, listing is returned. Retrieve the remote FTP server’s file directory listing. Only file names are returned. Creates a directory on the remote FTP server FDL FTP Directory Listing FDNL FRCV FSTO FTP Directory name list FTP Make Directory FTP Change Directory FTP File Receive FTP File Store FAPN FTP File Append FSND FTP File Send FCLF FTP Close File FDEL FTP Delete File FCLS FTP Close STCP:<host>,<port> Socket TCP Open and connect a TCP socket. If the ETPro Series is not online, it shall be connected. The responding system is assumed to be a server “listening”" on the specified socket. Responds with a handle to the socket. SUDP: Socket UDP Open, connect, and optionally bind a UDP socket. If the ETPro Series is not online, it shall be connected. Open a TCP listen socket on <port>. Allow a maximum of <backlog> concurrent connections. Responds with a handle to the socket. Maximum 2 listen sockets supported. Responds with a list of active socket handles FMKD FCWD <host>,<rport> [,<lport>] LTCP: <port>,<backlog> Listen Socket LSST:<hn> Listen Socket ETEK R&D CO.,LTD Commands the remote FTP server to change it’s current directory. Download a file from the remote FTP server. Open a file for upload to the remote FTP server. If the file already exists it shall be overwritten. Open a file on the remote FTP server for appending. If the file does not already exists it shall be created. Send data to a file on the remote FTP server. The file must have been opened for with a previous call to FSTO or FAPN, Close the currently open file on the FTP server. Any data uploaded to the file with FSND commands will be retained on the server. Delete a file from the remote FTP server’s file system. Close the FTP link 19 .. .. .. .. . AT+I Programmer’s Manual V7.4a SST:<hn> ETEK R&D CO.,LTD Single Socket Status Responds with the status of a single socket identified by handle <hn>. Subset of RP4 Report. 20 .. .. .. .. . Command AT+I Programmer’s Manual V7.4a SSND[%]: Function Parameters/Descri ption Socket Interface -- Continued Send a byte stream of size <sz> to the socket Socket Send <hn>,<sz>:<stream> SRCV:<hn>[,<max>] Socket Receive GPNM:<hn> Get Peer Name SDMP:<hn> SFSH[%]:<hn> [!]SCLS:<hn> MCM FU identified by handle <hn>. ‘%’ flags auto flush socket. Receive a byte stream from the socket identified by handle <hn>. Accept maximum <max> bytes. If <max> is not specified, all available bytes are retrieved. Retrieve Peer Name (<IP>:<Port>) of a remote connection to a TCP/UDP socket specified by the socket handle <hn>. Dump socket Dump all buffered data currently accumulated buffer in a socket’s input buffer. The socket remains open. Flush Socket’s Flush (immediately send) accumulated data in a Outbound Data socket’s outbound buffer. If the ‘%’, flush-andacknowledge flag, is specified, ETPro Series will wait for the peer to acknowledge receipt of the TCP Close Socket Close a TCP/UDP socket. If the socket was the only open socket and the stay-online flag (‘!’) was not specified, the ETPro Series will terminate the Internet session and go offline. Special Modem Command Interlaced Modem Sends an interlaced AT command to the modem while it is on-line. Command Remote Firmware Update Firmware Upload Enters local firmware upload mode via the Ymodem protocol. In a dial-up environment allows a remote terminal program to dial in for direct modem to modem upload. PU Remote Parameter Update Enters local parameter-file (RPF) or application Parameter/ Website update mode via the Ymodem protocol. In Website Upload a dial-up environment allows a remote termi nal program to dial in for direct modem to mode m upload. Table 2-1 AT+i Commands by Category ETEK R&D CO.,LTD 21 .. .. .. . 3. AT+i.. Result Code Summary AT+I Programmer’s Manual V7.4a Response String I/OK I/BUSY I/DONE Command was successfully executed. ETPro Series device Busy. Command discarded. ETPro completed Internet activity. Returned to command mode. I/ONLINE ETPro Series device completed an Internet activity and returned to command mode. ETPro will issue this response when it has remained on-line as a result of the stay-online flag (!) or as a result of the Web server being on-line. I/RCV Marks beginning of Email Retrieve mode, with XFH=1. ETPro Series device will not respond to any commands, excluding ‘+++’ (Break). Marks Beginning of MIME attachment part. Marks end of MIME attachment part. Marks end of Email message during retrieve. This flag is returned when attempting to retrieve mail from an empty mailbox. ETPro is downloading a new firmware version. Allow up to 5 minutes to complete. I/PART I/EOP I/EOM I/MBE I/UPDATE I/ERROR(nnn) nnn Command Error Encountered. Command Discarded. 41 Illegal delimiter 63 42 43 44 Illegal value CR expected Number expected 64– 66 45 46 47 48 49 50 51 CR or ‘,’ expected DNS expected ‘:’ or ‘~’ expected String expected ‘:’ or ‘=’ expected Text expected Syntax error 67 68 69 70 71 72 73 RESERVED Timeout on host communication Modem failed to respond No dial tone response No carrier modem response Dial failed 52 ‘,’ expected 74 Modem Connection with ISP lost 53 Illegal command code 75 Access denied to ISP server 54 55 Error when setting parameter Error when getting parameter value User abort 76 77 Unable to locate POP3 server POP3 server timed out 78 Access denied to POP3 server 56 ETEK R&D CO.,LTD ~CTSH needs to be LOW to change to H/W flow control. RESERVED Command ignored as irrelevant 22 .. .. .. .. . AT+I Programmer’s Manual V7.4a 57 Error when trying to establish PPP 58 Error when trying to establish SMTP 59 Error when trying to establish POP3 60 Single session body for MIME exceeds the maximum allowed 61 Internal memory failure 62 User aborted the system I/ERROR (nnn) nnn POP3 failed 80 No suitable message in mailbox 81 Unable to locate SMTP server 82 SMTP server timed out 83 84-86 SMTP failed RESERVED …Continued 87 Web Server IP registration failed 111 Serial data overflow 88 89 Socket IP registration failed Email IP registration failed 112 113 Command illegal when modem online Email firmware update attempted, but not completed. The original firmware remained intact Email parameters update rejected SerialNET could not be started due to missing parameters 90 94 IP registration failed for all methods specified 97 In “Always Online” mode, connection was lost and reestablished A Watchdog reset event had occurred and restarted ETPro A remote host, that had taken over ETPro through the LATI port, had disconnected Reserved 98 Reserved 95 96 100 ETEK R&D CO.,LTD 79 114 115 200 201 Socket does not exist Socket empty on receive 202 Socket not in use 203 Socket Down 204 No available sockets 205 206 207 Socket receive buffer full Obsolete PPP open failed for socket Error creating socket 208 209 210 Socket send error Socket receive error PPP down for socket 101 102 103 Error restoring default parameters No ISP access numbers defined No USRN defined No PWD entered 104 No DNS defined 211 105 106 POP3 server not defined MBX (mailbox) not defined 212 213 TCP down for socket Obsolete. Use 203. Socket flush error Socket pwait no UDP error Obsolete 107 MPWDdefined 214 Socket pwait error Obsolete (mailbox password) not 23 .. .. .. .. . AT+I Programmer’s Manual V7.4a 108 TOA (addressee)not defined 109 REA (return Email address) not defined 110 SMTP server not defined I/ERROR (nnn) nnn 215 216 No carrier error on socket operation General exception 217 Out of Memory …Continued 300 301 302 303 HTTP server unknown HTTP server timeout HTTP failure No URL given 500 501 502 503 Communications Platform Not Available Communications Platform already Active 304 305 Bad HTTP host name Bad HTTP port number 504 505 306 Bad URL address 506 RESERVED Cannot open additional FTP session – all FTP handles in use Not an FTP session handle 307 308 URL address too long The AT+iWWW command failed because the ETPro does not contain a home page. 507 508 FTP server not found Timeout when connecting to FTP server 509 510 511 Failed to login to FTP server (bad username or password or account) FTP command could not be completed FTP data socket could not be opened 512 513 Failed to send data on FTP data socket FTP shutdown by remote server RESERVED RESERVED 400 MAC address exists 550 Telnet server not found 401 No IP address 551 552 553 554 555 Timeout when connecting to Telnet server Telnet command could not be completed Telnet session shutdown by remote server A Telnet session is not currently active A Telnet session is already open 556 Telnet server refused to switch to BINARY mode Telnet server refused to switch to ASCII mode Client could not retrieve a ring response Email Remote peer closed the SerialNET socket PING destination not found No reply to PING request 557 560 561 570 571 Table 3-1 AT+i Result Code Summary ETEK R&D CO.,LTD 24 .. .. .. ETPro Series response strings are terminated with <CR><LF> Note: All .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 25 .. .. .. .. 4. Report . Status AT+I Programmer’s Manual V7.4a 4.1. +iRP Syntax: Report Status AT+iRPi Return Appropriate Status Message. Parameters: i = 0 .. 8 Scope: ETPro Series. Command Options: i =0 Returns the ETPro Series part number. i =1 Returns the current firmware revision and date. i =2 Returns the connection status. i =3 Returns Boot-block revision. i =4 Returns ETPro Series socket status. i =5 Returns unique serial number. i= 6 (Reserved) i= 7 Returns socket-buffers utilization bitmap. i= 8 Returns current time-of-day based on time retrieved from the Network Time Server and the GMT offset setting. Returns an all-zero response if a time was not yet retrieved from the network since the last power-up. Default: Result code: Status Message I/ERROR ETEK R&D CO.,LTD None if i = 0..8; Followed by I/OK. Otherwise 26 .. .. Status Message .. Format: .. Format Report . Option AT+I Programmer’s Manual V7.4a 0 1 2 3 4 5 6 7 COnnnAD-ii nnn – Version number; ii – Interface code: L – LAN, S- Serial ICmmmTss mmm – Major Version; T – Version type code; ss – Sub-version Status string: "Modem data<CR/LF>" "Command mode<CR/LF>" "<CR/LF>Connecting to ISP<CR/LF>" "<CR/LF>Connected to ISP<CR/LF>" "<CR/LF>Closing PPP<CR/LF>" "<CR/LF>Establishing SMTP<CR/LF>" "<CR/LF>Sending Email<CR/LF>" "<CR/LF>Establishing nnmm – Boot-block Version Number (as: nn.mm) I/(<sock0sz>, <sock1sz>, … ,<sock9sz>) sock<i>sz >=0 : Number of bytes pending in socket's input buffer <0 : Negative value of Socket's Error code nnnnnnnn – Hexadecimal representation of ETPro Series serial number. Current ARP table listing: INTERNET ADDRESS PHYSICAL ADDRESS STATE TTL nnn nnn nnn nnn xxxxxxxxxxxx VALID nnn sec I/xxxx xxxx – 16 bit Hex Value Bitmap A bit set to ‘1’ indicates that the corresponding socket contains buffered data, which needs to be read by the host. bit 15 socke 8 ETEK R&D CO.,LTD 10 WE 9 7 8 7 6 5 4 3 2 0 1 0 Bit 10 is set to ‘1’, when the remote browser updates one or more application Website Parameter Tags. It will be reset to ‘0’ when the host reads any application Website Parameter, using: AT+i<Parameter Tag>? The current Time-of-Day is returned according to ISO 8601: <YYYY-MM-DD>T<HH:MM:SS> <TZD> YYYY-MM-DD -- Year-Month-Day ; ‘T’ – Fixed Separator ; HH:MM:SS -- Hrs:Mins: Ses ; TZD -- Time Zone Designator: +hh: mm or –hh: mm Table 4-1 Report Status Message Format 27 .. .. .. .. . 5. Connection AT+I Programmer’s Manual V7.4a 5.1. +iBDRA - Forces ETPro Series into auto baud rate mode Syntax: AT+iBDRA Forces the ETPro Series into ‘auto baud’ mode. The following ‘A’, ‘AT’ or ‘AT+i' command (in any combination of upper or lower case) from the host will synchronize on the host’s baud rate. Parameters: None. Scope: ETPro Series. Command Options: ETPro supports auto baud rate detection for baud rates: 2400, 4800, 9600, 19200, 38400, 57600 and 115200. Result code: I/OK ETEK R&D CO.,LTD This result code will be sent using the previous baud rate. 28 .. .. .. 5.2. +iUP.. . AT+I Programmer’s Manual V7.4a Syntax: Initiate Internet Session AT+iUP[:n] Parameters: Default: n=0..1 Default: n=0 Scope: ETPro Series Command Options: n=0 n=1 Result code: I/ONLINE Or I/ERROR ETEK R&D CO.,LTD Initiate an Internet session by going online and establishing a PPP Internet connection. Once online, optionally go through an IP registration process, as determined by n. Go online and establish a PPP Internet connection. Go online, establish a PPP Internet connection and carry out the IP registration process according to the relevant registration option parameters. After successfully establishing an Internet Session and completing the IP registration (if requested). If ETPro Series could not go online and establish an Internet session or could not complete the requested IP registration. 29 .. .. .. .. - Triggered Internet Session Initiation 5.3. +iTUP . AT+I Programmer’s Manual V7.4a Syntax: AT+iTUP:<n> Enter triggered Internet session initiation mode. Parameters: n = 0..2 Scope: ETPro Series Command Options: n=0 Disable triggered Internet session initiation mode. n=1 Enter triggered Internet session initiation mode. n=2 Always online. Result code: I/OK Or I/ERROR ETEK R&D CO.,LTD if n is within limits. Otherwise. 30 .. .. .. .. . AT+I Programmer’s Manual V7.4a 5.4. +iDOWN -Terminate Internet Session Syntax: AT+iDOWN Terminate an ongoing Internet session, go offline and return to Command mode. This command is useful, in a dialup environment, following a command where the stay-online flag (!) was specified. All open sockets shall be closed and the Web server shall be deactivated. ETPro Series effectively executes a software reset. Parameters: None Scope: ETPro Series Result code: I/OK Followed by I/ERROR After terminating the current Internet session when the command caused ETPro to abort an ongoing Internet activity or close an active socket. Or I/DONE After terminating the current Internet session. Allow a 2.5 sec. delay for ETPro re-initialization following an Internet mode session. ETEK R&D CO.,LTD 31 .. .. .. .. - Send a PING Request to a Remote Server 5.5. +iPING . AT+I Programmer’s Manual V7.4a Syntax: AT+iPING:<host > Parameters: <host > = Logical name of the target host or a host IP address. Scope: ETPro Series Command Options: <host > Result code: I/<RRT> I/ERROR ETEK R&D CO.,LTD Sends a two byte ICMP PING request packet to the remote host defined by host. The host name may be any legal Internet-server name, which can be resolved by the ETPro’s DNS (Domain Name Server) settings. The host name may also be specified as an absolute IP address given in DOT form. Upon successfully receiving an ICMP PING reply from the host, the round trip time in milliseconds is returned (RRT). ETPro Series will allow up to <PGT > milliseconds for a PING reply. If a reply will not be received within <PGT > milliseconds, ETPro Series will send two more PING requests, allowing <PGT > milliseconds for a reply on each of the requests before reporting an error. Otherwise. 32 .. .. .. .. . - Force Watchdog RESET 5.6. +iWDR AT+I Programmer’s Manual V7.4a Syntax: AT+iWDR Forces the ETPro Series device to perform a hard RESET, by means of its internal Watchdog circuit. After performing a hard RESET, ETPro Series will: 1. Restore the host serial port to the baud rate in effect when the WDR command was issued, regardless of the BDRF parameter value. 2. A modem hangup process will be performed to resolve the possible case where the modem was online when the RESET occurred. 3. A BREAK condition is forced on the TXDH signal, to notify the host that a Watchdog reset has occurred. Parameters: None. Scope: ETPro 221/325 . Result code: I/OK ETEK R&D CO.,LTD 33 .. .. .. .. 6. Email . Send Commands AT+I Programmer’s Manual V7.4a 6.1. +iEMA - Accept ASCII coded Lines for Immediate Email Send Syntax: AT+i[!]EMA:<text lines > Define a plain-text Email body. Parameters: <text lines > = Plain-text Email body. The Email body contains <CR/LF> terminated ASCII character strings. <text lines> must be terminated by a '.' (Dot character) in the 1 st column of an otherwise empty line. Scope: ETPro Series Command Options: <text lines> ::= {<ASCII text line><CRLF> …}<CRLF>.<CRLF> Maximum size of <text lines> is limited to 18K, provided that no additional system resources are in use. EMA uses the specified SMTP server to send the Email message. When ETPro Series acquires TOD from a network timeserver, outgoing Email messages will be time and date stamped. ! Stay On-Line after completing the command Result code: I/OK I/ERROR After all text lines have been received and terminated by the '.' line. If a memory overflow has occurred before all text lines have been received. Followed by I/DONE After successfully sending the Email. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. Or ETEK R&D CO.,LTD 34 .. .. .. .. . AT+I Programmer’s Manual V7.4a I/ONLINE Or I/ERROR If some error occurred during the send session. ETEK R&D CO.,LTD 35 .. .. .. .. - Accept Binary Data for Immediate Email Send 6.2. +iEMB . AT+I Programmer’s Manual V7.4a Syntax: AT+i[!]EMB[#]:<sz >,<data > Define and send a MIME encoded Binary Email. Parameters: <sz > = size of <data > in bytes. <data > = <sz > bytes of binary data. Scope: ETPro Series Command Options: <sz > = 0..4GB <data > = 8 bit binary data. Must be exactly <sz > bytes. The binary data will be encapsulated in a MIME encoded Email message. The receiving end will view the binary data as a standard Email attachment. Several consecutive +iEMB commands may be issued in sequence to create a larger aggregate of data to be sent. The Email contents are completed by issuing an AT+iE* (terminate binary Email) command. Following the first +iEMB command, ETPro Series will establish an Internet connection while the data stream is being transmitted from the host. Once an SMTP session is established, ETPro Series will maintain a data transmit pipeline between the host and the SMTP server. ETPro Series converts the binary data using BASE64 encoding on the fly. Following this command, the Internet session shall remain active to service additional +iEMB commands, until the +iE* terminating command. EMB uses the specified SMTP server to send the Email message. When ETPro Series acquires TOD from a network timeserver, outgoing Email messages will be time and date stamped. ETEK R&D CO.,LTD ! Stay On-Line after completing command. This flag is redundant, as the ETPro Series defaults to staying online until the AT+iE* command is issued. # Modem baud rate limit flag. When this character is included in the command, the IP module baud rate to the GPRS/CDMA module is limited by the baud rate from the host. When this character is not present, the IP module will attempt to lift the baud 36 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD rate to the GPRS/CDMA module to its maximal value. 37 .. .. .. .. . AT+I Programmer’s Manual V7.4a Result code: I/OK I/ERROR Notes: Note: ETEK R&D CO.,LTD If <sz> is within limits and after <sz> bytes have been received successfully. if <sz> is out of bounds, or if a communications error occurred during the Internet session. If <sz> is larger than 256 bytes, the ETPro Series assumes Host flow control. Depending on the setting of the FLW parameter, the flow control mode is either software or hardware. Under software flow control the Host processor must respond to ETPro’s flow control characters. The software flow control protocol is detailed in the “Host IP module Software Flow Control” section later in this document. When software flow control is active it is recommended to set the IP module to Echo-Off mode. Under hardware flow control the ~CTS/~RTS RS232 control signals must be connected and the host must respond to the IP module’s ~CTS signal. The host may send data only when the ~CTS signal is asserted (active low). If a transmission error occurs, while in hardware flow control, IP module shall continue receiving all remaining <sz> bytes before returning the I/ERROR response. Some SMTP servers limit Email message size, to a lower value than ETPro’s limitations. 38 .. .. .. .. 6.3. +iE* .- Terminate Binary Email AT+I Programmer’s Manual V7.4a Syntax: AT+i[!]E* Parameters: Terminate the current Immediate Binary Email attachment. None. Scope: ETPro Series Command Options: ! Stay On-Line after completing the command Result code: I/OK I/ERROR If a binary Email attachment is in the process of being defined. The Email message is terminated and the SMTP session is then completed and closed. Otherwise. Followed by I/DONE After successfully sending the Email. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. or I/ONLINE After successfully sending the Email, if the stay-online flag (!) was specified. or I/ERROR If some error occurred during the send session. ETEK R&D CO.,LTD 39 .. .. .. .. . AT+I Programmer’s Manual V7.4a 7. Email Retrieve 7.1. +iRML - Retrieve Mail List Syntax: AT+i[!]RML Retrieve pending Email list from current Mailbox. Parameters: None. Scope: ETPro Series Command Options: ! Result code: I/OK I/ERROR Stay On-Line after completing the command To acknowledge successful receipt of the command. Otherwise. Returns: I/MBE If the Mailbox is empty Otherwise, A list of qualifying Email message descriptors, separated by <CR/LF>. An Email message descriptor is composed of 5 <TAB> separated fields: <i><TAB> <sz><TAB> <date><TAB> <sbjct string><TAB> <type/subtype><CR/LF> where, <i> <sz> <date> - Email message index in mailbox - Email message size in bytes - Email message date (for the date field format refer to RFC822). <sbjct string> - Email message subject string (limited to 128 bytes). <type/subtype> - MIME Content-Type. The literal ‘NONE’ is used for non-MIME Email messages. Followed by ETEK R&D CO.,LTD 40 .. .. .. .. . AT+I Programmer’s Manual V7.4a I/DONE After successfully retrieving the Email list. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. or I/ONLINE After successfully retrieving the Email list, if the stay-online flag (!) was specified. or I/ERROR Otherwise. ETEK R&D CO.,LTD 41 .. .. .. .. . - Retrieve Mail Header 7.2. +iRMH AT+I Programmer’s Manual V7.4a Syntax: AT+i[!]RMH[:i] Parameters: Scope: Retrieve header of Email message <i> from current Mailbox. i = Optional Email message index of a qualifying message. If no parameter is used, all Email headers will be retrieved. ETPro Series Command Options: i= ! Default: Result code: I/OK I/ERROR Returns: I/MBE Optional index of a qualifying message, as reported by AT+iRML. Stay On-Line after completing the command Retrieve headers of all pending qualified mail messages. When command has been received and about to be processed. Otherwise. If the Mailbox is empty Otherwise, All Header lines of all qualifying Email messages. Header lines are returned “as-is”. A line containing solely a ‘.’ (period) in column 1 acts as a separator between the header lines of each Email. The ‘HDL’ parameter limits the number of header lines per mail (HDL=0 specifies an unlimited number of lines per Email). Header field syntax is described in RFC822 and RFC2045. Followed by I/DONE or I/ONLINE or I/ERROR ETEK R&D CO.,LTD After successfully retrieving the Email headers. Allow a 2.5 sec. delay for ETPro re-initialization following an Internet mode session. After successfully retrieving the Email headers, if the stay-online flag (!) was specified. - Otherwise. 42 .. .. .. .. - Retrieve Mail Message 7.3. +iRMM . AT+I Programmer’s Manual V7.4a Syntax: AT+i[!]RMM[:i] Retrieve contents of Email message i from current Mailbox. i = Optional Email message index of a qualifying message. If no parameter is used, all Emails will be retrieved. Parameters: Scope: ETPro Series Command Options: i= Optional index of a qualifying message, as reported by AT+iRML. ! Stay On-Line after completing the command Default: Retrieve all pending qualified mail messages. Result code: I/OK I/ERROR Returns: I/MBE When command has been received and about to be processed. Otherwise. If the Mailbox is empty Otherwise, For each Email part: (For plain text Emails without MIME attachments) I/PART – text<TAB>plain<TAB><TAB>quoted-printable<CR/LF> -- or -(For Emails containing MIME attachments) I/PART – <media type><TAB><media subtype><TAB><filename><TAB> <encoding method><CR/LF> -- or -(When XFH (transfer Email headers) is set to ‘YES’ ) I/RCV ETEK R&D CO.,LTD 43 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD Followed by <The Email message contents> 44 .. .. .. .. If the ‘XFH’ parameter (transfer Email headers) is set to ‘YES’, all Email . contents shall be returned as-is. The Email’s headers followed by the Email’s AT+I Programmer’s Manual V7.4a body will be retrieved. MIME encapsulated Email messages shall be retrieved without BASE64 decoding. It is assumed that when the XFH parameter is set to ‘YES’, the host processor attends to all Email field parsing and contents decoding. If the ‘XFH’ parameter (transfer Email headers) is set to ‘NO’, only the Email body (contents) shall be retrieved. If the Email message contains a MIME encapsulated attachment encoded in BASE64, the ETPro Series shall perform the decoding and transfer pure binary data to the host. Binary attachments encoded in a scheme other than BASE64 shall be returned asis. Followed by I/EOP - End of Part Message, if message was prefixed with an I/PART line. This shall repeat itself for all Email parts. Followed by I/EOM - End of Message This shall repeat itself for all qualifying Email messages. When all messages have been retrieved: Followed by I/DONE After successfully retrieving the Email. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. or I/ONLINE or I/ERROR ETEK R&D CO.,LTD After successfully retrieving the Email, if the stayonline flag (!) was specified. - Otherwise. 45 .. .. .. .. . - Retrieve Firmware Update via Email 7.4. +iRFU AT+I Programmer’s Manual V7.4a Syntax: AT+iRFU Parameters: Scope: Command Options: Result code: I/OK I/ERROR Followed by: I/UPDATE Followed by I/DONE or I/ONLINE Retrieve a Firmware Update via Email. None. ETPro Sreies None. If the UMBX, UPOP and UMPW or non-empty their values shall be used to determine the Mailbox to search for the firmware update. Otherwise the MBX, POP3 and MPWD parameters will be used instead. To acknowledge successful receipt of the command. Otherwise. If a qualifying Firmware Update Email was found and is being process. Allow a 4-minute delay forETPro Series re-program. When complete and after successfully updating the new firmware if the I/UPDATE was issued. When complete and after successfully updating the new firmware if the I/UPDATE was issued. or I/ERROR - Otherwise. Note: The boot-block cannot be updated by email. ETEK R&D CO.,LTD 46 .. .. .. .. Receive (RMM) Flow Diagram 7.5. Email . AT+I Programmer’s Manual V7.4a Issue AT+iRMM Figure 7-1 Email Receive (RMM) Flow Diagram ETEK R&D CO.,LTD 47 .. .. .. .. 8. HTTP . Client Interface AT+I Programmer’s Manual V7.4a 8.1. +iRLNK - Retrieve Link Syntax: AT+i[!]RLNK[:URL] Parameters: Scope: Command Options: <protocol> <host> <port> <abs_link> ! Default: Result code: I/OK Retrieve a file from a URL. URL = Optional URL address, which specifies the host, path and source-file that will be retrieved. URL address syntax: “<Protocol>://<host>[[:<port>]/[<abs_link>]/]” ETPro Series = http = Host name or IP address. = 0..65535 (If not specified, defaults to 80). = Path, filename and file extension of the file to retrieve on the designated host. Stay On-Line after completing the command Uses the URL address stored in the URL parameter. When command has been received and about to be processed. Otherwise I/ERROR Returns: I/<sz><CR><LF> Followed by <binary data stream> Where, <sz> is the exact size of the <binary data stream> to follow. If <sz> is unknown, ETPro Series returns I/0, followed by the data stream. When this is the case, the host must monitor for a timeout condition of at least 5 seconds without any data being transmitted before seeing one of the terminator lines described under ‘Followed by’. Followed by I/DONE or I/ONLINE ETEK R&D CO.,LTD After successfully retrieving the file. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. After successfully retrieving the file, if the stay-online 48 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD flag (!) was specified. or I/ERROR - Otherwise. (Always proceeded by 5 sec. silence). 49 .. .. .. .. 9. SerialNET Mode Initiation . AT+I Programmer’s Manual V7.4a 9.1. +iSNMD - Activate SerialNET mode Syntax: AT+i[!]SNMD Activate SerialNET mode. Parameters: None. Scope: ETPro Series Command Options: ! Result code: I/OK I/ERROR Followed by I/DONE Note: ETEK R&D CO.,LTD Optional “Auto-Link” mode. When this flag is specified, ETPro Series will immediately go online when activating SerialNET mode (even when serial data has not yet arrived). If the LPRT (Listen Port) parameter is defined, ETPro Series will open the listen port and await a connection. If LPRT is not defined, but HSRV (Host Server) is defined, ETPro Series will immediately open a SerialNET socket link to the server. If all minimum required parameters for SerialNET mode operation are defined (HSRV or LPRT and for ETPro Series also – ISP1, USRN, PWD) otherwise. After successfully activating SerialNET mode, Allow a 2.5 sec. delay for ETPro Series re’initialization. To terminate SerialNET mode issue the ESC sequence or power-cycle the ETPro Series with the MDSEL signal held low. After exiting SerialNET mode the ETPro Series will return to normal AT+i command mode. 50 .. .. .. .. . Server Interface 10. Web AT+I Programmer’s Manual V7.4a 10.1.+iWWW - Activate Embedded Web Server Syntax: AT+iWWW[:n ] Parameters: Activate Internal Web Server. n = Web browser backlog. n represents the number of simultaneous browsers that can connect to the ETPro Series Web server simultaneously at any given time. Scope: ETPro Series Command Options: <n > 1..3 Default: 1 Returns: I/(<Local IP addr .>) Where, Local IP addr is the ETPro Series local IP address. ETPro Series will go on-line and the local IP addr is assigned dynamically by the ISP. Or I/ERROR ETEK R&D CO.,LTD If a connection to the Internet was unsuccessful. 51 .. .. .. .. 10.2.+iWNXT - Retrieve Next Changed Web Parameter . AT+I Programmer’s Manual V7.4a Syntax: AT+iWNXT Retrieve the Parameter Tag name and new value of the next changed application Web parameter, which has not been retrieved since it was changed by the remote browser. Parameters: None. Scope: ETPro Series Returns: <Parameter Tag>=<New Value> <CR><LF> When there are no more remaining changed parameters a blank, <CR><LF> terminated line is returned. Followed by I/OK ETEK R&D CO.,LTD 52 .. .. .. .. 11. File . Transfer Protocol (FTP) AT+I Programmer’s Manual V7.4a 11.1.+iFOPN - FTP Open Session Syntax: AT+iFOPN:<server>[,<port>]:<user>,<pass>[,<accnt>] Open an FTP link to an FTP Server Parameters: <server> = Logical name of the FTP or the server’s IP address. <port> = Optional FTP port in the range 0..65535. <user> = FTP User’s name. <pass> = FTP User’s password. <accnt> = Optional FTP Account. Scope: ETPro Series Command Options: <server> The server name may be any legal Internet-server name, which can be resolved by the ETPro’s DNS (Domain Name Server) settings. The server name may also be specified as an absolute IP address given in DOT form. <port> Specifies the FTP server’s "listening" port. If not specified, port 21 (decimal) is assumed. <user> User’s name string. This must be a registered user on the FTP server. Some servers allow anonymous login, in which case user=anonymous. <pass> Password to authenticate user. If special characters are used, the password should be specified within quotes. It is customary that servers, which allow anonymous login, request an Email address as a password. <accnt> Some FTP servers require an account in order to allow a certain subset of the commands. In this case the account name must be specified when opening the FTP link. ETEK R&D CO.,LTD AT+i Programmer’s Manual Version 7.4a 53 53-1 .. .. .. .. . AT+I Programmer’s Manual V7.4a Result code: I/<FTP handle> I/ERROR ETEK R&D CO.,LTD Upon successfully connecting to the FTP Server and authenticating the user, a socket handle is returned. The handle <FTP handle> is used to reference the FTP Session in all following FTP commands. Otherwise. 54 .. .. .. .. - FTP Directory Listing 11.2.+iFDL . AT+I Programmer’s Manual V7.4a Syntax: AT+iFDL:<F_hn >[,<path >] Return a full FTP directory listing. Parameters: <F_hn > = An open FTP Session handle. <path > = Directory or filename wild-card. Scope: ETPro Series Command Options: <F_hn > <path > Result code: I/OK I/ERROR Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Optional directory name or filename wild-card. If <path > is a directory, that directory’s files shall be listed. If it is a filename wild-card, only matching filenames in the current directory shall be listed. If <path > is not specified, the current directory shall be listed in full. To acknowledge successful receipt of the command. If <F_hn > is not an open FTP Session or otherwise some error has occurred. Returns: A list of filenames with file attributes. Each file is listed on a separate line, terminated by <CR/LF>. The file data line syntax is FTP server dependant. Followed by: I/ONLINE ETEK R&D CO.,LTD After successfully retrieving the directory list. 55 .. .. .. .. 11.3.+iFDNL - FTP Directory Names Listing . AT+I Programmer’s Manual V7.4a Syntax: AT+iFDNL:<F_hn >[,<path >] Return the FTP directory name list Parameters: <F_hn > = An open FTP Session handle. <path> = Optional directory or filename wild-card. Scope: ETPro Series Command Options: <F_hn > <path > Result code: I/OK I/ERROR Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Optional directory name or filename wild-card. If <path > is a directory, that directory’s files shall be listed. If it is a filename wild card, only matching filenames in the current directory shall be listed. If <path > is not specified, the current directory shall be listed in full. To acknowledge successful receipt of the command. If <F_hn > is not an open FTP Session or otherwise some error has occurred. Returns: A bare list of filenames. Each file name is listed on a separate line, terminated by <CR/LF>. No attributes are returned in addition to the filename. Followed by: I/ONLINE ETEK R&D CO.,LTD After successfully retrieving the directory list. 56 .. .. .. .. 11.4.+iFMKD - FTP Make Directory . AT+I Programmer’s Manual V7.4a Syntax: AT+iFMKD:<F_hn>,<path> Parameters: Scope: <F_hn > = An open FTP Session handle. <path > = directory pathname. ETPro Series Command Options: <F_hn > <path > Result code: I/OK I/ERROR ETEK R&D CO.,LTD Create a new directory on FTP server’s file system. Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Directory name. A new directory will be created under the current directory, as indicated by path. If path includes nonexistent subdirectories, some FTP servers will be create them as well. To acknowledge successful completion of the command. If <F_hn > is not an open FTP Session or otherwise some error has occurred. 57 .. .. .. .. 11.5.+iFCWD - FTP Change Working Directory . AT+I Programmer’s Manual V7.4a Syntax: AT+iFCWD:<F_hn >,<path > Change the current FTP working directory Parameters: <F_hn > = An open FTP Session handle. <path > = New directory path name. Scope: ETPro Series Command Options: <F_hn > <path > Result code: I/OK I/ERROR ETEK R&D CO.,LTD Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Absolute or relative path name of the new directory. The special directory “..” signifies “directory up”. After successfully changing the working directory. Otherwise. 58 .. .. .. .. 11.6.+iFRCV - FTP Receive File . AT+I Programmer’s Manual V7.4a Syntax: AT+iFRCV:<F_hn>,<path> Download a file from an FTP server. Parameters: <F_hn> = An open FTP Session handle. <path> = File path name. Scope: ETPro Series Command Options: <F_hn> <path> Result code: I/OK I/ERROR Followed by: I/ERROR Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Absolute or relative path name of the remote file. When command has been received and about to be processed. If <F_hn> is not an open FTP Session or otherwise some error has occurred. If the FTP RECV command could not be processed. -orI/<sz><CR><LF> Followed by: <data stream> Where, <sz> is the exact size (in bytes) of the <data stream> to follow. If <sz> cannot be determined, ETPro Series returns I/0, followed by the data stream. When this is the case, the host must monitor for a timeout condition of at least 5 seconds without any data being transmitted before seeing the ‘I/ONLINE’ to deduce that the data stream is complete. If <sz> was reported but a transmission error occurred, preventing the ETPro Series from returning all <sz> data bytes an I/ERROR command will be issued after a 5 seconds nontransmission period. See FTP Receive Flow Diagram. Followed by: ETEK R&D CO.,LTD 59 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD I/ONLINE After successfully retrieving the file contents 60 .. .. .. .. 11.7.+iFSTO - FTP Open File for Storage . AT+I Programmer’s Manual V7.4a Syntax: AT+iFSTO:<F_hn >,<path >[,<sz >] Open a remote FTP server file for upload. Parameters: <F_hn > = An open FTP Session handle. <path > = Destination file path name. <sz > = Optional size in bytes to reserve for the file on the remote FTP server. Scope: ETPro Series Command Options: <F_hn > <path > Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Absolute or relative path name of the remote destination file. Following this command data is transferred to the remote file using one or more +iFSND commands. The file transfer is complete by issuing a +iFCLF (FTP File Close) command. Result code: I/OK I/ERROR ETEK R&D CO.,LTD If file <path > was successfully open for writing on the FTP server. Otherwise. 61 .. .. .. .. 11.8.+iFAPN - FTP Open File for Appending . AT+I Programmer’s Manual V7.4a Syntax: AT+iFAPN:<F_hn >,<path >[,<sz >] Open an existing remote FTP server file for Append. Parameters: <F_hn > = An open FTP Session handle. <path > = File path name. <sz > = Size in bytes to reserve for the file on server. Scope: ETPro Series Command Options: <F_hn > <path > Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Absolute or relative path name of the remote destination file. Following this command data is transferred to the remote file using one or more +iFSND commands. The file transfer is complete by issuing a +iFCLF (FTP File Close) command. Result code: I/OK I/ERROR ETEK R&D CO.,LTD If file <path > was successfully open for appending on the FTP server. Otherwise. 62 .. .. .. .. 11.9.+iFSND - FTP Send File Data . AT+I Programmer’s Manual V7.4a Syntax: AT+iFSND:<F_hn>,<sz>:<stream…> Upload data to a remote FTP server file. Only valid after a successful AT+iFSTO or AT+iFAPN command. Parameters: Scope: Command Options: <F_hn> <stream> <F_hn> = An open FTP Session handle. <sz> = The exact size of the data stream that follows. <stream> = a byte stream of size <sz> composing the remote file contents. ETPro Series Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. An 8-bit byte stream of exactly size <sz>. If <sz> is larger than 256 bytes, the ETPro Series assumes Host flow control. Depending on the setting of the FLW parameter, the flow control mode is either software or hardware. Under software flow control mode the Host processor must respond to the ETPro’s flow control characters. The flow control protocol is detailed in the “Host-IP module Software Flow Control” section later in this document. When software flow control is active it is recommended to set the ETPro to Echo-Off mode. Under hardware flow control the ~CTS/~RTS RS232 control signals must be connected and the host must respond to the ETPro’s ~CTS signal. The host may send data only when the ~CTS signal is asserted (active low). Several consecutive +iFSND commands may be issued in sequence to create a larger aggregate of data to be sent. The File transfer is complete by issuing a +iFCLF (FTP Close File) command. Result code: I/OK ETEK R&D CO.,LTD After <sz> bytes have been transferred 63 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD I/ERROR successfully to the FTP server. Otherwise. 64 .. .. .. 11.10. .. +iFCLF - FTP Close File . AT+I Programmer’s Manual V7.4a Syntax: AT+iFCLF:<F_hn > Parameters: <F_hn > = An open FTP Session handle. Scope: ETPro Series Command Options: <F_hn > Result code: I/OK I/ERROR ETEK R&D CO.,LTD Close File Downloaded to a remote FTP server file. Only valid after a successful AT+iFSTO or AT+iFAPN command and optional AT+iFSND commands. Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. After successfully closing the file. Otherwise. 65 .. .. .. 11.11. .. +iFDEL - FTP Delete File . AT+I Programmer’s Manual V7.4a Syntax: AT+iFDEL:<F_hn >,<path > Delete a remote FTP file Parameters: <F_hn > = An open FTP Session handle. <path > = File path name. Scope: ETPro Series Command Options: <F_hn > <path > Result code: I/OK I/ERROR ETEK R&D CO.,LTD Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Absolute or relative path name of the remote destination file to delete. After successfully deleting the remote file. Otherwise. 66 .. .. . 11.12. ... +iFCLS - FTP Close Session . AT+I Programmer’s Manual V7.4a Syntax: AT+i[!]FCLS:<F_hn > Close the FTP link Parameters: <F_hn > = An open FTP Session handle. Scope: ETPro Series Command Options: <F_hn > ! Result code: I/OK Followed by: I/DONE or I/ONLINE Must have been obtained by a previous execution of an AT+iFOPN command during the current Internet mode session. Stay On-Line after completing the command When command has been received and about to be processed. When the FTP link was the last open socket and after successfully closing the FTP link. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. After successfully closing the FTP link, when additional sockets are still active or the stay-online flag (!) was specified in ETPro Series. or I/ERROR – Otherwise ETEK R&D CO.,LTD 67 .. .. .. .. . AT+I Programmer’s Manual V7.4a 12. Telnet Client 12.1.+iTOPN - Telnet Open Session Syntax: AT+iTOPN:<server > Parameters: Scope: <server > = Logical name of the Telnet server or the server’s IP address. ETPro Series Command Options: <server > Result code: I/OK I/ERROR ETEK R&D CO.,LTD Open a Telnet link (socket) to a Telnet server on port 23. The server name may be any legal Internet-Server name, which can be resolved by the ETPro’s DNS (Domain Name Server) settings. The server name may also be specified as an absolute IP address given in DOT form. Upon successfully connecting to the remote Telnet server. Otherwise. 68 .. .. .. .. 12.2.+iTRCV - Telnet Receive Data . AT+I Programmer’s Manual V7.4a Syntax: AT+iTRCV[:<max >] Receive Data from the Telnet server. Parameters: <max > = Optionally specifies the maximum number of bytes to transfer. Scope: ETPro Series Result code: I/ERROR If no Telnet session is open or otherwise some error has occurred. Returns: I/<sz>[:<binary data stream>] Where, <sz> is the exact size of the binary data stream to follow. If the socket input buffer is empty, ETPro Series returns I/0. In this case the ‘:’ and <binary data stream> are omitted. <sz> is guaranteed to be equal or less than <max >, when specified. ETEK R&D CO.,LTD 69 .. .. .. .. 12.3.+iTSND - Telnet Send Data line . AT+I Programmer’s Manual V7.4a Syntax: AT+iTSND:<data line> Send data to the remote Telnet server Parameters: <data line> = a line of data bytes to be sent to the telnet server. The ETPro Series will terminate the <data line> with a <CR><LF> while sending the line to the Telnet server. Scope: ETPro Series Command Options: <data line> Result code: I/OK I/ERROR ETEK R&D CO.,LTD If the line to be sent incorporates ETPro Series delimiter characters (‘,’ ; ‘:’ ; ‘=’ ; ‘~’), <data line> must be enclosed in single (‘) or double (“) quotes. The AT+i command terminating <CR> is considered as a terminating quote as well. After the <data line> has been successfully sent to the Telnet server. Otherwise. 70 .. .. .. .. 12.4.+iTBSN[%] - Telnet Send a Byte Stream . AT+I Programmer’s Manual V7.4a Syntax: AT+iTBSN[%]:<sz >:<stream > Send a byte stream of size <sz > to the Telnet server. Parameters: <sz > = The exact size of the byte stream that follows. <stream > = a byte stream of size <sz > to be sent to the Telnet server. Scope: ETPro Series Command Options: <sz > <stream > ‘%’ flag Result code: I/OK I/ERROR ETEK R&D CO.,LTD 0..4GB. An 8-bit byte stream of exactly size <sz >. If <sz > is larger than 256 bytes, the ETPro Series assumes Host flow control. Depending on the setting of the FLW parameter, the flow control mode is either software or hardware. Under software flow control mode the Host processor must respond to the ETPro’s flow control characters. The flow control protocol is detailed in the “Host-IP module Software Flow Control” section later in this document. Under hardware flow control the ~CTS/~RTS RS232 control signals must be connected and the host must respond to the IP module’s ~CTS signal. The host may send data only when the ~CTS signal is asserted (active low). When the auto-flush (‘%’) flag is specified the telnet socket is automatically flushed immediately after receiving the <stream > from the host. Otherwise, data will be transmitted to the Internet only in integral quantities of the specified MTU (Maximum Transfer Unit) or when the AT+iTFSH command is issued. After <sz > bytes have been transferred successfully to the telnet socket’s output buffer. Otherwise. 71 .. .. .. .. 12.5.+iTFSH[%] - Flush Telnet Socket’s Outbound Data . AT+I Programmer’s Manual V7.4a Syntax: AT+iTFSH[%] Parameters: None. Scope: ETPro Series Command Options: ‘%’ flag Result code: I/OK I/ERROR ETEK R&D CO.,LTD Flush (immediately send) accumulated data in a telnet socket’s outbound buffer. When the flush-and-acknowledge (‘%’) flag is specified, the ETPro Series will both flush and wait for the Telnet server receipt acknowledgment of all outstanding outbound data. If all outbound data has been received and acknowledged by Telnet server. Otherwise. 72 .. .. .. .. 12.6.+iTCLS - Telnet Close Session . AT+I Programmer’s Manual V7.4a Syntax: AT+i[!]TCLS Close the Telnet link Parameters: None. Scope: ETPro Series Command Options: ! Result code: I/OK Stay On-Line after completing the command If an active Telnet socket exists. Followed by: I/DONE or I/ONLINE or I/ERROR ETEK R&D CO.,LTD When the Telnet link was the last open socket and after successfully closing the Telnet link. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. After successfully closing the Telnet link, when additional sockets are still active or the stay-online flag (!) was specified in ETPro Series. - Otherwise 73 .. .. .. .. . 13. Direct Socket Interface AT+I Programmer’s Manual V7.4a 13.1.+iSTCP - Open and Connect a TCP Socket Syntax: AT+iSTCP:<host >,<port > Opens a TCP (Transmission Control Protocol) client socket and attempts to connect it to the specified <port > on a server defined by <host >. Parameters: <host > = Logical name of the target server or a host IP address. <port > = 0..65535 Scope: ETPro Series Command Options: <host > <port > The server name may be any legal Internetserver name, which can be resolved by the ETPro’s DNS (Domain Name Server) settings. The server name may also be specified as an absolute IP address given in DOT form. It is assumed that the server system is "listening" on the specified port. Result code: I/<sock handle> Upon successfully opening and connecting the TCP socket to the <host >:<port >, a socket handle is returned. The socket handle <sock handle> is in the range 0..9 and is used to reference the socket in all following socket commands. I/ERROR Otherwise. ETEK R&D CO.,LTD 74 .. .. .. .. 13.2.+iSUDP - Open a Connectionless UDP Socket . AT+I Programmer’s Manual V7.4a Syntax: AT+iSUDP:<host>,<rport>[,<lport>] Opens a UDP (User Datagram Protocol) socket and sets the remote system’s <host>:<port> address. Parameters: Scope: <host> = Logical name of the target server or a host IP address. Or, 0.0.0.0 to open a non-connected socket. <rport> = Remote port number to send to. Or, 0 to open a non-connected socket. <lport> = Optional local UDP port to use. ETPro Series Command Options: <host> <rport> <lport> The remote system’s name may be any legal Internet-server name, which may be resolved by the ETPro’s DNS (Domain Name Server) settings. The server name may also be specified as an absolute IP address given in DOT form. When the <host> is defined the resulting UDP socket will be created and connected. If <host>=’0.0.0.0’, the socket is created but remains un-connected. The first UDP packet to arrive will automatically latch the senders IP port, in effect connecting the socket. Specifies the remote system’s port. Specifies the local port to use. If unspecified, the ETPro Series Family will allocate a port from its internal pool Result code: I/<sock handle> Upon successfully opening and connecting the UDP socket to the <host>:<port>, a socket handle is returned. The socket handle <sock handle> is in the range 0..9 and is used to reference the socket in all following socket commands. I/ERROR Otherwise. ETEK R&D CO.,LTD 75 .. .. .. .. 13.3.+iLTCP - Open a TCP Listen Socket . AT+I Programmer’s Manual V7.4a Syntax: AT+iLTCP:<port>,<backlog> Opens a TCP listen socket on the local IP address and the specified port <port>. <backlog> specifies the maximum number of remote concurrent connections allowed through the listen socket. Parameters: <port> = 0..65535 <backlog> = 1..10 Scope: ETPro Series Command Options: <port> <backlog> Listening port to be used by a remote system when connecting to the ETPro Series. Specifies the maximum number of active connections that may be concurrently established through the listen socket. Once the listen socket is open it will automatically accept remote connect requests until the maximum allowed. When a remote system connects through the listen socket, a new TCP socket is spawned internally and is ready to send and receive data. See the AT+iLSST command for details on retrieving the handles of active sockets connected through a listen socket. When a connected socket is closed the listen socket will allow a new connection in its place. Result code: I/<sock handle> Upon successfully opening a TCP listen socket, a socket handle is returned. The socket handle <sock handle> is in the range 10..11 and is used to reference the socket in all following socket commands. I/ERROR Otherwise. ETEK R&D CO.,LTD 76 .. .. .. .. 13.4.+iLSST - Get a Listen Socket’s Active Connection . AT+I Programmer’s Manual V7.4a Status Syntax: AT+iLSST:<hn > Retrieve handles of active socket connections, established through the listen socket identified by <hn >. Parameters: <hn > = A TCP listen socket handle of an open listen socket. Scope: ETPro Series Command Options: <hn > Must have been obtained by a previous AT+iLTCP command during the current Internet session. Result code: I/(<hn 1 >, …,<hn Backlog >) A list of active socket handles. The list shall contain <backlog> elements, where <backlog> was used when opening the listen socket identified by <hn >. Where, <hn i > >= 0 : A handle to an active connected socket = -1 : No connection has been established. I/ERROR ETEK R&D CO.,LTD If <hn > is not an open listen socket, or otherwise some error occurred. 77 .. .. .. .. - Get a Single Socket Status Report 13.5.+iSST . AT+I Programmer’s Manual V7.4a Syntax: AT+iSST:<hn > Retrieve a socket status report for a single socket. This is a subset of the general AT+iRP4 report command. Parameters: <hn > = A TCP/UDP socket handle. Scope: ETPro Series Command Options: <hn > Must have been obtained by a previous execution of an AT+iSTCP or AT+iSUDP command during the current Internet mode session. Or a socket accepted by a listen socket. Result code: I/(<sockstat>) Where, <sockstat> >= 0 : Number of bytes pending in socket <hn >'s input buffer < I/ERROR ETEK R&D CO.,LTD 0 : Socket Error code If some error occurred. 78 .. .. .. .. 13.6.+iSSND[%] - Send a Byte Stream to a Socket . AT+I Programmer’s Manual V7.4a Syntax: AT+iSSND[%]:<hn>,<sz>:<stream> Send a byte stream of size <sz> to the socket specified by the socket handle <hn>. Parameters: <hn> = A TCP/UDP socket handle of an open socket. <sz> = The exact size of the byte stream that follows. <stream> = a byte stream of size <sz> to be sent to the specified socket. Scope: ETPro Series Command Options: <hn> <sz> <stream> ‘%’ flag Result code: I/OK I/ERROR ETEK R&D CO.,LTD Must have been obtained by a previous execution of an AT+iSTCP or AT+iSUDP command during the current Internet mode session. Or a socket accepted by a listen socket. 0..4GB. An 8-bit byte stream of exactly size <sz>. If <sz> is larger than 256 bytes, the ETPro Series assumes Host flow control. Depending on the setting of the FLW parameter, the flow control mode is either software or hardware. Under software flow control mode the Host processor must respond to the ETPro’s flow control characters. The flow control protocol is detailed in the “Host-IP module Software Flow Control” section later in this document. Under hardware flow control the ~CTS/~RTS RS232 control signals must be connected and the host must respond to the ETPro’s ~CTS signal. The host may send data only when the ~CTS signal is asserted (active low). When the auto-flush (‘%’) flag is specified the socket is automatically flushed immediately after receiving the <stream>. Otherwise, data will be transmitted to the Internet only in integral quantities of the specified MTU (Maximum Transfer Unit) or when the AT+iSFSH command is issued. After <sz> bytes have been transferred successfully to the socket’s output buffer. Otherwise. 79 .. .. .. .. 13.7.+iSRCV - Receive a Byte Stream from a Socket’s Input . AT+I Programmer’s Manual V7.4a Buffer Syntax: AT+iSRCV:<hn>[,<max>] Parameters: Scope: Command Options: <hn> <max> Result code: I/ERROR Receive a byte stream from the TCP/UDP socket specified by the socket handle <hn>. Receive data is valid only if it already resides in the ETPro’s socket input buffer at the time this command is issued. <hn> = A TCP/UDP socket handle of an open socket. <max> = Optionally specifies the maximum number of bytes to transfer. Additional bytes may remain in the socket input buffer following this command. ETPro Series Must have been obtained by a previous execution of an AT+iSTCP or AT+iSUDP command during the current Internet mode session. Or a socket accepted by a listen socket. If <max> is not specified, all available bytes residing in the socket input buffer shall be returned. If <hn> is not an open socket, or otherwise some error occurred. Returns: I/<sz>[:<binary data stream>] Where, <sz> is the exact size of the binary data stream to follow. If the socket input buffer is empty, ETPro Series returns I/0. In this case the ‘:’ and <binary data stream> are omitted. <sz> is guaranteed to be equal or less than <max>, when specified. ETEK R&D CO.,LTD 80 .. .. .. .. 13.8.+iGPNM - Get Peer Name for a Specified Socket . AT+I Programmer’s Manual V7.4a Syntax: AT+iGPNM:<hn> Retrieve Peer Name (<IP>:<Port>) of a remote connection to a TCP/UDP socket specified by the socket handle <hn>. Parameters: <hn> = A TCP/UDP socket handle of an open socket. Scope: ETPro Series Command Options: <hn> Must have been obtained by a previous execution of an AT+iSTCP or AT+iSUDP command during the current Internet mode session. Or a socket accepted by a listen socket. Result code: I/(<IP>: <Port>) Where, <IP> is the remote peer’s IP address, and <Port> is the remote peer’s port for this connection. I/ERROR ETEK R&D CO.,LTD If <hn> is not an open socket handle, or otherwise some error occurred. 81 .. .. .. .. 13.9.+iSDMP - Dump Socket Buffer . AT+I Programmer’s Manual V7.4a Syntax: AT+iSDMP:<hn > Parameters: <hn > = A TCP/UDP socket handle of an open socket. Scope: ETPro Series Command Options: <hn > Result code: I/OK I/ERROR ETEK R&D CO.,LTD Dump all buffered data currently accumulated in a socket’s inbound buffer. The socket remains open. Must have been obtained by a previous execution of an AT+iSTCP or AT+iSUDP command during the current Internet mode session. Or a socket accepted by a listen socket. If <hn > is a handle to an open socket. Otherwise. 82 .. .. .. 13.10. .. +iSFSH[%] - Flush Socket’s Outbound Data . AT+I Programmer’s Manual V7.4a Syntax: AT+iSFSH[%]:<hn > Parameters: <hn > = A TCP/UDP socket handle of an open socket. Scope: ETPro Series Command Options: <hn > ‘%’ flag Result code: I/OK I/ERROR ETEK R&D CO.,LTD Flush (immediately send) accumulated data in a socket’s outbound buffer. Must have been obtained by a previous execution of an AT+iSTCP or AT+iSUDP command during the current Internet mode session. Or a socket accepted by a listen socket. When the flush-and-acknowledge (‘%’) flag is specified and <hn > is a TCP socket handle, the ETPro Series will both flush and wait for the peer receipt acknowledgment of all outstanding outbound data. Common Errors associated with this flag are 215 (carrier lost) and 203 (socket closed by peer in an orderly manner or did not receive ACK after 10 tries to retransmit unacknowledged data). If <hn > is a handle to an open socket and, when<hn > is a TCP socket handle, all outbound data. has been received and acknowledged by peer. Otherwise. 83 .. .. .. .. . AT+I Programmer’s Manual V7.4a 13.11. +iSCLS - Close Socket Syntax: AT+i[!]SCLS:<hn > Close a TCP/UDP socket. If the socket was the only open socket and the stay-online flag (‘!’) was not specified, the ETPro will terminate the Internet session and go offline. Parameters: <hn > = A TCP/UDP socket handle of an open socket. Scope: ETPro Series Command Options: <hn > Must have been obtained by a previous execution of an AT+iLTCP, AT+iSTCP or AT+iSUDP command during the current Internet mode session. Or a socket accepted by a listen socket. A socket will always be flushed before being closed. TCP sockets are disconnected from the remote host server in an orderly manner. ! Result code: I/OK I/ERROR Followed by: I/DONE or I/ONLINE Stay On-Line after completing the command If <hn> is a handle to an open socket. Otherwise. After successfully closing the last open socket. Allow a 2.5 sec. delay for ETPro Series re-initialization following an Internet mode session. After successfully closing the socket, while additional sockets are still open or if the stay-online flag (!) was specified in ETPro Series. or I/ERROR - Otherwise. ETEK R&D CO.,LTD 84 .. .. .. .. 14. Special Modem Commands . AT+I Programmer’s Manual V7.4a 14.1.+iMCM - Issue Intermediate Command to GPRS/CDMA module Syntax: AT+iMCM:<AT command> send a single AT command to the modem during an internet session. Parameters: <AT command>= Command to be sent to modem. Scope: ETPro Series Command Options: AT command IP module will send a ‘+++’ escape sequence to the modem, to transfer into command mode. Then IP module will send the <AT command>, followed by a <CR>. <AT command> must include the ‘AT’ prefix. IP module will wait for the GPRS/CDMA module to respond and then send the ‘ATO’ command to the GPRS/CDMA module, to set it back to data mode. Returns: GPRS/CDMA module’s response(s) Followed by I/OK when the GPRS/CDMA module successfully returned online. Or I/ERROR ETEK R&D CO.,LTD if modem was unable to go back online. 85 .. .. .. . 15. IP ..Registration AT+I Programmer’s Manual V7.4a When ETPro Series goes online, it is normally assigned a dynamic IP address during PPP establishment. Since a different IP is usually assigned every session, it is not practical to use the ETPro Series as a server, since the client(s) do not know what IP address to use. Furthermore, under these restrictions, there is no practical way to know if a specific system is online or offline. To overcome this problem, ETPro Series incorporates built-in procedures designed to register its IP address on a server system, each time it goes online. Once registered, client systems may interrogate the servers in order to verify the online status of a specific system and retrieve its currently assigned IP address. The IP registration process is governed by several AT+i parameters. Once these parameters are configured, ETPro Series will register its IP address accordingly when it goes online as a result of an explicit AT+i command (AT+iUP) or as a result of automated Internet session establishment procedures, such as a triggered Internet session or when going online as a SerialNET mode server. In cases where the ETPro Series uses a NAT gateway to the Internet, it may be configured to register the NAT’s IP address and a special port that is linked to the ETPro Series in the NAT’s configuration. See details in the RRRL parameter description. When this is the case, the RRRL parameters (IP and port) will be used instead of the local IP and port values that ETPro Series is assigned, in all registration methods (RRMA, RRSV and RRWS). ETPro Series includes several IP registration methods: 15.1.mail Registration ETPro Series registers itself by sending an Email that contains its ID information and current IP address. When the RRMA parameter contains an Email Address, ETPro Series will send an Email containing its current IP address or its RRRL to the address defined in RRMA during the registration procedure. The syntax of the Email body is: <BDY parameter contents> ETPro-<D/L/S> S/N:<RP5> Version:<RP1> HN:<HSTN> IP:<IPA or RRRL> Port:<LPRT or 80 or 0> http:// <IPA or RRRL><CR><LF> The subject line of the Email is: ETEK R&D CO.,LTD 86 .. .. .. .. "RING RESPONSE LINK From: ETPro-<D/L/S> S/N:<RP5> Version:<F/W ver> . HN:<HSTN> IP:<IPA or RRRL> Port:<LPRT or 80 or 0>" AT+I Programmer’s Manual V7.4a Where, Port is LPRT if in SerialNET mode, 80 if not in SerialNET mode and AWS is enabled, and 0 if not in SerialNET mode and AWS=0. The receiving end may refer to the contents of the subject line to filter out this Email message. 15.2.Socket Registration ETPro Series registers itself by opening a socket to a registration server and sending its ID information and current IP address. When ETPro’s RRSV parameter contains a value, ETPro Series will establish a socket to the server defined in RRSV, during the registration procedure. When a socket is established, ETPro Series will transmit its ID information and current IP address (or the RRRL) in the following format: “ETPro-<D/L/S> S/N:<RP5> version: <RP1> HN:<HSTN> IP:<IPA or RRRL> Port:<LPRT or 80 or 0>” The registration socket is then closed. 15.3.Web Server Registration ETPro Series registers itself by “surfing” to a Web server with its ID information and current IP address as parameters. If the RRWS parameter contains a URL (of a registration Web server) ETPro Series will register its ID information and IP using the URL, by issuing a GET command along with a fixed format parameter line: “<RRWS path>?SN=<RP5>&IP=<IPA or RRRL>&WPt=<0 or the port defined in RRRL>&HN=<HSTN>”. The Web server must contain a CGI, .asp page, exe, etc., which will make use of these parameters to register the ETPro. If several registration parameters are configured, ETPro Series will go through multiple registration processes. If more than one registration process fails, ETPro Series will return an I/ERROR result describing the first failure encountered. If all registrations fail, ETPro Series will return I/ERROR(90). ETEK R&D CO.,LTD 87 .. .. .. .. . AT+I Programmer’s Manual V7.4a 16. ETEK R&D CO.,LTD 88 .. .. .. .. . 17. MIME Encapsulated Email Messages AT+I Programmer’s Manual V7.4a 17.1.ETPro Series Generated Binary Message Formats Binary email messages are sent via ETPro Series using one or more AT+iEMB commands. The message format is limited to an optional body of text and a single attachment. The following fields are added by ETPro Series to the main message header: X-Mailer: ETPro <software version> Message-ID: < Unique #> @ETPro Mime-Version: 1.0 Content-Type: multipart/mixed; boundary= ”CONE-ETPro-<software version> ” The message preamble will contain the following text: “This MIME message was coded by ETPro. ” If the host application includes a text body for the message, it will also contain the following lines in its header: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-iCoverpage: Email When no textual body contents are included – this section will be omitted. The binary attachment section will follow, beginning with a MIME attachment header containing the following fields: Content-Type: < User defined media type>/< User defined media subtype>; name=< User defined attachment filename> Content-Transfer-Encoding: base64 Where, <media type> subtype> <filename> ETEK R&D CO.,LTD := “text” / “image” / “audio” / “video” / “application” <media := <A publicly – defined extension token.> := <User defined name (including extension)> or <Unique 89 .. .. .. .. . <media type> AT+I Programmer’s Manual V7.4a <media subtype> filename> defaults to “application” when otherwise not defined. defaults to “octet-stream” when otherwise not defined. Following the header, a base64-encoded data stream will include the entire binary data transferred to the ETPro Series from the host. ETEK R&D CO.,LTD 90 .. .. .. .. Related AT+i Commands and Parameters 17.2.MIME . AT+I Programmer’s Manual V7.4a Binary images are transferred to the ETPro Series for MIME message encapsulation via one or more AT+iEMB commands. An AT+iEMB command sequence must be terminated by the AT+iE* command, indicating the end of the binary Email message. When several consecutive AT+iEMB commands are used, the host must issue the commands with an inter-command delay, which does not violate the SMTP server’s timeout constraints. Otherwise, the SMTP server will timeout and abort the session. Average SMTP servers allow for delays in the range of 30 to 120 seconds. Additional AT+i commands may be interlaced within a sequence of AT+iEMB commands, except for The following AT+i commands: AT+iEMA, AT+iRML, AT+iRMH, AT+iRMM, AT+iRFU, AT+iRLNK, AT+iBDRA and AT+iSNMD. The ETPro Series does not limit the size of the binary attachment, however, ISP’s might have limitations. An Internet connection will be initiated immediately after the first AT+iEMB command, while the rest of the command is received. Once the connection to the SMTP server has been established, the ETPro Series will act as a pipeline, receiving binary info from the host, encoding it, and transmitting it to the Internet on the fly. Following the AT+iE* command, the email will be terminated and the Internet connection closed. The Escape sequence command (‘+++’) is allowed within an AT+iEMB command, provided there is a half second ‘silence’ period before the ‘+++’ is sent. Upon receiving the escape sequence, the ETPro Series will abort and orderly close the Internet session. The partial mail message will not be sent to the destination. ETEK R&D CO.,LTD 91 .. .. .. .. Parameters that support Binary Attachments 17.2.1 AT+I . AT+I Programmer’s Manual V7.4a Parameter Default Description MT 4 (application) MST FN ‘octet-stream’ None. BDY None. Media Type: 0 – Text; 1 – Image ; 2 – Audio ; 3 – Video ;4 – Application Media Subtype String. For a list see Appendix A. Attachment File Name (inc. extension). If a file name is not defined, the ETPro Series will generate a unique filename, ASCII text to be included in the email’s body in addition to the attachment. (Multiple lines allowed). Table 17-1 AT+i Parameters that support Binary Attachments ETEK R&D CO.,LTD 92 .. .. .. .. Command to define a textual body for Binary 17.2.2 AT+i . AT+I Programmer’s Manual V7.4a Messages 1. Permanent textual body contents: AT+iBDY:<text lines > … <CR>.<CR> The maximum fixed-body size allowed is 96 characters (including embedded <CR><LF>). The text body will be included in all future binary messages. In addition, the textual contents are committed to non-volatile memory, on board the ETPro Series. 2. Single session textual body contents: AT+iBDY~<text lines > … <CR>.<CR> The maximum temporary-body size allowed is 1K characters (including embedded <CR><LF>). The text body will be included in the next session binary message and then purged. ETEK R&D CO.,LTD 93 .. .. .. .. Encapsulated Email Message Format 17.3.MIME . AT+I Programmer’s Manual V7.4a Note: Bold lines were added by ETPro. Received: from JFK by FTGate SmartPop; Tue, 23 Nov 1999 09: 26:21 + 0200 Received: from mail.inter.net.il (hrz-153-147.access.net.il [212.68.153.147]) by mail.inter.net.il (8.9.3/8.8.6/PA) with SMTP id OAA11594; Mon, 22 Nov 1999 14:18:03 +0200 (IST) Date: Mon, 22 Nov 1999 14:18:03 +0200 (IST) From: lims@cnetek.net To: lims@cnetek.net To: connect@inter.net.il To: gadyl@netvision.net.il X-Mailer: ETPro ic401d05 X-Serial: 123456 Return-Receipt-To: lims@cnetek.net Message -ID: <15322@ETPro> Subject: ETPro binary message via iModem Mime-Version: 1.0 Content-Type: multipart/mixed; boundary= ”CONE-ETPro-ic401d05” X-UIDL: ad0c01ac458208bedea8b8522012e4b6 This MIME message was coded by ETPro. --CONE-ETPro-ic401 d05 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Coverpage: Email . <Textual body, here> .. --CONE-ETPro-ic401 d05 Content-Type: image/tif; name="FaxImage.tif" Content-Transfer -Encoding: base64 . . . <Binary Base64-encoded data, here> . . . --CONE-ETPro-ic401 d05 ETEK R&D CO.,LTD 94 .. .. .. .. . Control 18. Flow AT+I Programmer’s Manual V7.4a 18.1.Host ETPro Series Software Flow Control When issuing an AT+iEMB command to generate a binary Email, an AT+iSSND command to transfer data to a socket, an AT+iTBSN send a binary stream to a Telnet server or an AT+iFSND command to transfer a file, the host transfers a binary data stream to the ETPro Series. At times, this stream may be very large. Once the ETPro Series establishes a connection, it acts as a pipeline, transferring data received from the host to the Internet. However, the data rates at the host and Internet ends are not always balanced. This happens for several reasons: 1. While the ETPro Series is logging on to the Internet and establishing a connection, the host proceeds to send its data stream to the ETPro Series. During this time the ETPro Series receives data from the host, but cannot send it out. 2. When sending MIME attachments the ETPro Series encodes the binary data, using base64. This inflates binary data roughly in the order of 30%. Thus, more data needs to be transmitted than is received from the host. 3. When using a TCP/IP socket, the ETPro Series may need to retransmit packets. The amount of buffer space available in the ETPro Series to accommodate for this imbalance is limited. Therefore, a flow control scheme is required to regulate host-IP module communications. The FLW ETPro Series parameter is set to reflect the preferred flow control mode. The software driven, flow control protocol, is defined as follows: 1. While the host is transferring the binary stream, following the +iEMB, +iSSND or +FSND prefixes, the ETPro Series will issue a ‘WAIT’ control character when it needs to pause the host. The host application is required to monitor its serial receive line and pause the transmission when a ‘WAIT’ control character is received. 2. To resume the host transmission the ETPro Series will issue a ‘CONTINUE’ control character. The host is required to monitor its receive line after being paused in anticipation of this control character. Once received the host may continue to transfer the data stream. 3. If an error occurs during the Internet session, while the host is transferring the data stream (or while paused), the ETPro Series will issue an ‘ERROR’ control character, if some error occurred. Immediately after issuing this control character, the ETPro Series will abort the Internet session and issue an ‘I/ERROR (error number)’ string. ETEK R&D CO.,LTD 95 .. .. The host .must cease transmitting the data stream when the ‘ERROR’ control . character..is received. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 96 .. .. The control characters are defined as: .. .. Control ASCII Dec . WAIT 22 AT+I Programmer’s Manual V7.4a CONTINUE ERROR 24 5 ASCII Hex Mnemonic 0x16 0x18 0x5 SYN CAN ENQ Table 18-1 Software Flow Control Control Characters ETEK R&D CO.,LTD 97 .. .. .. .. 18.2.Software Flow Control Diagram in Binary Email Send . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 98 .. .. .. .. 18.3.Software Flow Control During a Socket Send . AT+I Programmer’s Manual V7.4a When a ‘WAIT’ control is sent to the host during a socket send (AT+iSSND) command, it is automatically followed by a RP4 socket status in the following syntax: I/(<sock0sz>, <sock1sz>, … ,<sock9sz>)<CR/LF> See the AT+iRP command for a full description. While the host is waiting for the ‘CONTINUE’ control, it may analyze the sockets’ input buffer status. If the host detects a need to execute a socket receive command to empty one or more socket input buffers, it may escape the current SSND command by issuing a ‘Pause’ sequence immediately after receiving the ‘CONTINUE’ control. The ‘Pause’ sequence is defined as: ½ second of silence followed by ‘---‘ (three consecutive minussign characters). The ETPro Series will respond by prematurely terminating the SSND command, including flushing the current socket if the ‘%’ flag was specified. Following this, the ‘I/OK’ will be issued and the host may issue the required SRCV command in addition to any other operations it needs to execute. The host may return to the preempted socket at any time and issue a new SSND command to send out the balance of data. ETEK R&D CO.,LTD 99 .. .. .. .. 18.4.Software Flow Control Diagram in Socket Send . AT+I Programmer’s Manual V7.4a Figure 18-2 Software Flow Control in Socket Send ETEK R&D CO.,LTD 100 .. .. .. .. 18.5.Host-IP module Hardware Flow Control . AT+I Programmer’s Manual V7.4a As an alternative to the software flow control method, which requires some software attention on behalf of the host, the ETPro Series offers a hardware flow control mode. This mode is selected be setting the ETPro’s FLW parameter Bit 0, using the AT+iFLW command. Note that to set FLW Bit 0, the ~CTSH signal needs to be LOW (Enabled), otherwise ETPro will return I/ERROR(063). This convention safeguards the ETPro Series from lockup, which may arise if FLW Bit 0 is set while the ~CTSH signal is constantly HIGH. For hardware flow control to operate properly, the ~CTS and ~RTS signals between the host and IPmodule UARTS must be inter-connected. The IP module ~CTSH and ~RTSH may be shorted to circumvent H/W flow control. Under this mode the ETPro Series will assume that the host transmission may be paused by de-asserting the ~CTS signal. The host must adhere to this convention. Most UARTs support hardware flow control, however if this is not the case, the ETPro’s ~CTS signal should be monitored by the host software on a general-purpose I/O. The host may also pause the ETPro Series by de-asserting its ~CTS signal. If a transmission error occurs during processing of a send command (EMB, SSND, TBSN, FSND), the ETPro Series shall accept all remaining characters pertaining to the current command (as specified by the <sz> parameter) before returning the relevant I/ERROR response. Figure 18-3 Minimum Hardware Flow Control Connections ETEK R&D CO.,LTD 101 .. .. .. .. . 19. ETPro Series Email Firmware Update AT+I Programmer’s Manual V7.4a 19.1.Introduction The ETPro Series accepts firmware updates in a variety of methods, each appropriate for a different situation. The ETPro Series accept Ymodem uploads directly to their serial ports. A Ymodem server (such as HyperTerminal on a PC) may be used to download a firmware image file over a serial cable from one of the PC serial ports. This method is convenient when downloading firmware updates to a local ETPro Series. Ymodem based updates may also be downloaded over a direct (PSTN) phone line to a ETPro Series(ETPro 211/312/315 only) connected to a dial-up modem. This method is effective when downloading firmware updates from a remote location or when the ETPro(ETPro 211/312/315 only)’s serial port is not accessible. ETPro Series firmware may also be uploaded using a Web browser through the internal configuration Web site. This is convenient when the ETPro is online and its IP address is known. In addition to the Ymodem and Web based firmware update methods, the ETPro Series accept remote firmware updates administered by Email. The firmware update is sent as an Email attachment, which is downloaded by the ETPro through a POP3 session. The ETPro automatically recognizes a Firmware update Email and acts upon it by replacing its existing firmware with the new one through a bootloader encapsulated in its boot block. This method is especially convenient when managing firmware updates in a globally distributed install base of Internet enabled devices. The ETPro Series provides several methodologies to govern Email based firmware updates, designed to allow the system architect a multitude of configurations which best suit the system’s needs. 19.2.Transparent Update According to this methodology, the ETPro Series accepts firmware update attachments while normally downloading Email messages from its POP3 account. When the ETPro Series encounters a firmware update attachment, while executing an AT+iRMM command to retrieve Email messages, it defers the firmware update attachment file to its internal boot loader rather than transferring the attachment contents to the host. Regardless of the position of the firmware update attachment in the POP3 mailbox, the ETPro Series processes the firmware attachment last, after transferring all the other ETEK R&D CO.,LTD 102 .. .. messages to .the host in the normal manner. Since the update process may take as long as 4 .. Series issues the “I/UPDATE’ message to notify the host that it is minutes, the ETPro .. updating its firmware. The host must allow for an extended delay period until the ETPro AT+I Programmer’s Manual V7.4a Series completes the update process. Once complete the ETPro will reboot the new firmware and issue the ‘I/DONE’ message to the host. In this case the ETPro will be offline, even if the stay online flag was set in the RMM command (AT+i!RMM). The firmware attachment shall remain in the mailbox even if the ‘Leave on Server’ flag is set to ‘NO’ (0). However, the ETPro Series will not attempt to download it again when executing the next AT+iRMM command, as it is aware that the current firmware has already been updated. This is useful if more than one ETPro Series controller share the same POP3 mailbox or when the update process has failed and needs to be attempted again during the next Email retrieve session. Several safe guards have been instated in order to assure a successful firmware update. The firmware attachment is structured by ETEK in a specific format, which allows the ETPro Series to authenticate its origin as a legal firmware image. The ETPro Series will also verify that the firmware update is the correct version for its hardware environment. As mentioned above, ETPro Series will also reject an email firmware update if it contains an identical image to the one already existing in the specific ETPro controller. Further more, the attachment is encoded and cross-check-summed to allow the ETPro Series to verify that its data contents are intact after being downloaded and as a precaution against corrupted firmware attachments and malicious firmware update attacks (such as viruses). If a firmware update Email was downloaded but did not eventually replace the original firmware as a result of a checksum error, an I/ERROR(113) message will be sent to host. Nevertheless, if under rare and extreme situations the firmware update does not succeed after the original firmware was erased from the ETPro’s flash memory, the ETPro Series will automatically enter Ymodem update mode to allow an alternative firmware update route. If this situation ever happens, manual attention is needed. 19.3.Initiated Update System designers may prefer to disable the transparent update mode as an additional precaution and in order to gain better control over the update process. Transparent update mode is governed by the UEN (Update ENabled) flag. This flag may be set to 0 (Disable firmware updates) or 1 (Enable firmware updates), using: AT+iUEN=<value> When the UEN flag is 0 (disabled), AT+iRMM commands will skip firmware update attachments encountered during an Email retrieve session. In this case, a firmware update may be initiated using a dedicated command: AT+iRFU (Remote Firmware Update) ETEK R&D CO.,LTD 103 .. .. After the host. issues this command, the ETPro Series will execute an Email retrieve session .. only a firmware update attachment. Other Email messages shall be that will download . skipped. If a .firmware attachment is found, the update process proceeds as described in the AT+I Programmer’s Manual V7.4a transparent update case. If more than one firmware attachment resides in the mailbox, only the last one will be considered. The advantages of this methodology are to allow external events governed by the host to determine when and if to proceed with a firmware update. These events may be a timeschedule, a keystroke sequence applied to the host system, a message sent to the host via Email or through a dedicated TCP/IP socket, etc. 19.4.Dedicated Mailbox Update In some situations it may be preferred to direct the ETPro Series to a dedicated mailbox for firmware updates. Three additional parameters are dedicated for this purpose: AT+iUMBX=<Update Mailbox Account Name> AT+iUPOP=<Update Mailbox POP3 Server> AT+iUMPW=<Update Mailbox Password> When these parameters are set, the ETPro Series will scan the UMBX mail account when responding to an initiated AT+iRFU command. Only firmware update attachments shall be downloaded. Other mail messages shall be skipped. Only the UMBX parameter is required to be set, while UPOP and UMPW may be left empty, in which case the POP3 and MPWD parameters will be used. This methodology is especially useful when setting up a common firmware update mail account, to be shared by many ETPro units. ETPro controllers may each have their own mail account for normal operation using the AT+iRMM command. However, when initiating a firmware update all units retrieve mail from the same account, specifically setup to support firmware updates for all units. A central management headquarters can issue the firmware attachment, once, to the dedicated mailbox rather than sending individual mail attachments to each unit’s mailbox. This also relieves the requirement to maintain a database of mailboxes used by the devices. In addition, groups may be formed to access different update mailbox accounts. For example, systems incorporating the ETPro may access one update mailbox, while another ETPro units access another. This configuration will achieve better performance, since ETPro Series controllers will not need to reject the others firmware update, as is the case if they were all to share the same update mailbox. Of course other grouping schemes may be warranted by specific implementations. ETEK R&D CO.,LTD 104 .. .. .. 19.5.Firmware Update Distribution .. . AT+I Programmer’s Manual V7.4a ETEK shall distribute Email firmware attachments “ready to go”. The Email attachments will be sent to ETEK’s distributors, VARs, OEM’s and direct customers using normal Emailing procedures. The Email attachments may be picked up with any standard Email application. In order to apply the firmware update the Email attachments may be forwarded, as is, directly from any Email application to the destination mail account, depending on the methodology used by the recipient ETPro Series controller. ETEK R&D CO.,LTD 105 .. .. .. .. . 20. ETPro Series Parameter Update AT+I Programmer’s Manual V7.4a 20.1.General The update file allows a user to remotely modify various nonvolatile parameters in ETPro Series. The file is an ASCII formatted text file, edited by the user or created by a dedicated application. The file’s size should not exceed 10k. The remote parameter file (RPF) naming convention: <filename>.rpf If a parameter is assigned with a legal value within the file, that value will replace the current value in the ETPro Series nonvolatile parameter database. A parameter value which is not referred to in the file, or which is not defined using the correct syntax rules, specified below, will not affect the current parameter value. 20.2.Remote Parameter File (RPF) Structure The file must include the letters “RP_” as its first 3 characters, and can include additional header lines (defined below) as well as various parameter assignments. Assignments will follow the rules and definitions defined for parameter settings using AT+i commands, excluding the AT+i prefix. For example – to assign the value “myname” to the POP3 mailbox name parameter, the correct assignment is “MBX=myname” (identical to the host sending the “AT+iMBX=myname” to the ETPro). Each line (terminated with CR/LF) may contain only one assignment. Order of assignments is not essential except for the RPF header parameters which must be first, and must follow the header definitions below. After the first non RPF header parameter additional header parameters are ignored. Comment lines can appear anywhere in the file. Comment line syntax is defined as: #<anything>CR/LF The first line in the file which is not a comment line is considered the authentication header line and must follow the following syntax: RP_[GROUP=<string><space character>][RP_DEST=<string>]CR/LF ETEK R&D CO.,LTD 106 .. .. The remainder .. of the header must contain lines with syntax: <header..parameter name> = <general parameter value>CR/LF . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 107 .. .. .. .. Parameters Names and Values 20.3.Header . AT+I Programmer’s Manual V7.4a Name Value Single string, no space characters Default RP_DEST RP_ GROUP RP_START_FROM_FACTORY_DEFAULTS ‘YES’ / ‘NO’ NO NONE NONE Table 20-1 Header Parameters Names and Values • RP_GROUP – if the RPF Group Name parameter in the ETPro Series contains a value, the RPF file must include an RP_GROUP definition and its value must be identical to the RPF value, otherwise the parameter update file will be rejected. Nevertheless, if the RPF parameter is set to the special value ‘*’ (match any), the RPF file shall be accepted with any value of RP_GROUP, as well as without any value at all. The RPF Group Name parameter can be viewed and changed by sending an ‘AT+iRPG?’ command to the ETPro. • RP_DEST – if the RPF file contains this parameter, the parameter update file will be rejected unless the value given in this parameter is identical to the unique ID of the ETPro Series it was sent to. The unique ID can be viewed by sending an ‘AT+iRP5’ command to the ETPro, but cannot be changed. This feature facilitates sending a parameter update to a specific ETPro Series controller only. • RP_ START_FROM_FACTORY_DEFAULTS – This flag defines the initial value of parameters. A value ‘YES’ will initially restore all ETPro Series parameters to their factory default values before processing the new RPF file values. ETEK R&D CO.,LTD 108 .. .. .. .. 20.4.Uploading a Parameters Update File to the ETPro . AT+I Programmer’s Manual V7.4a Series By default, receiving and processing a parameters update file is disabled in the ETPro Series. To enable this option, the RPG parameter must be set to some value. If a value other than “*” is set, the value must match the parameters update file RP_GROUP value. This feature facilitates group updates, or can be used as a password to secure parameter updates. A remote parameters update file can be uploaded to the ETPro Series using the same methods available for upload a firmware update: 1. Via Ymodem Protocol: Remote modem connection, Local modem connection, or Serial connection. The Ymodem update process is evoked by issuing the AT+iPU command 2. Via Email: While processing an AT+iRMM command. The nonvolatile parameter RPG controls the parameter update. If it does not contain a value, the update process is effectively disabled. If it contains an ‘*’ it is fully enabled. If it contains a value, the update process is restricted to RPF files containing that value in the RP_GROUP header parameter. 3. Via the Web: Through the ETPro’s internal configuration site. See description in following chapter. To upload a parameter update file via Email send an RPF file Email to the mailbox defined in the ETPro Series. The Email must consist of a single plain text attachment of the RPF file, or the RPF file contents can be copied and pasted into the Email body itself. The Email massage’s subject field must include the special string “IC_Parameters_Update”. When ETPro Series retrieves an RPF file, during an AT+iRMM session, the contents of the Email message will not be sent to the host. The parameter update ETEK R&D CO.,LTD 109 .. .. process.will take place as soon as the rest of the receive session is complete, and .. file qualified the authentication criteria described above. only if the .. AT+I Programmer’s Manual V7.4a Note: See Appendix B for a sample RPF file. ETEK R&D CO.,LTD 110 .. .. .. .. . 21. ETPro Series Embedded Web Server AT+I Programmer’s Manual V7.4a 21.1.Introduction The ETPro Series includes a full-blown Web-server that handles HTTP 1.0/1.1 Web interactions independently of its host processor. It allows system designers to build Webbased products, which can be remotely monitored, configured, and managed via the Internet using a standard Web browser interface. The ETPro Series devices host two on-chip Websites, stored in on-chip nonvolatile memory. One Web site is inherent to the ETPro firmware and is dedicated to ETPro configuration and maintenance. The second site is uploaded to the ETPro for device application use. This Website may include multiple linked HTML pages, links to external pages, images, graphics, Java applets, WAP pages, etc. A special facility allows the Web pages to include references to the embedded application’s variables. The ETPro’s embedded Web server is designed to integrate with the existing IP module-to-Host API methodology, based on AT+i command interface. 21.2.Features Responds to standard Web browser “GET” and “POST” commands issued to port 80. Supports up to three concurrent remote browsers simultaneously. Serves on-chip HTML pages stored in ETPro’s nonvolatile memory. May incorporate WAP pages to allow browsing the ETPro Website using an Internet-enabled cellular handset. The internal ETPro-configuration Website supports remote ETPro parameter configuration, remote ETPro firmware upload, and remote application-Website upload. All the above are achieved using a standard Web browser. Configuration access is protected with an MD5-encrypted password mechanism. Support for monitoring and controlling the host device using a pre-defined set of parameters embedded within the application-Website (also MD5 password protected). Integrates seamlessly with the existing AT+i methodology. ETEK R&D CO.,LTD 111 .. .. .. to design their own embedded Website using standard Web Allows OEMs .. tools, along with Connect One’s windows based Website packing authoring utility. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 112 .. .. .. .. Server Modes 21.3.Web . AT+I Programmer’s Manual V7.4a Two Web server modes are defined as (see Fig. 21.1): ♦ ♦ ETPro configuration mode Host interaction mode Each of the modes is supported by a dedicated Website and a parameter access password. The ETPro configuration mode allows remote ETPro Series configuration. It encompasses Web interactions between the ETPro Series and a remote browser to carry out ETPro parameter maintenance and ETPro firmware and application Website uploads. The host processor does not take part in the interactions under this mode. Moreover, the host processor presence is not required at all for this mode to operate. Once an ETPro Series is on-line and in possession of an IP address, any remote browser may “surf” to the ETPro and update its nonvolatile parameters without the host’s involvement. The ETPro configuration site is located at: HTTP://<ETPro IP Address>/ETPro/. In Host interaction mode, ETPro is used to host, serve and manage Web interactions with a remote Web browser, on behalf of the embedded device’s host processor. The host gains access to the Web-based parameters via AT+i commands sent to ETPro through the serial connection. Figure 21-1: ETPro Web Server Modes 21.4.The Application Website The application Website is stored in ETPro. It consists of normal ASCII text HTML code, which may include additional links to locale or remote Web pages, graphic images, text files, Java Applets, WAP pages, etc. Device manufacturers may design their own embedded-Website using any typical ETEK R&D CO.,LTD 113 .. .. Web authoring tool. The ETPro Series implementation supports a maximum Website .. size of 32KB. . The site is uploaded to the ETPro Series through the serial connection, using the.. Ymodem protocol or through the ETPro’s configuration Website. AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 114 .. .. .. .. 21.5.Parameter Tags . AT+I Programmer’s Manual V7.4a ETPro and host real-time parameters may be referred to in the embedded Websites through the use of “Parameter Tags”. When Parameter Tags are placed in an HTML Web page, actual values are sent by the ETPro’s Web server component when the page is served out. Parameter Tags are also used to change corresponding parameter values from a remote Web browser. Syntactically, Parameter Tags are parameter names enclosed between two ‘~’ characters. If the ‘~’ character needs to be included in a Web page, two consecutive ‘~’ characters must be used (‘~~’). The ETPro Series Internet-configuration parameters, defined in the AT+i API, retain their name when used as Parameter Tags. For example, the value of the TOA AT+i parameter (“Send to” Email Address) may be referenced in the Website by ~TOA~. Host Parameter Tags defined by the parameter name <param>, may be referenced in the Website using ~<param>~. <param> may be any freeform parameter name, consisting of a single word, which does not include blanks or ETPro delimiters. For example, a parameter reflecting a temperature reading may be called temperature and referenced in the Website as ~temperature~. 21.6.ETPro Configuration Mode ETPro configuration entails monitoring and updating ETPro parameter values. By making use of the ETPro’s inherent configuration Website, an ETPro Series device may be configured remotely using a standard Web browser, in addition to being configurable locally by use of the Ymodem protocol over the serial link, via Email. The ETPro Series RPG parameter is used to password protect remote ETPro parameter updates. See Security and Restrictions. The configuration site includes Web forms to monitor and update most ETPro parameters and an upload page, consisting of file upload forms. Each upload form allows file uploading using the POST method for a single file. The forms support uploading the following files: 1. Firmware update *.imz file 2. Parameters update *.rpf file 3. Packed application Website *.img file When new firmware (*.imz file) is uploaded to ETPro, the ETPro will submit an acknowledgment page to the browser, after receiving the complete *.imz file and will then go offline and update its firmware. ETEK R&D CO.,LTD 115 .. .. .. The ETPro configuration site is located at: HTTP://<ETPro IP Address>/ETPro/. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 116 .. .. .. .. Interaction Mode 21.7.Host . AT+I Programmer’s Manual V7.4a Host interaction mode allows OEMs to design and implement a product-related embedded Website that is managed by ETPro on behalf of the host. The host-defined embedded Website supports live host parameter monitoring/update by a remote browser. This is achieved by a dynamic AT+i layer implemented across the serial link between the host and the ETPro Series. The application developer defines a Website using conventional Web authoring tools. The HTML\WAP files may then be edited to contain “Parameter Tags”. Parameter tags are regarded as placeholders in HTML\WAP files that are replaced on the fly with real-time values as the page is served to the browser. Browsers may also change values of Parameter Tags in order to submit the value back to the host via ETPro. This is done by defining the Parameter Tag in the NAME field in an HTML FORM (without the ‘~’ characters). The ETPro Series WPWD parameter is used to password protect remote Parameter Tags update. See Security and Restrictions. Once a Website is created and Parameter Tags are edited in, the site is packed and uploaded to ETPro. The Web site is linked into the ETPro Series firmware, automatically expanding the existing AT+i command set to encompass the Website Parameter Tags, once the Web server is activated with the +iWWW command. Extended AT+i commands have the syntax: AT+i<param> = <value> and, AT+i<param>? to set and query Parameter Tag values respectively. For example, Parameter Tag ~temperature~, referenced in a Web page, may be set using: AT+itemperature=’45 Deg.’ and queried using: AT+itemperature?. When the host issues a Parameter Tag set-value command, the ETPro Series links the updated value to the Parameter Tag and stores it in its internal RAM. In response to a browser’s GET request, the real value is substituted while the page is being served, on the fly, anywhere in the page where the Parameter Tag exists. Parameter Tag values are always printable ASCII text. This convention allows implementing any part of an HTML\WAP page as a parameter tag: numeric values, links, file names, HTML code, etc. A Parameter Tag value is limited to 256 characters. Parameter Tag values may be changed and submitted from the browser end, using HTML forms. ETPro stores the updated values and responds appropriately to host AT+i query parameter commands. Thus, the host can poll specific parameters for value changes. Status Report 7 (AT+iRP7) may be used to facilitate polling on all application Web parameters. ETEK R&D CO.,LTD 117 .. . RP7 returns a.. bitmap result, where bit 10 is set to ‘1’ if one or more application Web .. been remotely changed. The ETPro DTRH signal (pin 63) is an associated parameters have .. that can be used to generate an interrupt on the Host CPU when new data hardware signal AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 118 .. .. .. .. in ETPro. The ISR can issue an RP7 to determine if the new data is a has been buffered . result of an application Web parameter change. AT+I Programmer’s Manual V7.4a The AT+iWNXT command can be issued to scan through the application Web parameters that have been remotely updated and not yet retrieved by the application. The ETPro application site is located at: HTTP://<ETPro IP Address>/. ETEK R&D CO.,LTD 119 .. .. .. .. 21.8.Website Creation, Packing and Uploading . AT+I Programmer’s Manual V7.4a Device manufacturers may design their own embedded Web site using any typical Web authoring tool. A Website may include one or more files residing in a dedicated file directory structure on the designer’s PC. The topmost directory of this structure is referred to as the Website root directory. The root directory must contain an HTML page named “index.htm”, which will be served as the default home page. Before downloading the Website to an ETPro device, the entire Website needs to be packed. In order to pack the site into an uploadable image file, the designer must run ETEK’s Web packing utility, and specify the root directory of the site. The utility will pack all files in the root directory and its subfolders, in a format that can be uploaded to the ETPro. If the site contains Parameter Tags, the user will be prompted to enter a maximum value length for each Parameter Tag. Any Parameter Tag specified with a zero length value will not be included in the resulting packed file. After the user has entered all parameters’ max value length, the user will be prompted to specify a destination file for the packed file. The following restrictions apply when creating the packed Website: 1. The length of a single Parameter tag must not exceed 256 characters. 2. The sum of all Parameter Tags’ value lengths must not exceed 8k. 3. The total packed file must not exceed 32k. To take affect the packed Website file needs to be uploaded to ETPro. This may be achieved by issuing the AT+iPU command and sending the file via Ymodem over a local serial link or by uploading the packed file through the ETPro’s configuration Website over the Internet. 21.9.Manipulating Variables in the Application Website The application Website is composed of HTML\WAP files, which may contain links to internal or external Web sites, Java Scripts, VB scripts, graphic files, etc (See list of supported file types). Using Parameter Tags, the page can also be used to dynamically display and update values of ETPro’s configuration parameters and/or device specific Parameter Tags in the manner described above. For example, to display the current value of the Web parameter headline, write “~headline ~” anywhere in the page, as in the following example: <HTML> <HEAD> <TITLE>SAMPLE PAGE</TITLE> </HEAD> <BODY> <h1>~headline ~</h1> </BODY> ETEK R&D CO.,LTD 120 .. .. </HTML> . .. . When serving. this home page, ETPro’s Web server will replace the AT+I Programmer’s Manual V7.4a “~headline ~” ETEK R&D CO.,LTD 121 .. .. .. .. page, on the fly, with the actual current value of that parameter in string in the served . ETPro. AT+I Programmer’s Manual V7.4a For example, if the host issues: AT+iheadline=”Hello world” a browser pointing to the ETPro’s URL address will display the image as seen on the right. To update the ETPro Series configuration parameter via the Web page, simply use ETPro’s parameters names (excluding the “AT+i” prefix) in an HTML form. For example: <HTML> <HEAD> <TITLE>SAMPLE PAGE</TITLE> </HEAD> <BODY> <FORM METHOD=’GET’ ACTION=’’> Dial To:<INPUT type=’text’name=’ISP1’value=’~ISP1~’> <input type='submit' size='8' value='Submit'> </FORM> </BODY> </HTML> Note that the variable name is used in the NAME field, while ~<parameter name >~ is used to display the current value. After activating ‘SUBMIT’, the browser will issue a GET command to the ETPro Web server that includes the parameter’s name and the new value entered in the form. The page will then be served to the browser again with the updated values. In addition to specifying ETPro Series configuration parameters and Parameter Tags, it is also possible to display ETPro reports (RP0-RP5). For example: <table> <tr> <td width=250><b>MAC Address: ~MACA~ <b></td> </tr> <tr> <td width=250><b>Bootblock Version: BBIC~RP3~</b> </td> <td width=400><b>Firmware Version: ~RP1~</b></td> ETEK R&D CO.,LTD 122 .. .. </tr> .. <tr> .. <td width=250><b>Serial Number: ~RP5~ </b></td> . AT+I Programmer’s Manual V7.4a <td width=400><b>Hardware Version: ~RP0~</b></td> </tr> </table> ETEK R&D CO.,LTD 123 .. .. .. 21.10. .. Security and Restrictions . AT+I Programmer’s Manual V7.4a The authority to update ETPro Series’s configuration parameters, firmware or application Website via the Web may be password-restricted using the AT+iRPG parameter (Remote Parameter Group/Password). When the RPG parameter in an ETPro Series device contains a value, it is considered a password that restricts remote ETPro parameter updates. To enable remote updates, a distant user must be authenticated by submitting that value. The ETPro configuration site includes an authentication form that automatically pops up on the remote browser when parameter updates are attempted. The password submitted through this form must match the actual value of ETPro’s local RPG parameter. Otherwise, remote value updates shall be rejected. ETPro uses the industry standard MD5 algorithm to authenticate the remote user. According to MD5, the actual password, typed in to the authentication form, is not literally communicated back the ETPro. Rather, an (MD5) encrypted token is transferred instead. To achieve this, the ETPro Web server sends a JavaScript, which calculates MD5 encryption at the browser end, along with the authentication form. ETPro also issues a different random number, used as part of the encryption key, each time authentication is required, to eliminate the possibility of impersonation based on eavesdropping to a legal authentication session. The MD5 algorithm is documented in RFC 1321. If the RPG parameter is empty (AT+iRPG=‘’), remote ETPro configuration parameter update is fully restricted. In other words, it will not be possible to update configuration parameter values using a remote browser. Conversely, if the RPG parameter contains an ‘*’ (match any), the configuration parameters may be updated freely, without requiring authentication at all. The Parameter Tags defined in the application Website are secured for remote updates in the same manner as the ETPro configuration parameters. In this case the authentication password is stored in the ETPro’s local parameter ‘WPWD’ (Web Password). If the WPWD parameter contains a value, a remote user needs to issue this value as an authentication password in order to gain update access to the application level Parameter Tags. Like in the case of the RPG parameter, if WPWD is empty, application level Parameter Tags are fully restricted, while when WPWD contains an ‘*’, updates are unrestricted and authentication is not required. When authentication is required, the ETPro Web server will automatically issue an authentication form to the remote browser in response to an attempt to update Parameter Tags. This procedure allows the application site to include HTML submit instances anywhere in the Web site without worrying about the authentication process. Authentication will be automatically activated depending on the local value of the local ETEK R&D CO.,LTD 124 .. .. .. WPWD value. .. . needs to be submitted only once per session in order to enable Parameter Authentication AT+I Programmer’s Manual V7.4a Tag or ETPro configuration updates for the duration of the session. In addition, authentication will automatically expire after 10 minutes of inactivity. ETEK R&D CO.,LTD 125 .. .. .. 21.11. .. Parameter Update Error Handling . AT+I Programmer’s Manual V7.4a An attempt to assign an illegal value to a parameter will fail and a string containing the relevant error message will be stored in a special ETPro Parameter Tag called “WST” (Web Server Status). This value may be displayed in the page as any other parameter value (using “~WST~”). For Example: <b>Update Error Message: ~WST~</b> 21.12. 1. 2. File Types Supported by ETPro Web Server: The following files may include parameter tags: .HTM, .HTML, .JS, .VBS, .INC, .STM, .XML, .XSL, .HTC,.CSS, .WML, . WMLS, .XHTML The following files can not include parameter tags: .CLASS, .GIF, .JPG, .PDF, .DOC, .PPT, .BMP, .XLS, .WMLC, .WMLSC, . WBMP ETEK R&D CO.,LTD 126 .. .. .. .. . 22. ETPro RAS Server AT+I Programmer’s Manual V7.4a 22.1.Introduction The ETPro feature an internal RAS server, which makes it possible to dial in to these devices, using an active modem platform. This feature allows a remote dialer to dial in to the ETPro and, when configured as a RAS (Remote Access Server), ETPro will answer the call and negotiate a PPP connection. ETPro’s RAS supports acknowledging an IP address request from the remote dialer side as well as assigning a default IP address. Once the connection is established the client will be able to browse ETPro's Web site (if the AWS parameter is set to a non-zero value). All other ETPro IP protocol functionality will be enabled as well, allowing the host to issue Internet protocol AT+i commands based on the PPP connection. Note, however, that since ETPro is not connected to an actual ISP in this mode, ETPro will not have access to the public Internet and thus only direct connections between the ETPro and the connected PPP client will be possible. 22.2.RAS Parameters Three parameters govern the use of ETPro’s RAS server: i. RAU - RAS Login User Name The RAU parameter defines the allowable user name for login purposes, when ETPro answers an incoming call as a RAS. The remote dialer must specify the correct user name and matching password in order to successfully complete the PPP connection. This parameter must have a non-empty value for the RAS feature to be enabled. Otherwise, when RAU is empty the ETPro ’s RAS is efectively disabled. When RAU contains the special character, ‘* ’, the RAS is enabled but no authentication is required. ii. RAP - RAS Login Password The remote dialer must provide the correct password in order to successfully complete the PPP connection. When the RAP parameter is empty or contains, ‘* ’, any password string will be accepted, in efect nullifying the authentication process. iii. RAR - Number of RINGs before picking up the line When ETPro’s RAS feature is enabled, the RAR parameter ETEK R&D CO.,LTD 127 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD defines the number of RINGs that must arrive before ETPro picks up the line and transfers control to its RAS. 128 .. .. .. .. Theory of operation 22.3.RAS . AT+I Programmer’s Manual V7.4a When a remote client dials in to the ETPro, the modem RING strings are transferred by ETPro (which defaults to transparent mode) to the host. When the RAS feature is enabled (RAU contains a value), ETPro will pick up the line and negotiate a PPP connection, by issuing the ATA (modem) command after RAR RING strings have been received. If the host chooses to manage a direct (modem-to-modem) data connection, it may pick up the line before RAR ‘RING’ strings have arrived, by issuing the ‘ATA’ modem command. During RAS PPP negotiations, ETPro will reply only to ‘+++’ (Escape sequence) and AT+iRPn commands. Specifically, ETPro will reply “Connecting as RAS” to the AT+iRP2 (ETPro Status) command. The Escape sequence may be used to abort the RAS session at any time. The AT+iRP2 command is the only means for the host processor to determine that a PPP session is in progress. ETPro manages the RAS protocol internally and does not transfer any information to the host. Any other commands that may be received from the host will be disregarded by ETPro. Once the PPP connection has been fully negotiated and established, ETPro will respond to all AT+i commands as when it is on-line. Specifically, ETPro will reply “RAS Connected” to the AT+iRP2 command. As part of the PPP negotiation ETPro will assign itself the default IP 192.168.0.1 and allocate 192.168.0.2 as the client IP. However, if the client requests a specific IP, ETPro will always grant the client’s request and use the client’s IP minus 1 as its own IP. The following restriction to the minus 1 rule will apply: if the IP requested by the client minus 1 is an IP address that ends with 0x00 or 0x255 as the last nibble, ETPro will assign itself with the client’s IP plus 1 instead of minus 1. This is done to assure that the IP ETPro assigns itself will never violate the rule that defines that a network or host IP segment may not be all binary 1's, nor all binary 0’s. After a RAS PPP connection is established, ETPro will automatically activate the internal WEB server, if the AWS parameter is set to a non-zero value. Thus, the remote client may browse the ETPro’s Web site. ETEK R&D CO.,LTD 129 .. .. .. Auto PPP.. RAS Mode . AT+I Programmer’s Manual V7.4a ETPro allows combining RAS and direct modem-to-modem communication sessions. A special mode, named Auto PPP RAS, supports dialing in to the ETPro with a PPP dialer or a regular modem. Auto PPP RAS mode is enabled by enabling RAS mode and adding a +100 offset to the RAR parameter, where [<RAR >-100] determines the number of RINGS after which ETPro will automatically pickup the line and negotiate a PPP connection. The host processor may instruct the modem to pick up the line beforehand, by issuing the ATA (modem) command or by setting the modem to auto-answer after less than [<RAR >-100] RING strings. This is normally done in order to manage a direct modem-to-modem (non PPP) communication session. When ETPro is in the Auto PPP RAS mode, it will monitor the data stream following the modem “CONNECT” line. If the first character transmitted by the remote end is ‘~’ (0x7E), ETPro will defer to PPP negotiation. The ‘~’ will be the last character transmitted to the host end to signal that ETPro has taken over the negotiations. Upon this event, ETPro will continue to negotiate a PPP connection internally in a manner similar to the procedure that occurs when ETPro picks up the line after receiving <RAR > ‘RING’ strings. If, however, the first character received from the calling end after the “CONNECT” line is not a ‘~’ (0x7E), ETPro will remain in Transparent mode, and a regular modem-to-modem data session will transpire. ETEK R&D CO.,LTD 130 .. .. .. .. Mode SerialNET . AT+I Programmer’s Manual V7.4a The RAS may also be enabled while ETPro is in SerialNet mode. In this case, however, the modem ‘RING’ strings will not be forwarded to the host serial port. Once the PPP connection is established, ETPro will proceed to act as it would after receiving a RING event and creating a PPP connection to a remote RAS server. That is, a listen socket will be established on the LPRT socket, available for a SerialNET connection. This provides an alternative means to ‘wake-up’ a SerialNET server device. ETEK R&D CO.,LTD 131 .. .. .. .. Lost Carrier . AT+I Programmer’s Manual V7.4a When ETPro is online as a result of a RAS connection and the Carrier signal is lost (due to an error or due to the PPP client closing the connection) ETPro will check if during the connection the host used the PPP connection (tried to open an internet session). If the host did not use the connection or ETPro was in SerialNET mode, ETPro will silently perform a software reset and no indication of the disconnection will be given to the host. Otherwise, if the host did use the connection, ETPro will act as if this was a regular session created by the host that was terminated with a lost Carrier signal (the error code will be returned to the host on the next command that requires the use of the connection and only then will a software reset be performed). ETEK R&D CO.,LTD 132 .. .. .. .. Restrictions . AT+I Programmer’s Manual V7.4a Modem ‘RING’ strings will not be detected while the baud rate between ETPro and the host is not yet established. This means that in order to use the RAS feature one of following must apply: 1. BDRF was set to a fixed value (3-9). 2. ETPro is in SerialNET mode with its baud rate defined by the SNSI parameter. 3. An ‘a’ or ‘A’ was previously received from the host serial port and ETPro has determined the host’s baud rate. ETEK R&D CO.,LTD 133 .. .. .. .. . 23. SerialNET Theory of Operation AT+I Programmer’s Manual V7.4a 23.1.Introduction ETPro SerialNET mode extends a local asynchronous serial link to a TCP or UDP socket across Internet. Its main purpose is to allow simple devices, which normally interact over a serial line, to interact in a similar fashion across a network, without requiring any changes in the device itself. In order to achieve this, SerialNET mode defines a set of associated operational parameters, which define the nature of the desired network connection. When ETPro is put in SerialNET mode it acts as a router between the device’s serial port and the network. Devices that communicate with a terminal over a serial link fall into three major categories: Output only (i.e. printers), Input only (i.e. controllers) and interactive (bidirectional communications). The latter are subdivided further into clients and servers. Generally, clients initiate communications by sending service demands to a server, while servers respond to client demands. SerialNET mode reacts differently to client or server devices. When a client device initiates communications, SerialNET mode must establish a network connection to a remote server before data may flow between the two systems. On the other hand, when a remote client needs to invoke a device, the remote client first contacts the ETPro and SerialNET is invoked to create a communication flow to the local server device. SerialNET mode in ETPro includes components to handle both server and client local devices. The ETPro under SerialNET mode will route full-duplex data between a networked terminal and both types of devices. 23.2.SerialNET Mode ETPro's SerialNET mode is established by first defining all related parameters using AT+i commands, followed by a special “Enter SerialNET Mode” AT+i command. Once in SerialNET mode, no additional AT+i commands may be sent, as the host serial link will be dedicated to raw local-device data. In this mode, auto baud rate is also disabled, since it cannot be guaranteed that the device will issue an ‘a’ or ‘A’ as its first character. Thus, a predefined fixed baud rate must be specified before switching over to SerialNET ETEK R&D CO.,LTD 134 .. .. .. mode. .. . will extend across power down, since it is assumed that once acting in SerialNET mode AT+I Programmer’s Manual V7.4a this mode, ETPro will not normally be connected to an AT+i aware host. SerialNET mode may be terminated by: issuing the ESC sequence defined as <half second Delay> followed by “+++” (3 ‘+’ characters) through the serial port; When one of these occur, the ETPro shall reboot after terminating SerialNET mode. At this point the ETPro reverts to its normal operational mode and again responds to AT+i commands. ETEK R&D CO.,LTD 135 .. .. .. .. Devices 23.3.Server . AT+I Programmer’s Manual V7.4a Server devices linger until approached by a remote client. The remote client must know the ETPro’s IP and Listen port address in order to establish communications. A ETPro is normally off-line and must thus be awakened to go online at a precise moment. Moreover, once it connects to the Internet it usually receives a dynamic IP address. This address must be communicated in some way to the client device in-order to establish a link across the Internet. ETPro resolves these problems by supporting a wakeup call and automatically implementing one or more IP registration procedures. This allows a client to wake-up an ETPro in SerialNET mode and retrieve its dynamic IP address from a registration server. A ETPro is offline by default, but waits for a ‘RING’ signal on the modem to trigger it into activity. In this case the remote client device dials directly to the ETPro and hangs up after 2 rings. When contacted, the ETPro (under SerialNET mode) waits for the ‘RING’ to subside and then dials in to its ISP and connects to the Internet. If the RRMA parameter contains an Email Address, ETPro will register its IP address using the Email registration method. ETPro will then listen on the LPRT port for a socket connection. The recipient of the Email may use the registered IP address and Port to create a link to the ETPro’s SerialNET socket. If the RRSV parameter contains a server-name and port, ETPro will register its IP address using the Socket registration method. If the RRWS parameter contains a URL, ETPro will register its IP address using the Web server registration method. Once connected, the ETPro transfers all arriving data from the local device over the serial link. Device responses are routed back to the initiating client. Data will flow freely between the two systems until a predefined activity termination event is triggered, upon which the remote connection is dropped. 23.4.Client Devices Client devices initiate communications to a server. When a client device first sends data on its serial link, the ETPro (in SerialNET mode) buffers the incoming data bytes and attempts to establish a connection to a remote server. After going online, ETPro will perform an IP registration process, according to the RRSV, RRWS and RRMA parameters. ETEK R&D CO.,LTD 136 .. .. .. connection is established, the ETPro transmits the buffered data, collected Once the socket .. during the connection period. The MBTB parameter dictates the maximum number of bytes . to buffer. If additional bytes are received on the serial port before the connection is AT+I Programmer’s Manual V7.4a established, they will be discarded. ETPro will dial-up the ISP to establish an Internet connection before attempting to open the server socket. The remote server’s IP and port are part of the SerialNET mode configuration parameters. Once a data connection is established data can flow freely between the local client device and the remote server. If a connection cannot be obtained, eventually the client device’s data will be discarded (similar to the case of a device transmitting serial data without a serial cable connected). Data continues to flow until a predefined activity termination event is triggered, upon which the remote connection is dropped. 23.5.Automatic SerialNET Server Wakeup Procedure A SerialNET client may be configured to wake up a remote SerialNET server provided it has its phone number. The SPN parameter is used to store this wakeup number. When SPN contains a phone number and no Host Server Name and/or IP are defined, the SerialNET client will try to retrieve them from the registration Email of a remote SerialNET server. When characters are received from the host port, the SerialNET client will dial the SerialNET server and then hang up, causing the server to connect to it’s ISP, send a registration Email containing it’s IP address and local port, and open a listen socket on that port. The client, after waking up the server, connects to its ISP and starts polling the predefined mailbox for the server’s registration Email. Once this Email arrives, the client opens a socket to the IP address and port defined in the Email. The SWT (SerialNET Wakeup Timeout) parameter will define how long ETPro will wait for this procedure to conclude before stopping. Data will then flow until a predefined activity termination event is triggered, upon which the remote connection is dropped. ETEK R&D CO.,LTD 137 .. .. .. .. 23.6.Transmit Packets . AT+I Programmer’s Manual V7.4a Data originating in the local device is buffered, packetized and transmitted to the remote system over the network. Packets are formed as a result of meeting at least one of the following criteria: 1. A predetermined amount of bytes have been received from the local link (MCBF). 2. The TCP/IP connection MTU was met. 3. A predetermined flush character has been received (FCHR). 4. A predetermined inactivity timeout event was triggered (MTTF). Until one of these events occurs, data is buffered in the ETPro. When an event occurs, a packet is transmitted. The event parameters are configured by setting AT+i parameters prior to initiating SerialNET mode. When a UDP connection is used, data packets are atomic, maintaining their original size. When a TCP connection is used packets may be combined before being actually transmitted. This follows from the stream nature of the TCP protocol. Data originating in the remote system is routed to the local device as it is made available. Flow control may be governed locally using hardware flow control only. 23.7.Completing a SerialNET Session A SerialNET session is complete when one of the following occurs: 1. The local device transmitted the disconnection string, as defined in the DSTR parameter. 2. Following an inactivity timeout, as defined in the IATO parameter. The ETPro will go offline when the SerialNET session is terminated. 23.8.SerialNET Failed Connection If the ETPro fails to establish a SerialNET connection, SerialNET mode will be deactivated for a delay period defined in the SNRD parameter. 23.9. Local Serial Port Configuration Prior to entering SerialNET mode, the ETPro’s local serial port may be configured to comply with a wide range of devices by assigning a value to the SNSI parameter. ETEK R&D CO.,LTD 138 .. .. .. .. Serial port configuration entails settings to: . AT+I Programmer’s Manual V7.4a Baud rate: Bits/byte: Parity: Stop Bit: Flow Control: ETEK R&D CO.,LTD 2400, 4800, 9600, 19200, 38400, 56K or 115K 7 or 8 None, Even or Odd Must be 1 None(0) or Hardware(1) 139 .. .. .. 23.10. .. Activation Command . AT+I Programmer’s Manual V7.4a The ETPro shall be forced into SerialNET mode by issuing the following command: AT+i[!]SNMD If the minimal SerialNET parameters are defined, the ETPro will reply with ‘I/OK’, followed by I/DONE or I/ONLINE. If the ETPro was on-line when this command was issued, it will orderly close the Internet session. This includes closing all open sockets and disconnecting from the ISP in a modem environment. When the ETPro boots up in SerialNET mode it will set the host serial channel to the fixed baud rate and serial interface parameters defined in the SNSI parameter. The ETPro is polled for the ‘RING’ string. If the ringresponse destination Email parameter (RRMA) or ring-response server parameter (RRSV) contain values, the ETPro will wait for the ‘RING’ strings to subside and connect to the Internet. Once on-line it will send an Email to the RRMA address (if defined) and/or establish a socket to the address in RRSV (if defined). The transmission will contain the dynamic IP address received from the ISP and its Listen port, on which ETPro has an open listen socket, ready to serve the remote client. ETPro will go offline if one of the following events occur: 1. The remote peer closed the SerialNET socket 2. The IATO parameter was defined and timed-out 3. The terminating string defined in the DSTR parameter was received When the optional ‘!’ (“Auto-Link” mode) flag is specified, ETPro will immediately go online in response to the AT+i! SNMD command. In this case, if one of the terminating events occurs, ETPro will not go offline. Rather, the SerialNET socket will be closed while ETPro will stay online. ETPro will exit SerialNET mode when one of the Escape procedures is activated (see preceding paragraph). The BDRF parameter will then govern the ETPro’s baud rate mode. ETEK R&D CO.,LTD 140 .. .. .. .. . Transfer Protocol (FTP) Theory of 24. File AT+I Programmer’s Manual V7.4a Operation 24.1.Introduction The FTP client component in ETPro Series extends the ETPro’s general-purpose sockets to incorporate an additional, dedicated socket, for FTP activities. From the host’s perspective the FTP capabilities are a logical extension of the capabilities of Email and direct socket manipulation. As in all other ETPro protocol implementations, host involvement in the specifics of FTP is kept minimal. ETPro needs to deal with non-standard FTP issues, such as possible differences between FTP server responses, on its own. Multi stage FTP protocol sequences are atomized under ETPro control to minimize complexity and need for host processor intervention. The FTP protocol is described in RFC 959. 24.2.ETPro Series FTP-Client Command Set Open FTP link to FTP Server Retrieve File List from Server Change Directory on Server Retrieve File Contents from Server Open a New File on Server Open an existing File on Server for Append Send Binary Data to an open File on Server Close a File on Server After Binary Data Send Delete File on Server Close FTP Session ETEK R&D CO.,LTD 141 .. .. .. FTP Client Operation Mode 24.3.ETPro .. . AT+I Programmer’s Manual V7.4a FTP specifies several operational modes. The RFC calls for a minimum implementation, which should be observed by all FTP servers. The ETPro Series restricts its operation mode to the minimum implementation to assure best intersystem compatibility. Character Types: ASCII Non-print Structure: File Mode: Stream 24.4.FTP Command Socket The FTP command socket is normally on port 21 (decimal) of an FTP server. However, other ports may be specified to support special cases. ETEK R&D CO.,LTD 142 .. .. 24.5.FTP.. Receive Flow .. . AT+I Programmer’s Manual V7.4a Figure 24-1 FTP Receive Flowchart ETEK R&D CO.,LTD 143 .. .. .. .. 25. Telnet Client Operation . AT+I Programmer’s Manual V7.4a There are four operation modes for most Telnet applications, namely, half-duplex, character at a time, line at a time, and line-mode. ETPro incorporates two methods to send data to the remote Telnet server: “One line at a time”, namely an AT+i command (+iTSND) is used to send a single (CR/LF terminated line to the Telnet server); and “Binary Transmission”, where an AT+i command (+iTBSN) is used to send an arbitrary amount of binary data. Data is retrieved from the remote Telnet server as it is made available. Embedded Telnet options in the server’s response stream are stripped by ETPro before being turned over to the host. Telnet specifies many operational options. The ETPro will restrict its operation mode to the minimum implementation to assure best intersystem compatibility. The following are the only Telnet options that will be negotiated by ETPro: Any other options negotiated by the Telnet server will be rejected by ETPro. ETEK R&D CO.,LTD 144 .. .. .. .. . AT+I Programmer’s Manual V7.4a 26. Remote AT+i Service 26.1.Introduction The LATI parameter allows configuring ETPro to maintain a communication channel, which supports interacting with ETPro from a remote location, using the AT+i command set, as-if the commands are administered through the local serial port. When LATI is set to a non-zero value, ETPro will open a TCP listen socket on port <LATI>. This will only occur after the PPP connection is established. This listen socket may be used to connect to the ETPro’s remote AT+i service. 26.2.Remote AT+i commands When a remote client connects to ETPro’s LATI socket, ETPro redirects the socket’s data flow to the AT+i parser, in effect allowing the socket to take over the parser. Any data coming from the socket will be processed by the ETPro, as if it came from the host serial port and the replies will be returned to the socket instead of being send to the host serial port. ETPro will reply with an “I/BUSY” to commands coming from the host serial port, while the remote client is connected. An exception to this is the "+++" Escape sequence. On detection of "+++" from the host serial port, ETPro will close the remote connection and reboot. If ETPro was in the process of performing some Internet activity, initiated by the host, at the time the remote client connected, ETPro will allow this activity to end and the final reply to reach the host before passing control over the parser to the remote client. 26.3.Closing a Remote AT+i Session To close a remote AT+i session, the remote client can choose to issue AT+IDOWN via the socket. In response to this, ETPro will restart (only I/OK will be returned over the socket before it is closed by ETPro). Alternatively, the remote client may close the socket in order to disconnect, leaving the ETPro’s Internet session as is. In the later case, ETPro will return control over the parser to the local host port. The LATI listen will remain active, available to service additional remote connections. ETEK R&D CO.,LTD 145 .. . After a LATI..session is closed, the LSR (last session error) WEB parameter will contain the value 096 to ..indicate that a LATI session has been disconnected. .. AT+I Programmer’s Manual V7.4a Note: ‘+++’ sent over the LATI socket will not be recognized as an Escape Sequence. 26.4.Caveats and Restrictions a. When ETPro Series is in auto baud rate detection mode (after restarting with BDRF=’a’ or in response to the AT+iBDRA command), a remote AT+i session cannot be established, even if the LATI parameter contains a port value. b. During a remote AT+i session, the remote client taking over the parser cannot make use of ETPro’s mechanisms of Hardware or Software flow control, which exist for the local host port. The only mechanism ETPro will use is this mode is TCP level flow control (using the TCP window). ETEK R&D CO.,LTD 2 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27. Nonvolatile Parameter Database 27.1.Parameter Descriptions Parameter Type XRC DMD MIS MTYP WTC TTO PGT MPS TTR BDRF Range Default Scope Description Operational Byte 0..4 4 ETPro Extended Return code. Same as ATXn. Series Byte 0..2 0 ETPro GPRS/CDMA module Dial Mode: ATD<m> Series m: Tone (0); Pulse (1); None (2) String 126 “AT&FE0 ETPro GPRS/CDMA module initialization string. May chars Series contain several consecutive AT V1X4Q0& commands. Byte 0..9 0 ETPro GPRS/CDMA module Type Designator Series Byte 0..255 45 ETPro Wait Time Constant. Initialization Series constant for modem’s S7 register. Defines a timeout constant for a variety of modem activities. INT 0..3600 0 ETPro TCP Timeout. Number of seconds to Series wait before returning a timeout error on a TCP transaction. Unsigned 0-65535 0 [mSec] ETPro Timeout to resend a PING request. INT Series Byte 0..3 0 (1500) ETPro Max PPP Packet Size. Series INT 0..65535 3000 ETPro Timeout to resend an unacknowledged Series TCP packet in milliseconds. [mSec] Byte 1..8 ‘a’ (Auto) ETPro Sets the IP Module <=>Host to a fixed baud rate. Series BDRM Byte AWS Byte LATI INT FLW Byte ETEK R&D CO.,LTD 1..8 ‘a’ (Auto) ETPro Series ETPro Series Sets the IP Module<=>GPRS/CDMA module baud rate to a fixed baud. 0..1 0 Set flag to define Web Server Activation when in SerialNET mode. 0 (Web server disabled) 1 (Web server enabled). 0-65535 0(Disabled) ETPro Remote AT+i Service, port number. Series 0..7 0 (S/W) ETPro Flow Control Mode. Series 3 PSE .. .. Byte .. .. Byte . 0..1 PN44 Byte 0..1 Byte 0..4 AT+I Programmer’s Manual V7.4a CPF ETEK R&D CO.,LTD 0..1 1 (LAN) ETPro Set Communication platform: Series Modem (0); LAN (1). 0(Disabled) ETPro Set Power-Save Mode:Disabled(0); Enabled(1) Series 0 (Clk Out) ETPro Select Pin 44 function: Clock Out or Heart Beat. Series 0(Disabled) ETPro Watch Dog Activation Mode Series 4 .. .. .. .. . Parameter AT+I Programmer’s Manual V7.4a Type Range ISPn Phone # 96chars Default Scope Description ISP Connection NULL ETPro Series ISP's access phone number. <n>:1..2 ATH Byte 1 (PAP) USRN String 64chars NULL ETPro Series Use CHAP(2), PAP(1) or Script(0) authentication. ETPro Series ISP Connection User name PWD String 64chars NULL ETPro Series ISP Connection Password RDL Byte 0..20 5 ETPro Series Number of Redial tries. RTO Byte 0..3600 180 ETPro Series Timeout before redialing [seconds] 0..2 Server Profiles 1(YES) ETPro Series Leave on Server: 1(YES) 0(NO) 0.0.0.0 ETPro Series Domain Name Server IP address. <n >:1..2 NULL ETPro Series SMTP server name. 0(None) ETPro Series Define SMTP Authenticated Method: 0(None) 1(Login authentication) 64chars NULL ETPro Series SMTP Authentication User Name 64chars NULL ETPro Series SMTP Authentication Password 64chars NULL ETPro Series POP3 server name 64chars NULL ETPro Series Mailbox User name 64chars NULL ETPro Series Mailbox Password 64chars NULL ETPro Series Network Time Server name. <n >:1..2 0..1 0 (Disabled)ETPro Series Network time-of-day retrieval flag -12..12 0 ETPro Series ETPro location’s GMT Offset 64chars NULL ETPro Series Set ETPro’s Daylight Savings transition rule 64chars NULL ETPro Series Set ETPro’s PING Destination servers, used for online status verification. 0-65535 0(Disabled) ETPro Series Set PING destination server pollingFrequency. User Fields 128 chars NULL ETPro Series User Storage field and Macro Substitution. <n>:01..12 LVS Byte 0..1 DNSn[p] IP address SMTP[p] String 64chars SMA Byte 0..1 SMU SMP POP3[p] MBX MPWD NTSn NTOD GMTO DSTD String String String String String String Byte Byte String PDSn String PFR INT UFn String ETEK R&D CO.,LTD 5 Parameter .. .. .. .. .Type Range XFH Byte 0..1 HDL FLS Byte String 0..255 64chars SBJ TOA[n] TO String String String 96chars 64chars 96chars REA FRM String String 64chars 96chars CCn BDY 64chars 96chars MT String Text lines Byte 0..4 MST String 64chars FN String 64chars AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD Default Scope Description Email Format 1 ETPro Series Transfer Email headers. 1(Enable) 0(Disable) 0 (no limit) ETPro Series Limit number of header lines retrieved. NULL ETPro Series Filter string must exist in message (no filter) header to Qualify for Retrieve. NULL NULL NULL ETPro Series Contents of the Email subject field. ETPro Series Email Addressee. ETPro Series Addressee Description/Name in Email header. NULL ETPro Series Return Email Address NULL ETPro Series Sender Description/Name in Email header. NULL ETPro Series Alternate Addressee (CC: field) <n >:1..4 NULL ETPro Series Textual body contents for MIME encapsulated Email messages. 4 ETPro Series Media Type: (application) 0: Text; 1: Image ; 2: Audio ; 3: Video ; 4: octet-stream ETPro Series Media Subtype String. For a list see Appendix A. None. ETPro Series Attachment File Name (inc. extension). If a file name is not defined, the ETPro will generate a unique filename. 6 .. .. .. .. . AT+I Programmer’s Manual V7.4a Parameter Type Range Default Description HTTP ETPro Series URL string used for subsequent +iRLNK 128 chars None commands to upload Web pages and files. 64chars NULL. ETPro Series Password for restricting host parameter updates via a Web browser. RAS Server 2..20 4 ETPro Series Number of RINGs after which ETPro will activate its internal RAS Server 64chars NULL ETPro Series RAS Login User Name 64chars NULL ETPro Series RAS Login Password IP Registration 64 chars NULL ETPro Series Set the Email address to use for dynamic IP address registration after going online. 64 chars NULL ETPro Series Set the server name/IP and port to contact for dynamic IP address registration after going online. 128 chars NULL ETPro Series Set the Web Server URL used for dynamic registration after going online. URL String WPWD String RAR Byte RAU RAP String String RRMA String RRSV String RRWS String RRRL String 64 chars NULL HSTN String 64 chars NULL ETEK R&D CO.,LTD Scope ETPro Series Set the Return Link IP address to use when performing an IP address registration behind a NAT. ETPro Series ETPro’s Network Host Name. Is included in all IP registration methods. 7 .. .. .. .. .Type AT+I Programmer’s Manual V7.4a Parameter Range HSRV String 64 chars DSTR String 8 chars LPRT Unsigned 0-65535 INT INT 0-2048 MBTB MTTF FCHR Unsigned 0-65535 INT Byte 1 char MCBF INT 0-1460 IATO INT 0-32768 SNSI String 9 chars STYP Byte 0..1 SNRD INT 0..3600 SPN String 96 chars SDT Byte 0..255 SWT INT 0..65535 PTD INT 0..65535 ETEK R&D CO.,LTD Default Scope Description SerialNET Mode NULL ETPro Series Set the remote host server name/IP and port NULL ETPro Series Set the disconnection string template 0 ETPro Series Set the SerialNET mode listen socket 0` ETPro Series Max bytes to buffer while ETPro is establishing a connection. 0 (None) ETPro Series Max inactivity timeout in milliseconds before flushing the SerialNET socket. 0 (None) ETPro Series Flush character. When received, SerialNET socket will be flushed. 0 (None) ETPro Series Max. characters before flushing the SerialNET socket. 0 (None) ETPro Series Inactivity timeout in seconds before closing the SerialNET connection. “5,8,N,1,0” ETPro Series SerialNET mode Serial interface configuration. Defines baud, bits, parity, stop and flow control. 0 (TCP) ETPro Series Set the SerialNET mode socket type. 0 (TCP) or 1 (UDP). 0 (No ETPro Series Delay time in seconds before re’enabling Delay) SerialNET mode after a failed connection. NULL ETPro Series SerialNET Phone Number to wakeup SerialNET Server. 20 ETPro Series SerialNET Dial Timeout. When waking up a SerialNET server ETPro will hang-up after SDT seconds have elapsed. 600 ETPro Series SerialNET Wakeup Timeout. Number of seconds to allow for the SerialNET server wakeup procedure. 0 (No Filter) ETPro Series Specifies the number of Packets to Drop during a SerialNET session. 8 .. .. .. .. .Type AT+I Programmer’s Manual V7.4a Parameter Range UEN UMBX UPOP[p] Byte String String 0..1 64chars 64chars UMPW String 64chars RPG String 64chars Default Scope Description Remote Firmware Update 0(Disabled) ETPro Series Email Firmware Update ENable NULL ETPro Series Dedicated Firmware Update Mailbox NULL ETPro Series Dedicated Firmware Update POP3 server name NULL ETPro Series Dedicated Firmware Update Mailbox Password Remote Parameter Update NULL ETPro Series Email Parameter Update Group/Password. Also acts as password to restrict updating the ETPro parameters via a Web browser. Table 27-1 Nonvolatile Parameter Database ETEK R&D CO.,LTD 9 .. .. .. .. 27.2.+iFD . AT+I Programmer’s Manual V7.4a Syntax: Restore all Parameters to Factory Default AT+iFD Restore ETPro’s nonvolatile parameter database values to factory defaults. Parameters: None. Scope: ETPro Series. Command Options: Each of ETPro’s nonvolatile parameters, described in the following section, has an associated default value. This command restores all parameters to the default value. An exception to this are the MIS (Modem Init String), RPG (Remote Parameter Group/Password) and CPF (Communications Platform) parameters, which will always retain the last set value. Result code: I/OK ETEK R&D CO.,LTD After restoring parameters to default value 10 .. .. .. .. 27.3.Parameter Access Commands . AT+I Programmer’s Manual V7.4a 27.3.1 +iXRC - Extended Result code Syntax: AT+iXRC=n Extended Result Code. Same as ATXn. This command selects which subset of the result messages will be used by the modem to inform the Host of the results of commands. Parameters: n = 0 .. 4 Command Options: For a detailed description of the command options see the ATXn command in the AT command set manual for the modem in use. Default: 4 Scope: Result code: I/OK I/ERROR ETPro Series. If n is within limits. Otherwise AT+iXRC~n Temporarily set the Extended Result Code for one session. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iXRC? Report the current Extended Result Code used when dialing the ISP. The reply is followed by I/OK. AT+iXRC=? Returns the message "0-4 The reply is followed by I/OK ETEK R&D CO.,LTD 11 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.2 +iDMD - Modem Dial Mode Syntax: AT+iDMD=n Permanently set the modem dial mode to Tone, Pulse or none. This parameter defines the dial character m used when issuing the ATDm dial command to the modem. Parameters: n = 0 .. 2 Command Options: n = 0 Use Tone dialing (m=T). n = 1 Use Pulse dialing (m=P). n = 2 Use modem’s default dialing (m=’’). Default: 0 (Tone Dialing) Scope: Result code: I/OK I/ERROR ETPro Series. If n is within limits. Otherwise AT+iDMD~n Temporarily set the modem dial mode for one session. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iDMD? Report the current modem dial mode used when dialing the ISP. The reply is followed by I/OK. AT+iDMD=? Returns the message "0-2" The reply is followed by I/OK ETEK R&D CO.,LTD 12 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.3 +iMIS - Modem Initialization String Syntax:AT+iMIS=str[;str…] Permanently set the GPRS/CDMA module Initialization String. Parameters: Command Options: str='' str=<string> str = GPRS/CDMA module initialization string. Empty: No GPRS/CDMA module initialization string defined. string will be used as the modem initialization string. If string contains special characters, such as quotation marks (‘ or “), these may be included in string by prefixing each special character with a backslash (‘\’). For example: “AT+CGCONT,\”IP\”,\”INTERNET\””. string must include the AT prefix and the modem reply is expected to include ‘OK’. MIS may include several consecutive modem commands, separated by a semicolon. Each command must begin with ‘AT’ and its modem reply must include ‘OK’. ETPro will send each ‘AT’ command separately, followed by <CR> and wait for the ‘OK’ before proceeding. Default: ‘AT&FE0V 1 X4Q0&D2M1 L3’ Note: This default value is shipped from the factory. The AT+iFD command does not restore MIS to this value. Scope: ETPro Series. Result code: I/OK I/ERROR If str is an empty or a legal string. Otherwise AT+iMIS~ str[;str…] AT+iMIS? ETEK R&D CO.,LTD Temporarily set the modem initialization string to str[;str…]. The permanent value will be restored after completing the next session, both if the session was successful or not. Report the current modem initialization string. If the modem initialization string is empty, only <CRLF> will be returned. The reply is followed by I/OK 13 .. .. .. .. AT+iMIS=? . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD Returns the message ‘String’ The reply is followed by I/OK 14 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.4 +iMTYP - Set Type of GPRS/CDMA module Connected to IP Module Syntax: AT+iMTYP=n Set the modem type Parameters: n = 0 .. 9 Command Options: + 100 n = 0 Standard, Hayes compatible, Dial-up Modem n = 1 Silicon Laboratories Si2400. See note below. n = 2 GSM Modem n = 3 AMPS CM900 n = 4 Falcom GSM Modem n = 5 Silicon Laboratories High-Speed modems: 2414/33/56. n = 6 Standard 2400 baud modem (increased timeout) n = 7 GSM 536 (limit packets to 536 bytes) n = 8 CDPD Cellular Modem n = 9 Wavecom Fastrack Cellular Modem Add 100 to any modem type to prohibit IP Module from issuing an ATZ to the modem before dialing the ISP when an Internet session is activated. This is useful if the modem needs to be initialized manually before an Internet session. Note that an ATZ will be issued when the session is terminated. Default: n = 0 Standard, Hayes compatible Scope: ETPro Series. Result code: I/OK I/ERROR AT+iMTYP? AT+iMTYP=? If n is within limits. Otherwise Returns current modem type designator The reply is followed by I/OK. Returns the message "0-9".The reply is followed by I/OK. Note : Configure the IP Module to work with GPRS module as follows: AT+iMTYP=2 – GSM/GPRS modem type AT+iXRC=0 – blind dialing AT+iISP1=<ISP/Provider dial number> (usually *99**1#) AT+iMIS=”AT+CGDCONT=1,IP,<Proxy>” ETEK R&D CO.,LTD 15 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.5 +iWTC - Wait Time Constant Syntax: AT+iWTC=n This parameter is used to set the modem register S7 to the required value (using the “ATS7=n” command). Parameters: n = 0..255 Command Options: The WTC parameter defines a timeout constant for a variety of modem activities. For a detailed description of this parameter see the ATS7=n command in the AT command set manual for the modem in use. Default: 45 (seconds) Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iWTC~n Temporarily set the Wait Time Constant value for one session. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iWTC? Report the current Wait Time Constant used. The reply is followed by I/OK. AT+iWTC=? Returns the message "0-255" The reply is followed by I/OK. ETEK R&D CO.,LTD 16 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.6 +iTTO - TCP Timeout Syntax: AT+iTTO=n Permanently set the number of seconds ETPro will allot an Internet transaction to complete before returning the timeout error. Parameters: n = 0..65535 [milliseconds] Command Options: The TTO parameter defines the timeout constant for Internet transactions. ETPro will return with a timeout error for any TCP/UDP/IP transaction that didn’t complete properly within n.Timeout measurement is defined between receipt of an AT+i command and an ETPro response to the host. Timeout measurement begins only after establishing a PPP connection. Furthermore, an additional 10-15 seconds may be required to allow the IP Module to disconnect the modem. n = 0 is a special case where internal timeout constants will be used. Default: 0 (uses the default timeout of 2000 milliseconds) Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iTTO~n Temporarily set the Internet transaction timeout value for one session. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iTTO? Report the current Internet transaction timeout used. The reply is followed by I/OK. AT+iTTO=? Returns the message "0-3600 The reply is followed by I/OK. ETEK R&D CO.,LTD 17 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.7 +iPGT - PING Timeout Syntax: AT+iPGT=n Permanently set the timeout in milliseconds, after which ETPro will reissue a PING request that has not been replied to. Parameters: n = 0..65535 [milliseconds] Command Options: After issuing a PING request, in response to the AT+iPING command, ETPro will wait up to n milliseconds for a reply. If a reply is not received, ETPro will reissue the PING request. n = 0 is a special case where a timeout of 2 seconds is used. Default: 0 (use ETPro’s factory default timeout values) Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iPGT~n Temporarily set the PING transaction timeout value for one session. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iPGT? Report the current PING transaction timeout used. The reply is followed by I/OK. AT+iPGT=? Returns the message "0-65535 The reply is followed by I/OK. ETEK R&D CO.,LTD 18 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.8 +iMPS - Max PPP Packet Size Syntax: AT+iMPS=n Limit the size of an outgoing PPP packet. In effect the MPS parameter limit’s the ETPro’s MTU (Maximum Transfer Unit). Parameters: n = 0 .. 3 Command Options: n = 0 1500 bytes n = 1 256 bytes n = 2 536 bytes n = 3 1024 bytes Default: n=0 Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iMPS? Returns current value The reply is followed by I/OK. AT+iMPS=? Returns the message "0-3" The reply is followed by I/OK ETEK R&D CO.,LTD 19 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.9 +iTTR - TCP retransmit timeout Syntax:AT+iTTR=n Set the timeout, in milliseconds, after which an unacknowledged TCP packet will be retransmitted over a PPP connection by ETPro. Parameters: Default: 3000 milliseconds Scope: Result code: I/OK I/ERROR ETPro Series if n is within limits otherwise AT+iTTR? Report the current value. The reply is followed by I/OK. AT+iTTR=? Returns the message "1-65535" The reply is followed by I/OK. ETEK R&D CO.,LTD 20 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.10 +iBDRF - Define a Fixed Baud Rate on Host Connection Syntax:AT+iBDRF=n Set the baud rate on host serial connection. This parameter is saved to nonvolatile memory and activated only after power up. Parameters: n = 3 .. 9 or ‘a’ or ‘h’ Command Options: n = a set baud rate to ‘Autobaud’ n = 3 set baud rate to 2400 n = 4 set baud rate to 4800 n = 5 set baud rate to 9600 n = 6 set baud rate to 19200 n = 7 set baud rate to 38400 n = 8 set baud rate to 57600 n = 9 set baud rate to 115200 n = h set baud rate to 230400 (ETPro211/312/315 Only) When BDRF is set to ‘a’, ETPro will boot in auto baud rate mode. In this mode, ETPro will synchronize on the first ‘a’ or ‘A’ character sent (normally as part of an AT or AT+i command) and detect its baud rate. The detected baud rate will prevail until the ETPro is power-cycled or issued the AT+iBDRA command. Default: ‘a’ (Autobaud) Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. The ETPro will continue operating in the current baud rate setting. Further power-ups will initialize the baud rate to the new selected value, until a different AT+iBDRF command is issued. Otherwise AT+iBDRF? Returns the code for the specified fixed baud rate The reply is followed by I/OK. AT+iBDRF=? Returns the message "3-9, ‘a’ or ‘h’" The reply is followed by I/OK ETEK R&D CO.,LTD 21 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.11 +iBDRM- Define a Fixed Baud Rate on IP module to GPRS/CDMA module Connection Syntax: AT+iBDRM=n Set the baud rate on GPRS/CDMA connection. This parameter is saved to nonvolatile memory and activated after every power up. Parameters: 3 .. 9 or ‘a’ or ‘h’ Command Options: n = a set baud rate to ‘Autobaud’ n = 3 set baud rate to 2400 n = 4 set baud rate to 4800 n = 5 set baud rate to 9600 n = 6 set baud rate to 19200 n = 7 set baud rate to 38400 n = 8 set baud rate to 57600 n = h set baud rate to 230400 (ETPro211/312/315 Only) Default: Scope: Result code: I/OK I/ERROR ‘a’ (auto baud). The IP module to GPRS/CDMA module connection will be set to the same baud rate as that detected on the host to IP module connection. ETPro Series. If n is within limits. The IP module will continue operating in the current baud rate setting. Further power-up will initialize the baud rate to the new selected value, until a different AT+iBDRM command is issued. Otherwise AT+iBDRM? Returns the code for the specified fixed modem baud rate The reply is followed by I/OK. AT+iBDRM=? Returns the message "3-9, ‘a’ or ‘h’" The reply is followed by I/OK ETEK R&D CO.,LTD 22 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.12 +iAWS - Activate WEB Server Automatically Syntax: AT+iAWS=v Permanently set ‘activate WEB server’ flag to v. Parameters: v = 0 or 1 Command Options: v=0 Automatic Web server invocation will be disabled. v=1 Web server will be activated automatically when ETPro goes online in SerialNET mode or as a result of a triggered Internet session initiation. Maximum Number of concurrent browser connections is 1. Default: 0 (automatic Web server activation is disabled) Scope: ETPro Series. Result code: I/OK I/ERROR if v = 0 or 1 otherwise AT+iAWS? Report the current value of the 'activate WEBserver’ flag. The reply is followed by I/OK. AT+iAWS=? Returns the message "0-1" The reply is followed by I/OK. ETEK R&D CO.,LTD 23 .. .. .. .. . 27.3.13 +iLATI - TCP/IP Listen Socket to Service Remote AT+I commands AT+I Programmer’s Manual V7.4a Syntax: AT+iLATI =port Sets the Remote AT+i service Listen port number. When connected to the Internet, opens a TCP/IP listen socket on the local IP address and the specified port. Parameters: port = 0..65535 Command Options: port= 0 port=<portnum> Remote AT+i service disabled. Listening port to be used by a remote system when connecting to the ETPro Series in order to send AT+i commands over the Internet. The Listen socket will accept one remote connect request. When a remote system connects through the listen socket, ETPro will disable its local host serial port and spawn a new TCP/IP socket, ready to receive AT+i commands. AT+i response strings will be transmitted back to the same socket. When the connected socket is closed, the local host serial port will be re-enabled and the listen socket will be ready to accept a new connection. The remote end may also issue the AT+iDOWN command to force ETPro to disconnect and reboot. Default: 0 (Disabled) Scope: ETPro Series Result code: I/OK Upon successfully opening the remote AT+i service TCP/IP listen socket. I/ERROR Otherwise AT+iLATI~n Temporarily set the remote AT+i service Listen port. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iLATI? Returns current AT+i service Listen port number. The reply is followed by I/OK. AT+iLATI=? Returns the message "0-65535" The reply is followed by I/OK ETEK R&D CO.,LTD 24 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.14 +iFLW - Set Flow Control Mode Syntax: AT+iFLW=n Set the flow control mode. Parameters: n = 0 .. 7 Command Options: n = Bitmapped flags: Bit0 0 = Host S/W flow control, using Wait/Continue control characters. 1 = Host H/W flow control based on ~CTS/~RTS hardware signals. Bit1 0 = No Modem flow control. 1 = Modem H/W flow control based on ~CTS/~RTS hardware signals. Bit 3 0 = All H/W control signals: ~CTS, ~RTS, DTR and DSR are mirrored across IP module when transferring data transparently to the DCE. 1 = Hardware signal mirroring is disabled. Default: control). ‘0’ (Host S/W flow control, No modem H/W flow Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. See Note. Otherwise AT+iFLW~n Temporarily set the flow control mode for one session. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iFLW? Returns current flow control mode The reply is followed by I/OK. AT+iFLW=? Returns the message "0-7" The reply is followed by I/OK Note: When setting Bit 0 (Host H/W flow control) the ~CTSH signal must be ETEK R&D CO.,LTD 25 .. .. .. LOW .. (Enabled), otherwise IP module will return I/ERROR(063). . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 26 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.16 +iPSE - Set Power Save Mode Syntax: AT+iPSE=n Enable or Disable ETPro’s Power Save Mode Parameters: n = 0..1 Command Options: n = 0 Disable Power Save mode. n = 1 Enable Power save mode. When Power save mode is enabled, ETPro will automatically shutdown most of its circuits after a period of 5 seconds without any activity on the host or modem serial ports. Renewed activity on the serial ports will restore ETPro to full operational mode. Default: 0 (Disabled) Scope: ETPro Series. Result code: I/OK I/ERROR AT+iPSE? AT+iPSE=? ETEK R&D CO.,LTD If n is within limits. Otherwise Report the currently Power save mode setting. The reply is followed by I/OK. Returns the message "0-1" The reply is followed by I/OK. 27 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.17 +iPN44 - Set Pin 44 Function: Clock-Out or Heart-Beat Signal Syntax:AT+iPN44=n Set IP module’s Pin 44 functionality Parameters: n = 0..1 Command Options: n=0 Set Pin 44 as Clock Out Provides a clock signal at the same frequency as IP module’s clock input signal (X1 -- pin 42). n=1 Set Pin 44 as Heart Beat. IP module outputs a square wave at roughly 80mSec frequency with a 50% duty cycle. The setting takes effect only after the next power-up cycle. Default: 0 (Clock Out) Scope: ETPro Series. Result code: I/OK I/ERROR AT+iPN44? AT+iPN44=? ETEK R&D CO.,LTD If n is within limits. Otherwise Report the currently Pin 44 functionality setting The reply is followed by I/OK. Returns the message "0-1 The reply is followed by I/OK. 28 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.18 +iWDM - Set Watchdog Activation Mode Syntax: AT+iWDM Set IP module’s Watchdog operation mode Parameters: Command Options: n = 0..4 n = 0 Disabled Watchdog Function n = 1 Reserved for future use. n = 2 Enable Internal Watchdog circuit. n = 3 Reserved for future use. n = 4 Reserved for future use. After the Watchdog circuit is enabled, firmware stability and proper execution will be monitored. In the event that the firmware crashes or does not execute properly, the Watchdog circuit will generate a hard RESET. Once IP module restarts it will: 1. Restore the host serial port to the baud rate in effect when the WDR command was issued, regardless of the BDRF parameter value. 2. In a dial-up environment, a modem hang-up process will be performed to resolve the possible case where the modem was online, when the RESET occurred. 3. A BREAK condition is forced on the TXDH signal, to notify the host that a Watchdog reset has occurred. Default: 0(Disabled) Scope: ETPro Series. Result code: I/OK I/ERROR AT+iWDM? AT+iWDM=? If n is within limits. Otherwise Report the currently Watchdog activation setting The reply is followed by I/OK. Returns the message "0-4" The reply is followed by I/OK. ETEK R&D CO.,LTD 29 .. .. .. .. . 27.3.19 +iISPn - Set ISP Phone Number AT+I Programmer’s Manual V7.4a Syntax:AT+iISPn=dial-s Permanently set the ISP’s access phone numbers. Use n=1 to set the ISP's primary access phone number.Use n=2 to set the ISP's alternate number. The alternate number is dialed after exhausting all redial attempts of the primary number. Parameters: n = 1..2 dial-s = Telephone number string, composed of digits, ‘,’, '-', 'W', 'w', '*', '#', '!' or ' '. See description of the standard ATD command. Note: If a character that is defined as a Delimiter is used within the dial string, the string must be entered between apostrophes. Command Options: dial-s=’’ dial-s=<number> Empty access number. number will be set as ISP access number. Default: Empty. No permanent ISP access number defined. Scope: ETPro Series Result code: I/OK I/ERROR If dial-s is a legal phone number string. Otherwise AT+iISPn~dial-s AT+iISPn? AT+iISPn=? ETEK R&D CO.,LTD Temporarily set the ISP's primary/alternate access number. The permanent value will be restored after completing the session, both if the session was successful or not. Report the current value of the ISP's primary/alternate access numbers. If the number does not exist, only <CRLF> is returned. The reply is followed by I/OK. Returns the message “Phone #" The reply is followed by I/OK 30 .. .. .. .. . 27.3.20 +iATH - Set PPP Authentication Method AT+I Programmer’s Manual V7.4a Syntax: AT+iATH=v Permanently set Authentication method to v. Parameters: v = 0 .. 2 Command Options: v=0 v=1 v=2 Default: Use script driven authentication (Obsolete). Use PAP authentication. Use CHAP authentication. 1 (PAP) Scope: ETPro Series. Result code: I/OK I/ERROR If v is within limits Otherwise AT+iATH~v AT+iATH? Temporarily set the authentication method to v for the duration of the next session. The permanent value will be restored after completing the session, both if the session was successful or not. Report the current setting of the authentication method. The reply is followed by I/OK. AT+iATH=? ETEK R&D CO.,LTD Returns the message "0-2" The reply is followed by I/OK 31 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.21 +iUSRN - Define Connection User Name Syntax: AT+iUSRN=user Permanently set connection User-Name. Parameters: Command Options: user='' Default: user = User name to be used when logging on to the ISP. Empty: No user-name defined. user=<user-name> user-name will be used to login to the ISP. Empty. No user-name defined. The login user-name may be defined ad-hoc. Scope: ETPro Series. Result code: I/OK I/ERROR If user is an empty or a legal ISP login name. Otherwise AT+iUSRN~user Temporarily set the login user name to user. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iUSRN? Report the current login user-name. If the username does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iUSRN=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 32 .. .. .. .. . 27.3.22 +iPWD - Define Connection Password AT+I Programmer’s Manual V7.4a Syntax: AT+iPWD =pass Parameters: Permanently set connection password. pass = Password to be used when logging on to the ISP. Command Options: pass='' Empty: No password defined. pass=<password> password will be used to login to the ISP. Default: Scope: Empty. No password defined. The login password may be defined ad-hoc. ETPro Series. Result code: I/OK I/ERROR If password is an empty or a legal ISP login password Otherwise AT+iPWD ~pass Temporarily set the login password to pass. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iPWD? Report the current login password. The reported value will consist of '*' characters. The number of '*' characters shall reflect the number of characters in the actual password. If a password does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iPWD=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 33 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.23 +iRDL - Number of times to Redial ISP Syntax:AT+iRDL=n Permanently set the number of times to redial ISP. Parameters: n = number of redial attempts to the ISP. If the ISP number is busy or the ISP does not pick up the line, the system will attempt to redial the ISP after a delay period as defined in the RTO parameter. If all redial attempts are exhausted, an attempt to dial the alternate ISP number will be made, if an alternate number exists. In the event that the number is busy or the ISP does not respond, the system will attempt to redial up to n times, as with the primary ISP number. If all redial attempts are exhausted the system will quit with the error message: 'All Redial Attempts Failed'.If the ISP does not pickup the line, the ETPro will timeout and determine a redial situation after the number of seconds stored in the WTC ETPro parameter. Command Options: n= 0 .. 20 Default: 5 Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iRDL~n Temporarily set the number of times to redial the ISP. The permanent number of redial attempts will be restored after completing the next session, both if the session was successful or not. AT+iRDL? Report the current value of the number of times to redial ISP. The reply is followed by I/OK. AT+iRDL=? Returns the message "0-20" The reply is followed by I/OK ETEK R&D CO.,LTD 34 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.24 +iRTO - Delay Period Between Redials to ISP Syntax:AT+iRTO=n Permanently set delay period, in seconds, between redials to ISP Parameters: n = number of seconds to delay before redialing the ISP, after a busy signal or in the event that the ISP did not answer the call.ETPro will enforce a minimal 5 second delay for values of n less than 5 seconds. Command Options: n = 0 .. 3600 Default: 180 [seconds] Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iRTO~n Temporarly set the number of seconds to delay before redialing the ISP. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iRTO? Report the current number of seconds to delay before redialing the ISP. The reply is followed by I/OK. AT+iRTO=? Returns the message "0-3600" The reply is followed by I/OK ETEK R&D CO.,LTD 35 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.25 +iLVS - 'Leave on Server' Flag Syntax: AT+iLVS=v Permanently set 'Leave on Server' flag to v. Parameters: Command Options: v=0 After successful retrieval, messages will be deleted from server. Default: 1 Scope: ETPro Series Result code: I/OK I/ERROR If v = 0 or 1 Otherwise AT+iLVS~v Temporarily set the 'Leave on Server' flag to v for the duration of the next session. The permanent value will be restored after completing the session, both if the session was successful or not. AT+iLVS? Report the current value of the 'Leave on Server' flag. The reply is followed by I/OK. AT+iLVS=? Returns the message "0-1" The reply is followed by I/OK ETEK R&D CO.,LTD 36 .. .. .. .. . 27.3.26 +iDNSn - Define Domain Name Server IP Address AT+I Programmer’s Manual V7.4a Syntax: AT+iDNSn=IP Parameters: Command Options: IP =0.0.0.0 IP =IP add. Default: ad-hoc. Permanently set the Domain Name Server IP Address. Use n=1 to define the Primary IP address of the Domain Name Server associated with the ISP Use n=2 to define the Alternate IP address. IP ::= <nnn>.<nnn>.<nnn>.<nnn> Where, <nnn>: [000..255] n = 1..2 Empty: No DNS defined. IP add. will be used to communicate to the Domain Name Server on the Internet. Empty. No DNS defined. The DNS must be defined The ISP will assign a DNS IP to an empty DNS, if the ISP supports RFC 1877 (PPP Extensions for Name Server Addresses). Scope: ETPro Series. Result code: I/OK If IP is an empty or legal IP address. I/ERROR Otherwise. AT+iDNSn[p]~IP Temporarily set the DNS IP addresses. The permanent values will be restored after completing the next session, both if the session was successful or not. AT+iDNSn[p]? Report the current main/alternate DNS address. If no DNS address exists 0.0.0.0 will be returned. The reply is followed by I/OK. AT+iDNSn[p]=? Returns the message ‘IP Addr The reply is followed by I/OK Note: This parameter may be omitted when Email, HTTP, FTP or Telnet servers are defined as IP addresses rather than symbolic names. ETEK R&D CO.,LTD 37 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.27 +iSMTP - Define SMTP Server Name Syntax: AT+iSMTP=server Permanently set the SMTP Server Name or IP. Parameters: server = An SMTP server name or IP address. Server names must be resolvable by the primary or alternate DNS. Command Options: server = '' name defined. server = <SMTP_SRVR> Empty: No server SMTP_SRVR will be used to locate and establish an SMTP connection when sending Email messages. If SMTP_SRVR is a symbolic name a DNS server will be used to resolve the IP address. Define +iSMA, +iSMU and +iSMP if the SMTP server requires authentication. Default: Empty. No SMTP server defined. To send Email messages, the SMTP server name must be defined ad-hoc. Scope: ETPro Series. Result code: I/OK I/ERROR If server is an empty or legal IP address or SMTP server name. Otherwise AT+iSMTP[p]~ server Temporarily set the SMTP server name to server. The permanent server name will be restored after completing the next session, both if the session was successful or not. AT+iSMTP[p]? Report the current SMTP server name. If a server name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iSMTP[p]=? Returns the message ‘String/IP’ The reply is followed by I/OK ETEK R&D CO.,LTD 38 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.28 +iSMA - SMTP Authentication Method Syntax: AT+iSMA=v Permanently set SMTP authentication method. Parameters: v = 0 or 1 Command Options: v=0 SMTP authentication will be disabled. v=1 ETPro will support the “AUTH LOGIN” SMTP authentication method, if forced by SMTP server. Default: 0 (SMTP authentication disabled) Scope: ETPro Series. Result code: I/OK I/ERROR if v = 0 or 1 otherwise AT+iSMA? Report the current value of the SMTP authentication method. The reply is followed by I/OK. AT+iSMA=? Returns the message "0-1. ETEK R&D CO.,LTD 39 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.29 +iSMU - Define SMTP Login User Name Syntax: AT+iSMU=user Permanently set Authenticated SMTP login User-Name. Parameters: user = User name to be used when logging on to an SMTP server that requires authentication (if SMA is set to a non zero value). Command Options: user='' Empty: No SMTP authentication user-name defined. user=<user-name> user-name will be used to login to an authenticated SMTP server. Default: Empty. No user-name defined. Scope: ETPro Series. Result code: I/OK I/ERROR If user is an empty or a legal SMTP login name. Otherwise AT+iSMU~user Temporarily set the SMTP login user name to user. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iSMU? Report the current SMTP login user-name. If the user-name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iSMU=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 40 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.30 +iSMP - Define SMTP Login Password Syntax: AT+iSMP =pass Permanently set authenticated SMTP login password. Parameters: logging on to an SMTP server that requires authentication. Command Options: pass='' Empty: No SMTP authentication password defined. pass=<password> user-name will be used to login to an authenticated SMTP server. Default: Empty. No user-name defined. Scope: ETPro Series. Result code: I/OK If user is an empty or a legal SMTP login name. I/ERROR Otherwise AT+iSMU~user Temporarily set the SMTP login user name to user. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iSMU? Report the current SMTP login user-name. If the user-name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iSMU=? Returns the message ‘String’. The reply is followed by I/OK ETEK R&D CO.,LTD 41 .. .. .. .. . 27.3.31 +iPOP3 - Define POP3 Server Name AT+I Programmer’s Manual V7.4a Syntax: AT+iPOP3=server Parameters: Permanently set the POP3 Server Name or IP. server = a POP3 server name or IP address. The server name must be resolvable by the primary or alternate DNS. Command Options: server = '' Empty: No server name defined. server = <POP3_SRVR> POP3_SR VR will be used to locate and establish a POP3 connection when sending Email messages. If POP3_SRVR is a symbolic name a DNS server will be used to resolve the IP address. Default: Empty. No POP3 server defined. To retrieve Email messages, a POP3 server name must be defined ad-hoc. Scope: ETPro Series. Result code: I/OK If server is empty or a legal IP address or POP3 server name. I/ERROR Otherwise AT+iPOP3[p]~ server Temporarily set the POP3 server name to server. The permanent server name will be restored after completing the next session, both if the session was successful or not. AT+iPOP3[p]? Report the current POP3 server name. If a server name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iPOP3[p]=? Returns the message ‘String/IP The reply is followed by I/OK ETEK R&D CO.,LTD 42 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.32 +iMBX - Define POP3 Mailbox Name Syntax: AT+iMBX=mailbox Permanently set mailbox name. Parameters: mailbox = Mailbox name to be used for Email retrieve. Command Options: mailbox ='' mailbox =<mbox-name> messages. Default: Empty: No mailbox name defined. mbox-name will be used to retrieve Email Empty. No mailbox defined. To retrieve Email messages, a mailbox name must be defined ad-hoc. Scope: ETPro Series. Result code: I/OK I/ERROR If mailbox is an empty or legal mailbox name. Otherwise AT+iMBX~mailbox Temporarily set the mailbox name to mailbox. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iMBX? Report the current mailbox name. If a mailbox name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iMBX=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 43 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.33 +iMPWD - Define POP3 Mailbox Password Syntax: AT+iMPWD=MBxPass Permanently set POP3 mailbox password. Parameters: MBxPass = Mailbox password to be used for authentication, when retrieving Email messages from the mailbox. Command Options: MBxPass ='' Empty: No mailbox password defined. MBxPass =<mbox -pass> mbox -pass will be used to authenticate receiver, when retrieving Email messages from the mailbox. Default: Empty. No mailbox password defined. To retrieve Email messages, the mailbox password must be defined ad-hoc. Scope: ETPro Series. Result code: I/OK I/ERROR If mbox -pass is an empty or legal mailbox password. Otherwise AT+iMPWD~ MbxPass Temporarily set the mailbox password to MBxPass. The permanent password will be restored after completing the next session, both if the session was successful or not. AT+iMPWD? Report the current mailbox password. The reported value will consist of '*' characters. The number of '*' characters shall reflect the number of characters in the actual password. If a mailbox password does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iMPWD=? Returns the message ‘String’. The reply is followed by I/OK ETEK R&D CO.,LTD 44 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.34 +iNTSn - Define Network Time Server Syntax:AT+iNT Sn=Server Permanently set the network timeserver name or IP. Use n=1 to define the primary timeserver. Use n=2 to define an alternate timeserver. Parameters: n = 1..2 Server = A network timeserver name or IP address. See Appendix C for a list of NIST Time servers. Command Options: Command Options: Server=’’ Empty. No Network Time Server defined. Server=<nts> The server name or IP address, nts, will be used to retrieve the current time-of-day – if the NTOD parameter is set to enable time-of-day retrieval. Current Time-of-Day will be returned in response to the RP8 command. Outgoing Email messages will be Time & Date stamped. Default: Empty. No Network Time Servers defined. Scope: ETPro Series. Result code: I/OK AT+iNT Sn~Server Temporarily set the Network Time Server to value Server. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iNTSn? Report the current value of NTSn. If NTSn is empty, an empty line containing only <CRLF> will be returned. The reply is followed by I/OK. AT+iNTSn=? Returns the message ‘String / IP Addr The reply is followed by I/OK. ETEK R&D CO.,LTD 45 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.35 +NTOD - Define Network Time-of-Day Activation Flag Syntax:AT+iNTOD=n Permanently set the Network Time-of-Day activation flag to n. Parameters: Command Options: disabled. n = 0 or 1 n = 0: Network Time retrieval from timeserver is n = 1: Network Time retrieval is enabled – ETPro will connect to the Time-Server and retrieve an updated time reading each time it connects to the network. From that point on, ETPro will maintain time internally. While ETPro is online, network time shall be refreshed every 2 hours. Current Time-of-Day will be returned in response to the RP8 command. Outgoing Email messages will be Time & Date stamped. Default: 0 (timeserver retrieval disabled) Scope: ETPro Series. Result code: I/OK AT+iNTOD~n Temporarily set the Network Tim-of-Day activation flag to value n. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iNTOD? Report the current value of the Network Time-of-Day activation flag. The reply is followed by I/OK. AT+iNTOD=? Returns the message ‘0-1’ The reply is followed by I/OK. ETEK R&D CO.,LTD 46 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.36 +iGMTO - Define Greenwich Mean Time Offset Syntax:AT+iGMTO=n Permanently set ETPro location’s Greenwich Mean Time Offset, in hours. Parameters: n = -12..12 Default: 0 Scope: ETPro Series. Result code: I/OK AT+iGMTO~n Temporarily set the Greenwich Mean Time Offset to value n. The permanent values will be restored after completing the next session, both if the session was successful or not. AT+iGMTO? Report the current value of GMTO. The reply is followed by I/OK. AT+iGMTO=? Returns the message ‘-12-+12’ The reply is followed by I/OK. ETEK R&D CO.,LTD 47 .. .. .. .. . 27.3.37 +iDSTD - Define Daylight-Savings-Transition Rule AT+I Programmer’s Manual V7.4a Syntax:AT+iDSTD =DST_rule Permanently set the Daylight-Savings-Time transition rule. Parameters: DST_rule ::= “<HH1.DD1.MM1>;<HH2.DD2.MM2>” Where, <HH1.DD1.MM1> indicates the date when Daylight Saving Time starts and <HH2.DD2.MM2> indicates the date when Daylight Saving Time ends. HHn ::= Full Hour (2 digits). DDn ::= Either specific day, or <F/L><Day of Week>. <F/L> ::= F = First, L = Last Day of the month. For example: FSun indicates the First Sunday of the month. <Day of Week> ::= {“Sun”, “Mon”, “Tue”, “Wed”, “Thu”, “Fri”, “Sat”}. MMn ::= Month. Command Options: DST_rule= ’’ Empty – no Daylight Saving Time definition is applied. DST_rule=<dst> Daylight Savings rule defined in dst will be applied to the time retrieved from the timeserver, when reporting the current time. Default: Empty. No Daylight Saving Time is applied. Scope: ETPro Series. Result code: I/OK AT+iDSTD ~DST_rule Temporarily set the Daylight Saving Time Definition to DST_rule . The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iDSTD? Report the current value of the Daylight Saving Time Definition. The reply is followed by I/OK. AT+iDSTD=? Returns the message ‘String’ The reply is followed by I/OK. ETEK R&D CO.,LTD 48 .. .. .. .. . 27.3.38 +iPDSn - Define PING Destination Server AT+I Programmer’s Manual V7.4a Syntax:AT+iPDSn=Server Permanently set the PING destination server name or IP. Use n=1 to define the primary destination server. Use n=2 to define the secondary destination server. Parameters: n = 1..2 Server = A network server name or IP address. Command Options: Server=’’ Empty. No PING destination Server defined. Server=<nps> The server name or IP address, nps, will be PING’ed in order to verify ETPro’s online status, when ETPro is in “Always Online” mode. If the primary server does not respond, ETPro will try the secondary server (if it exists). When both servers do not respond to PING requests, ETPro will retry to establish the connection by going offline and then online again. Default: Empty. No PING destination Servers defined. Scope: ETPro Series. Result code: I/OK AT+iPDSn~Server Temporarily set the PING destination server to value Server. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iPDSn? Report the current value of PDSn. If PDSn is empty, an empty line containing only <CRLF> will be returned. The reply is followed by I/OK. AT+iPDSn=? Returns the message ‘String / IP Addr The reply is followed by I/OK. ETEK R&D CO.,LTD 49 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.39 +iPFR - PING Destination Server, Polling Frequency Syntax: AT+iPFR=n Permanently set the time interval, in seconds, upon which ETPro will issue a PING request to one of the PING destination servers. Parameters: n = 0..65535 [seconds] Command Options: Default: 0 (Disabled PING polling) Scope: ETPro Series. Result code: AT+iPFR~n I/OK If n is within limits. I/ERROR Otherwise Temporarily set the PING polling interval value for one session. The permanent value will be restored after completing the next session, both if the session was successful or not AT+ iPFR? Report the current PING polling interval used. The reply is followed by I/OK. AT+iPFR=? Returns the message "0-65535" The reply is followed by I/OK. ETEK R&D CO.,LTD 50 .. .. .. .. . 27.3.40 +iUFn - User Fields & Macro Substitution AT+I Programmer’s Manual V7.4a Syntax: AT+iUFn=<String> Parameters: Command Options String=’’ String=<Str> Permanently set User-Field n. n = 01..12 String = Parameter string-value. Empty User Field. Str is stored in the specified User Field. A User-Field may be used for general-purpose storage. In addition, a User Field may be used as a macro replacement, wherever an AT+i Command <parameter> is allowed: The ‘#’ character is used to prefix the UFn parameter to define indirection. When used, the value of the User-Field will be substituted in the command, before the command is processed. #UF01 -- #UF12 are allowed. For example: Given: Issuing: Is equivalent to: AT+iUF01=ftp.domain.com AT+iFOPN:#UF01:anonymous,myemail@domain.com AT+iFOPN:ftp.domain.com:anonymous,myemail@do main.com The advantage of this being that the FTP server may be specified dynamically by changing the UF01 parameter without requiring a change in the AT+iFOPN command Default: Scope: Result code: Empty. No User-Field value defined. ETPro Series. I/OK AT+iUFn~<String> Temporarily set User-Field n to value String.The permanent valuewill be restored after completing the next session, both if the session was successful or not. AT+iUFn? ETEK R&D CO.,LTD Report the current value of UFn. If the User Field is empty, an empty line containing only <CR/LF> will be returned. The reply is followed by I/OK. 51 .. .. AT+iUFn=? .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD Returns the message ‘String’ The reply is followed by I/OK. 52 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.41 +iXFH - Transfer Headers Flag Syntax:AT+iXFH=v Permanently set ‘Transfer Headers Flag’ to v. Parameters: v = 0 or 1 Command Options: v=0 Retrieve only Email body - No headers. BASE64 MIME attachments will be decoded by ETPro, on the fly. v=1 Retrieve Email headers with Email body. Attachments shall not be decoded. Default: 1 Scope: ETPro Series Result code: I/OK I/ERROR If v = 0 or 1 Otherwise AT+iXFH~v Temporarily set the ‘Transfer Headers Flag’ to v for the duration of the next session. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iXFH? Report the current value of the ‘Transfer Headers Flag’. The reply is followed by I/OK. AT+iXFH=? Returns the message "0-1 The reply is followed by I/OK ETEK R&D CO.,LTD 53 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.42 +iHDL - Limit Number of Header Lines Syntax: AT+iHDL=n Permanently set maximum number of header lines to retrieve. Parameters: Default: Scope: Result code: I/OK I/ERROR AT+iHDL~n . AT+iHDL? n = 0 – 255 0 (no limit) ETPro Series. If n is within limits Otherwise Temporarily set the maximum limit of header lines for the duration of the next session. The permanent value will be restored after completing the next session, both if the session was successful or not Report the current value of the header line limit. The reply is followed by I/OK . AT+iHDL=? ETEK R&D CO.,LTD Returns the message "0-255" The reply is followed by I/OK 54 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.43 +iFLS - Define Filter String Syntax:AT+iFLS=str Permanently set a filter string . Parameters: str = ASCII string which qualifies an Email message to be listed or retrieved by the ETPro. This string must exist in the Email header for the message to qualify. If the string does not exist, the message will be ignored. Default: Empty. Filter disabled. Scope: ETPro Series. Result code: I/OK I/ERROR If str is an empty or legal filter string. Otherwise AT+iFLS~f/string Temporarily set the filter string to f/string The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iFLS? Report the current value of the filter string. If no filter is defined, only <CRLF> will be returned. The reply is followed by I/OK. AT+iFLS=? Returns the message ‘String’ The reply is followed by I/OK. ETEK R&D CO.,LTD 55 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.44 +iSBJ - Email Subject Field Syntax:AT+iSBJ:subject Permanently set Email header ‘Subject:’ field. Parameters: subject = Contents of subject field. Command Options: subject='' subject=<subject string> Empty string. ‘Subject:’ Field in Email header will be left empty. The ‘Subject:’ field in the Email header will contain subject string Default: Empty. Scope: ETPro Series. Result code: I/OK I/ERROR If subject is an empty or legal string. Otherwise AT+iSBJ ~subject Temporarily set the contents of the ‘Subject:’ field of the next Email to be sent. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iSBJ? Report the current contents of the ‘Subject:’ parameter. If no subject is defined, only <CRLF> will be returned. The reply is followed by I/OK. AT+iSBJ=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 56 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.45 +iTOA - Define Primary Addressee Syntax: AT+iTOA[n]=Email@ Permanently set Email addressee. Parameters: Email@ = Email addressee. This is the default Email addressee, which will be used to direct Email messages sent by the ETPro series. n = optional index of addressee. When n is not specified TOA00 (primary addressee) is used. Command Options: Email@='' Default: Scope: Empty address: No addressee defined. Email@=<addr> addr will be used as a destination address for future Email SEND commands (+iEMA, +iEMB).01..50Empty. No addressee defined. ETPro Series.Temporarily set the Email addressee to add. The permanent value will be restored after completing the next session, both if the session was successful or not. Empty. No addressee defined. ETPro Series. Result code: I/OK AT+iTOA[n]~<add> Temporarily set the Email addressee to add. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iTOA[n]? Report the current value of the Email addressee. If the addressee does not exist, an empty line containing only <CRLF> will be returned. The reply is followed by I/OK. AT+iTOA[n]=? Returns the message ‘String’ ETEK R&D CO.,LTD 57 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD The reply is followed by I/OK. 58 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.46 +iTO - Email 'To' Description/Name Syntax:AT+iTO:to Permanently set Email header 'To:' description . Parameters: to = Contents of 'To:' description/name field. Command Options: to ='' Empty string. to =<to_str> The 'To:' description field in the Email header will contain to_str. Default: Empty. Scope: ETPro Series. Result code: I/OK I/ERROR If to is an empty or legal string. Otherwise AT+iTO~to Temporarily set the contents of the 'To:' description field of the next Email to be sent. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iTO? Report the current contents of the to parameter. If the to parameter is empty, only <CRLF> will be returned. The reply is followed by I/OK. AT+iTO=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 59 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.47 +iREA - Return Email Address Syntax: AT+iREA=Email@ Permanently set the Return Email Address. This is the Email address that will be used when replying to this Email. Parameters: Email@ = Email addressee. Command Options: Email@='' Empty address: No return address defined. Email@=<addr> addr will be used as the return Email address. Default: Empty. No return Email address defined. The return Email address will be defined ad-hoc. Scope: ETPro Series. Result code: I/OK AT+iREA~<addr> Temporarily set the return Email address to addr. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iREA? Report the current value of the return Email address. If the return Email address does not exist an empty line containing only <CRLF> will be returned. The reply is followed by I/OK. AT+iREA=? ETEK R&D CO.,LTD Returns the message ‘String’ The reply is followed by I/OK 60 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.48 +iFRM - Email 'From' Description/Name Syntax:AT+iFRM :from Permanently set Email header 'From:' description. Parameters: from = Contents of 'From:' description field. Command Options: from='' from=<from string> Empty string. The 'From:' description field in the Email header will contain from string. Default: Empty. Scope: ETPro Series. Result code: I/OK I/ERROR If from is an empty or legal string. Otherwise AT+iFRM ~from Temporarily set the contents of the 'From:' description field of the next Email to be sent. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iFRM? Report the current contents of the from parameter. If the from parameter is empty, only <CRLF> will be returned. The reply is followed by I/OK. AT+iFRM=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 61 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.49 +iCCn - Define Alternate Addressee <n> Syntax:AT+iCCn=Email@ Permanently set alternative addressee. Parameters: n = 1..4 Email@ = Email addressee. This is the Email address, which will be used to copy Email messages sent by the ETPro to the primary addressee list. Command Options: Email@='' Empty address: Alternate addressee n not defined. Email@=<addr> addr will be used as alternate Email addressee n. Default: Empty. No alternate addressees defined. Scope: ETPro Series. Result code: I/OK AT+iCCn~<addr> Temporarily set alternate addressee n to addr. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iCCn? Report the current value of alternate addressee n. If the alternate addressee does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iCCn=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 62 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.50 +iMT - Media Type Value Syntax:AT+iMT=type Parameters: Permanently set the media type used for generating Email messages with a MIME encapsulated attachment. type = Media type. Command Options: type= 0..4type will be used as the media type: 0 – text 1 – image 2 – audio 3 – video 4 -- application Default: 4 (application) Scope: ETPro Series. Result code: I/OK I/ERROR If type is in the range: 0..4 Otherwise AT+iMT~type Temporarily set the media type. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iMT? Report the current media type value. The reply is followed by I/OK. AT+iMT=? Returns the message “0-4” The reply is followed by I/OK ETEK R&D CO.,LTD 63 .. .. .. .. . 27.3.51 +iMST - Media Subtype String AT+I Programmer’s Manual V7.4a Syntax:AT+iMST=str Parameters: Command Options: str='' Empty: str=<string> Permanently set the media subtype string used for generating Email messages with a MIME encapsulated attachment. str = Media subtype string. No media subtype string defined, the default will be used. string will be used as the media subtype string. A list of subtype strings is detailed in appendix A. Default: ‘octet-stream’ Scope: ETPro Series. Result code: I/OK I/ERROR If str is an empty or a legal media subtype string. Otherwise AT+iMST~str Temporarily set the media subtype string to str. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iMST? Report the current media subtype string. If the string is empty, only <CRLF> will be returned. The reply is followed by I/OK. AT+iMST=? ETEK R&D CO.,LTD Returns the message ‘String’ The reply is followed by I/OK. 64 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.52 +iFN - Attachment File Name Syntax:AT+iFN =fname Permanently set the attachment file name string used for generating Email messages with a MIME encapsulated attachment. Parameters: fname = Attachment file name. Command Options: fname ='' Empty: No file name string defined, the default will be used. fname=<str> str will be used as the file name string when constructing a MIME attachment. The file name should be complete with an explicit extension. Default: ETPro generated unique filename, without an extension. Scope: ETPro Series. Result code: I/OK If fname is an empty or a legal file name string. I/ERROR Otherwise AT+iFN ~fname Temporarily set the file name string to fname. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iFN? Report the current file name string. If the filename is empty, only <CRLF> will be returned. The reply is followed by I/OK. AT+iFN=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 65 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.53 +iURL - Default URL Address Syntax: AT+iURL=URLadd Permanently set the URL address string used for downloading Web pages and files. Parameters: URLadd = URL address string. Command Options: URLadd ='' Empty: No URL address string defined. URLadd =<str> str will be used as the URL address string when downloading a Web page or file. The URL address format is: <Protocol>://<host>[[:<port>]/[<absolute_link> ]/] Where, <protocol> -- HTTP <host> -- Web Server Name: IP address or server name resolved by DNS. <port> -- Port number on server. Default: 80. <absolute link> -- Absolute path name of Web page or file on server. Default: None. Scope: ETPro Series. Result code: I/OK I/ERROR If URLadd is an empty or a legal URL address string. Otherwise AT+iURL~URLadd Temporarily set the URL address string to URLadd. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iURL? Report the current URL address string. If the URL address is empty, only <CRLF> will be returned. The reply is followed by I/OK. AT+iURL=? ETEK R&D CO.,LTD Returns the message ‘String’ The reply is followed by I/OK. 66 .. .. .. .. . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD 67 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.54 +iWPWD – Password for Application Website Authentication Syntax: AT+iWPWD =Pass Permanently set the application Website’s remote parameter update Password. Parameters: Pass = Password to be used for authentication, when accepting application Website parameter updates from a remote Web browser. Command Options: Pass ='' Empty: Remote application Website parameter updates over the Web are effectively Disabled. Pass =<password> password will be used to restrict application Website parameter updates via a remote Web browser. Pass =”*” A password will not be required to authenticate application Website parameter updates via the Web. Effectively unrestricting remote parameter updates. Default: Empty. No Password defined. Application Website parameter updates via a remote browser are fully restricted. Scope: ETPro Series. Result code: I/OK I/ERROR If pass is an empty or legal Password Otherwise AT+iWPWD ~pass Temporarily set the application Website parameter Update Password to pass. The permanent Password will be restored after completing the next session, both if the session was successful or not. AT+iWPWD? Report the current Password. If a Password does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iWPWD=? ETEK R&D CO.,LTD Returns the message ‘String The reply is followed by I/OK. 68 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.55 +iRAR - RAS RINGs Syntax: AT+iRAR=n Permanently set the number of RINGs that will activate ETPro’s internal RAS, if RAU is not empty. Parameters: Command Options: n= + 100 n = number of RINGs ETPro will detect before answering an incoming call and activating its internal RAS. If n is set to a value greater than 100 and an incoming call is picked up by the host or the modem after less than n-100 RINGs, ETPro will activate its internal RAS. The RAS server will negotiate a PPP connection if a ‘~’ is received as the first character from the modem after the CONNECT line to indicate a PPP packet. Otherwise, ETPro will revert to transparent mode communications, allowing the host to conduct direct modem to modem data transfer. 2 .. 20 Add 100 to any RAR value to force ETPro to activate its internal RAS even if the call was picked up by the host or the modem (if a ‘~’ is received as the first character from the modem after the CONNECT line to indicate a PPP packet). Default: n=4 Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iRAR? Returns RAR’s current value The reply is followed by I/OK. AT+iRAR=? Returns the message "2-20" The reply is followed by I/OK. ETEK R&D CO.,LTD 69 .. .. .. .. . 27.3.56 +iRAU - Define RAS Login User Name AT+I Programmer’s Manual V7.4a Syntax: AT+iRAU=user Parameters: Command Options: user ='' user = user =”*” Permanently set RAS login User-Name. user = User name to be used for authentication when accepting a call from a PPP client connecting to ETPro’s internal RAS. Empty: ETPro’s internal RAS is effectively disabled. < user-name> user-name will be used to establish login rights of a remote PPP client connection to ETPro’s internal RAS. A user-name will not be required to authenticate a remote PPP client connection to ETPro’s internal RAS. Effectively unrestricting remote access. Default: Empty. ETPro’s internal RAS is effectively disabled. Scope: ETPro Series. Result code: I/OK I/ERROR If user is an empty or a legal login user name. Otherwise AT+iRAU~user Temporarily set the RAS login user name to user. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iRAU? Report the current RAS login user-name. If the user-name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iRAU=? Returns the message ‘String’ The reply is followed by I/OK ETEK R&D CO.,LTD 70 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.57 +iRAP – Password for RAS Authentication Syntax: AT+iRAP=Pass Permanently set the RAS Password. Parameters: Pass = Password to be used for login authentication, when accepting a call from a PPP client connecting to ETPro’s internal RAS. Command Options: Pass ='' or Pass= ”* ” Pass =<password> A password will not be required to authenticate a remote PPP client connection to ETPro’s internal RAS. password will be used to restrict access of a remote PPP client connection to ETPro’s internal RAS. Default: Empty. No Password defined. Scope: ETPro Series. Result code: I/OK I/ERROR If pass is an empty or legal Password Otherwise AT+iRAP ~pass Temporarily set the RAS password to pass. The permanent Password will be restored after completing the next session, both if the session was successful or not. AT+iRAP? Report the current RAS Password. If a Password does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iRAP=? Returns the message ‘String’ The reply is followed by I/OK. ETEK R&D CO.,LTD 71 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.63 +iHSRV - Host Server Name/IP Syntax: AT+iHSRV =server_name:port Permanently set the host server-name or IP and port number to be used in SerialNET mode. Parameters: server_name = A server name or IP address. Server names must be resolvable by the primary or alternate DNS. port = 0..65535 Command Options: server_name='' Empty: No server name defined. Serial data transmitted from device in SerialNET mode will be ignored until a remote client accesses ETPro. server_name=<server> server will be used in SerialNET mode to locate and establish a connection when serial data is transmitted from the device. The server name may be any legal Internet-server name, which can be resolved by the ETPro’s DNS (Domain Name Server) settings. The server name may also be specified as an absolute IP address given in DOT form. port=<port number> It is assumed that the host server is "listening" on port number. Defaul; Empty Scope: ETPro Series. Result code: I/OK I/ERROR AT+iHSRV? ETEK R&D CO.,LTD If server_name is an empty or legal server name and port is within limits. otherwise Report the current host server and port as: <server>:<port>. If a server name does not exist only <CRLF> will be returned. The reply is followed by I/OK. 72 .. .. .. .. .AT+iHSRV=? AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD Returns the message ‘Name/IP:Port’. The reply is followed by I/OK. 73 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.64 +iDSTR - Define Disconnection String for SerialNET Mode Syntax: AT+iDSTR: disconnect_string Permanently set SerialNET device disconnection string. In a modem environment the ETPro will also go offline, following this event. Parameters: disconnect_string = string expected on serial link to signal socket disconnection. Command Options: disconnect_string= '' Empty string – The connection will never be terminated due to a string arriving on serial link. disconnect_string=<string> string received on serial link will signal socket disconnection. string is composed any mix of printable ASCII characters and characters represented by 2 hexadecimal digits as: \xhh, where h is a hexadecimal digit 0..9 or A..F. Hexadecimal representation allows specifying non-printable characters. Default: Empty. Scope: ETPro Series. Result code: I/OK I/ERROR If disconnect_string is an empty or legal string Otherwise AT+iDSTR? Report the current contents of the disconnect_string parameter. If the disconnect_string parameter is empty, only <CRLF> will be returned. The reply is followed by I/OK. AT+iDSTR=? Returns the message ‘String’ The reply is followed by I/OK. ETEK R&D CO.,LTD 74 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.65 +iLPRT - SerialNET Device Listen Port Syntax: AT+iLPRT=n Permanently set the port number on which ETPro will listen for client connections in SerialNET mode. Parameters: n = 0 – 65535 Default: 0 (no port) Scope: ETPro Series. Result code: I/OK I/ERROR if n is within limits otherwise AT+iLPRT? Report the current value of the SerialNET device listen port. The reply is followed by I/OK. AT+iLPRT=? Returns the message "0-65535" The reply is followed by I/OK. ETEK R&D CO.,LTD 75 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.66 +iRRMA -IP Registration Mail Address Syntax: AT+iRRMA= Email@ Permanently set the ring-response addressee. Parameters: Email@ = Email addressee. This addressee will receive a registration Email message after ETPro establishes an Internet session connection. The Email will contain the ETPro’s ID and dynamically assigned IP address, in ASCII form. See Email IP Registration. Command Options: Email@ ='' Empty address: No Email will be sent after ETPro goes online. Email@ =<addr > addr will be used as the IP registration Email addressee. Default: Empty. Scope: ETPro Series. Result code: I/OK AT+iRRMA? Report the current value of the IP registration addressee. If the IP registration addressee does not exist, an empty line containing only <CR/LF> will be returned. The reply is followed by I/OK. AT+iRRMA=? Returns the message ‘String’. The reply is followed by I/OK. ETEK R&D CO.,LTD 76 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.67 +iRRSV - Ring Response Host Server Name Syntax: AT+iRRSV=server_name:port Permanently set the IP registration server-name or IP and port number to be used in SerialNET mode. Parameters: server_name = A server name or IP address. Server names must be resolvable by the primary or alternate DNS. Command Options: server_name='' Empty: No IP registration server name defined. server_name=<ip_registration_server> ip_registration _server will be used to locate and establish a connection after ETPro establishes an Internet session connection. The dynamically assigned IP address will be sent to the server in ASCII form, after which the socket will be closed. See Socket IP Registration. port=<port number> It is assumed that the host server is "listening" on port number. Default: Empty. No server defined. Scope: ETPro Series. Result code: I/OK I/ERROR AT+iRRSV? AT+iRRSV=? ETEK R&D CO.,LTD if ring_response_server is an empty or legal server name and port is within limits. otherwise Report the current IP registration server name and port number. If a server name does not exist only <CR/LF> will be returned. The reply is followed by I/OK. Returns the message ‘Name/IP:Port’. The reply is followed by I/OK. 77 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.68 +iRRWS - Ring Response Web Server Syntax:AT+iRRWS=url Permanently set the IP registration Web server URL. Parameters: url = The Web Server URL to use for registration after going on-line. Command Options: url = ‘’ Empty: No IP registration URL defined url = <Reg_URL> Reg_URL will be used to dynamically register ETPro’s IP and Port after going online. See Web Server IP Registration Default: Empty. No Registration Web server defined. Scope: ETPro Series. Result code: I/OK I/ERROR if Reg_URL is an empty or legal URL string otherwise AT+iRRWS Report the current IP registration Web server URL. If a URL does not exist only <CR/LF> will be returned. The reply is followed by I/OK. AT+iRRWS=? Returns the message “String” The reply is followed by I/OK. ETEK R&D CO.,LTD 78 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.69 +iRRRL - Ring Response Return Link Syntax:AT+iRRRL =IP[:Port] Permanently set the IP registration Return Link IP and Web Port. Parameters: IP = IP address to use for registration after going on-line. Port = Port number to assign to ETPro’s Web server. See description of RRRL when registering IP. Command Options: IP = 0.0.0.0 IP = <IP_add> Empty: No Return Link defined. IP_addr will be used when registering after establishing an Internet session, rather than the ETPro’s actual local IP address. This is useful when the ETPro receives an internal IP address behind a NAT. Assigning the NAT’s IP address to IP_addr will allow reaching the ETPro from the Internet. In SerialNET the LPRT parameter may be pre-configured in the NAT to connect to the ETPro device. See SerialNET Server Devices. Port = Web_port Optional port to map ETPro’s Web server in order to allow surfing ETPro across a NAT in association with IP_addr. Default: Scope: Result code: I/OK port number. I/ERROR 0.0.0.0. No return link IP and Port defined. ETPro Series. if IP is a legal IP address and Port is a legal IP otherwise AT+iRRRL? Report the current return link IP and port. The reply is followed by I/OK. AT+iRRRL=? Returns the message “Name/IP[:Port]”. The reply is followed by I/OK. ETEK R&D CO.,LTD 79 .. .. .. .. . 27.3.70 +iHSTN – ETPro Host Name AT+I Programmer’s Manual V7.4a Syntax: AT+iHSTN=host Permanently set the ETPro’s Network Host Name. Parameters: host = Symbolic Host Name string. Command Options: host = ’’ Empty: Do not attempt to register a symbolic host name. If the ETPro is already registered in the DNS, the symbolic name will typically be cleared only after the last DHCP lease, assigned to this ETPro, has expired. host = <NAME > NAME will be included in all IP registration method formats. Default: Empty. No network host name defined. Scope: ETPro Series. Result code: I/OK I/ERROR If host is empty or a string Otherwise AT+iHSTN? Report the current host name. The reply is followed by I/OK. AT+iHSTN=? Returns the message ‘string The reply is followed by I/OK. ETEK R&D CO.,LTD 80 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.71 +iMBTB - Max Bytes To Buffer Syntax: AT+iMBTB=n Permanently set max bytes to buffer while the ETPro is establishing an Internet connection. Parameters: n = number of bytes to buffer while establishing the connection in SerialNET mode. Command Options: n = 0 . 2048 Default: Scope: Result code: I/OK I/ERROR AT+iMBTB? AT+iMBTB=? ETEK R&D CO.,LTD 0 – No Buffering ETPro Series. If n is within limits. Otherwise Report the current setting of max bytes to buffer. The reply is followed by I/OK. Returns the message "0-2048" The reply is followed by I/OK. 81 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.72 +iMTTF - Max Timeout To Socket Flush Syntax: AT+iMTTF=n Permanently set max inactivity timeout before flushing the SerialNET socket. Parameters: n = number of milliseconds of inactivity on serial link to signal socket flush in SerialNET mode. Command Options: n = 0 .. 65535 Default: 0 – No timeout Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iMTTF? Report the current timeout before SerialNET socket flush in milliseconds. The reply is followed by I/OK. AT+iMTTF=? Returns the message "0-65535" The reply is followed by I/OK. ETEK R&D CO.,LTD 82 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.73 +iFCHR - Flush Character Syntax: AT+Ifchr =flush_chr Permanently set flush character in SerialNET mode. Parameters: flush_chr = character received on serial link to signal socket flush in SerialNET mode. Command Options: flush_chr = ‘’ Empty: No Flush character defined. The SerialNET socket will not be flushed as a result of receiving a special flush character. flush_chr = ‘a’–‘z’|‘A’–‘Z’|‘0’–‘9’|<hex_char> where, <hex_char> = \x<hh> <hh> = 00-FF Default: Empty – No flush character defined Scope: ETPro Series. Result code: I/OK representation I/ERROR If flush_chr is empty or a legal character Otherwise AT+iFCHR? Report the current flush character. The reply is followed by I/OK. AT+iFCHR=? Returns the message ‘String’ The reply is followed by I/OK. ETEK R&D CO.,LTD 83 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.74 +iMCBF - Maximum Characters Before Socket Flush Syntax: AT+iMCBF=n Permanently set max number of characters before flushing the SerialNET socket. Parameters: n = maximum number of characters received on the serial link before flushing the SerialNET socket. Command Options: n = 0 .. 1460 Default: 0 – No timeout Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iMCBF? AT+iMCBF=? ETEK R&D CO.,LTD Report the current maximum number of characters before flushing the SerialNET socket. The reply is followed by I/OK. Returns the message "0-1460" The reply is followed by L/OK. 84 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.75 +iIATO - Inactivity Timeout Syntax: AT+iIATO=n Permanently set maximum inactivity timeout in seconds to signal socket disconnection in SerialNET mode. When signaled, ETPro will close the connected SerialNET communication socket. In a modem environment the ETPro will also go offline, following this event. Parameters: n = number of seconds of inactivity, on a connected SerialNET socket, to signal socket disconnection. Command Options: n = 0 .. 32768 When ETPro is in Server SerialNET mode (LPRT defined) and it goes online, in response to a triggering event: RING signal, MMSEL/LMSEL signal pulled low or AT+I! SNMD -- timeout calculation commences only after the ETPro opens the Listen port. When the Web server is activated (using AWS=1), an external reference to the Web server will restart the IATO timeout calculation. Default: 0 – No timeout limit Scope: ETPro Series Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iIATO? Report the current inactivity timeout in seconds to signal socket disconnection in SerialNET mode. The reply is followed by I/OK. AT+iIATO=? Returns the message "0-32768 The reply is followed by I/OK. ETEK R&D CO.,LTD 85 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.76 +iSNSI - SerialNET Device Serial Interface Syntax:AT+iSNSI=settings _str Permanently set serial interface settings for SerialNET mode. Parameters: settings _str = Serial link settings in SerialNET mode. Command Options: settings _str=”<baud>,<data_bits>,<parity>,<stop_bits>,<flow>” where, <baud> = 0..9 <data_bits> =7|8 <parity> =N|E|O <stop_bits> =1 <flow> =0|1 The following table summarizes supported baud rates: Baud Baud Code Baud Rate Code Baud Rate 0 300 5 9600 1 600 6 19,200 2 1200 7 38400 3 2400 8 57600 4 4800 9 115200 Default: “5,8,N,1,0” – baud rate 9600bps, 8 bits, No parity, 1 stop bit, no flow control. Scope: ETPro Series. Result code: I/OK I/ERROR If settings _str is a valid serial link setting string Otherwise AT+iSNSI? Report the current serial settings string. The reply is followed by I/OK. AT+iSNSI=? Returns the message "String" The reply is followed by I/OK. ETEK R&D CO.,LTD 86 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.77 +iSTYP - SerialNET Device Socket Type Syntax:AT+iSTYP=v Permanently set SerialNET socket type to v. Parameters: v = 0 or 1 Command Options: v=0 TCP v=1 UDP Default: 0 (TCP) Scope: ETPro Series. Result code: I/OK I/ERROR if v = 0 or 1 otherwise AT+iSTYP? Report the current value of the SerialNET socket type. The reply is followed by I/OK. AT+iSTYP=? Returns the message "0-1" The reply is followed by I/OK. ETEK R&D CO.,LTD 87 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.78 +iSNRD - SerialNET Device Re-initialization Delay Syntax:AT+iSNRD=n Permanently set SerialNET mode re-initialization delay in seconds. Parameters: n = number of seconds ETPro will pause before reinitializing SerialNET mode after a failed attempt to establish a socket connection to the peer or a connection related fatal error. A new SerialNET connection will only be attempted after SerialNET re-initializes. The SNRD delay will not be in effect as a result of an Escape Sequence (‘+++’). Command Options: n = 0 .. 3600 Default: 0 – No delay Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iSNRD? Report the current SerialNET re-initialization delay in seconds. The reply is followed by I/OK. AT+iSNRD=? Returns the message "0-3600" The reply is followed by I/OK. ETEK R&D CO.,LTD 88 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.79 +iSPN - SerialNET Server Phone Number Syntax: AT+iSPN=number Permanently set the SerialNET phone number to use to wake up a remote SerialNET server. Parameters: number = Telephone number to use to dial up a remote SerialNET server in order to wake it up and activate its preprogrammed Ring-Response procedures. The SerialNET client will attempt RDL redials. During each dialup attempt it will wait for SDT seconds before hanging up. Command Options: number = Telephone number string, composed of digits, ‘,’, '-', 'W', 'w', '*', '#', '!' or ' '. See description of the standard ATD command. Note: If a character that is defined as a Delimiter is used within the dial string, the string must be entered between apostrophes. Default: Empty – Do not attempt to wake up a remote SerialNET server. Scope: ETPro Series. Result code: I/OK I/ERROR If number is a legal phone number string. Otherwise AT+iSPN? Report the current SerialNET wakeup telephone number. The reply is followed by I/OK. AT+iSPN=? Returns the message “Phone #" The reply is followed by I/OK. ETEK R&D CO.,LTD 89 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.80 +iSDT - SerialNET Dialup Timeout Syntax: AT+iSDT=n Permanently set the SerialNET Dial timeout when waking up a remote SerialNET server. Parameters: Command Options: n = Number of seconds to allow after dialing up the remote SerialNET server, before hanging up. n = 0..255 [seconds]. Default: 20 [seconds]. Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iSDT? Report the current SerialNET dial timeout. The reply is followed by I/OK. AT+iSDT=? Returns the message "0-255" The reply is followed by I/OK. ETEK R&D CO.,LTD 90 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.81 +iSWT - SerialNET Wakeup Timeout Syntax: AT+iSWT=n Permanently set the SerialNET Wakeup timeout when waking up a remote SerialNET server. Parameters: n = Number of seconds to allow the entire SerialNET server wakeup procedure, before hanging up and retrying. Command Options: n = 0..65535 [seconds]. Default: 600 [seconds]. Scope: ETPro Series. Result code: I/OK I/ERROR If n is within limits. Otherwise AT+iSWT? Report the current SerialNET Wakeup timeout. The reply is followed by I/OK. AT+iSWT=? Returns the message “0-65535” The reply is followed by I/OK. ETEK R&D CO.,LTD 91 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.82 +iPTD - SerialNET Packets To Discard Syntax:AT+iPTD=n Set the number of packets to be cyclically discarded in a SerialNET mode session. A packet is defined as the group of characters received on the serial link, meeting one (or more) of the socket flush conditions defined (+iFCHR, +iMTTF, +iMCBF). Parameters: Default: n = 0 – 65535 0 – No packet filtering. All data is transferred. Scope: ETPro Series. Result code: I/OK I/ERROR if n is within limits. otherwise AT+iPTD? ETEK R&D CO.,LTD Report the current value. The reply is followed by I/OK. 92 .. .. .. ..AT+iPTD=? . AT+I Programmer’s Manual V7.4a ETEK R&D CO.,LTD Returns the message "1-65535" The reply is followed by I/OK 93 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.83 +iUEN - Email Firmware Update Enable Syntax: AT+iUEN=v Permanently set the ‘Email Firmware Update’ flag to v. Parameters: Command Options: v=0 v=1 v = 0 or 1 Disable Email Firmware Update during a normal AT+iRMM mail retrieve session. Enable Email Firmware Update. The ETPro Series will monitor and invoke a firmware update procedure, if an appropriate mail message is found during an AT+iRMM session. Default: 0 (Disable) Scope: ETPro Series. Result code: I/OK I/ERROR If v = 0 or 1 Otherwise AT+iUEN~v Temporarily set the ‘Email Firmware Update’ flag to v for the duration of the next session. The permanent value will be restored after completing the session, both if the session was successful or not. AT+iUEN? Report the current value of the ‘Email Firmware Update’ flag. The reply is followed by I/OK. AT+iUEN=? Returns the message "0-1" The reply is followed by I/OK ETEK R&D CO.,LTD 94 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.84 +iUMBX -Define Dedicated Firmware Update Mailbox Name Syntax: AT+iUMBX=mailbox Permanently set the dedicated firmware update mailbox name. Parameters: mailbox = Mailbox name to be used for Email firmware update initiated by the AT+iRFU command. Command Options: mailbox ='' Empty: No mailbox name defined. mailbox =<mbox-name> mbox-name will be used to retrieve Email firmware updates. Default: Empty. No dedicated firmware update mailbox defined. When retrieving an Email firmware update the MBX, POP3 and MPWD parameters will be used instead Scope: ETPro Series. Result code: I/OK I/ERROR If mailbox is an empty or legal mailbox name. Otherwise AT+iUMBX~mailbox Temporarily set the firmware update mailbox name to mailbox. The permanent value will be restored after completing the next session, both if the session was successful or not. AT+iUMBX? Report the current firmware update mailbox name. If a mailbox name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iUMBX=? Returns the message ‘String’ The reply is followed by I/OK. ETEK R&D CO.,LTD 95 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.85 +iUPOP - Define Dedicated Firmware Update POP3 Server Name Syntax: AT+iUPOP=server Permanently set the firmware update POP3 server-name. Parameters: server = a POP3 server name or IP address. The server name must be resolvable by the primary or alternate DNS. Command Options: server =0.0.0.0 server =<SER VER> SERVER will be used to locate and establish a POP3 connection when retrieving an Email firmware update. Default: Empty. No UPOP server defined. When retrieving an Email firmware update the POP3 parameter will be used instead. Scope: ETPro Series. Result code: I/OK I/ERROR If server is empty or a legal IP address or POP3 server name. Otherwise AT+iUPOP~server Temporarily set the UPOP server name to server. The permanent server name will be restored after completing the next session, both if the session was successful or not. AT+iUPOP? Report the current UPOP server name. If a server name does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iUPOP=? Returns the message ‘String/IP’ The reply is followed by I/OK. ETEK R&D CO.,LTD 96 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.86 +iUMPW - Define Dedicated Firmware Update Mailbox Password Syntax: AT+iUMPW = MBxPass Permanently set the dedicated firmware update mailbox password. Parameters: MBxPass = Mailbox password to be used for authentication, when retrieving Email firmware updates from the UMBX mailbox. Command Options: MBxPass ='' Empty: No mailbox password defined. MBxPass =<mbox -pass> mbox -pass will be used to authenticate receiver, when retrieving Email firmware pdates. Default: Empty. No mailbox password defined. When retrieving an Email firmware update the MPWD parameter will be used instead. Scope: ETPro Series. Result code: I/OK I/ERROR If MBxPass is an empty or legal mailbox password Otherwise AT+iUMPW~ MbxPass Temporarily set the firmware update mailbox password to MBxPass. The permanent password will be restored after completing the next session, both if the session was successful or not. AT+iUMPW? Report the current mailbox password. The reported value will consist of '*' characters. The number of '*' characters shall reflect the number of characters in the actual password. If a mailbox password does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iUMPW=? Returns the message ‘String’ The reply is followed by I/OK. ETEK R&D CO.,LTD 97 .. .. .. .. . AT+I Programmer’s Manual V7.4a 27.3.87 +iRPG – Remote Parameter Update Group/Password Syntax: AT+iRPG=GroupPass Permanently set the remote Parameter update Group/Password. Parameters: GroupPass = Group/Password to be used for authentication, when retrieving an Email Parameter update RPF file or when accepting ETPro parameter updates from a remote Web browser. Command Options: GroupPass ='' Empty: Remote Email Parameter Update and remote Web parameter updates are effectively Disabled GroupPass =<group-pass> group-pass will be used to authenticate the RPF file retrieved and restrict ETPro parameter updates via a remote Web browser. GroupPass =”*” Default: The group-pass will not be used to authenticate the RPF file retrieved or parameter updates via the Web. Effectively unrestricting any remote ETPro parameter updates. Empty. No Group/Password defined. When retrieving Email Parameter Update mails shall be skipped. ETPro parameter updates via a remote browser are restricted. Note: This default value is shipped from the factory. The AT+iFD command does not restore RPG to this value. Scope: ETPro Series. Result code: I/OK If group-pass is an empty or legal Group/Password. ETEK R&D CO.,LTD 98 .. .. .. .. . AT+I Programmer’s Manual V7.4a I/ERROR Otherwise AT+iRPG~GroupPass Temporarily set the Parameter Update Group/Password to GroupPass. The permanent Group/Password will be restored after completing the next session, both if the session was successful or not. AT+iRPG? Report the current Group/Password. If a Group/Password does not exist only <CRLF> will be returned. The reply is followed by I/OK. AT+iRPG=? Returns the message ‘String’ The reply is followed by I/OK 28 Appendix A 28.1 MIME content types and subtypes Type text multipart Subtype plain richtext enriched tab-seperated-values html sgml vnd.latex-z vnd.fmi.flexstor mixed alternative digest parallel appledouble header-set Form-data related report voice-message signed encrypted ETEK R&D CO.,LTD 99 Appendix A message rfc822 partial external-body news http AT+ i Programmer’s Manual Version 7.4a Appendix A Type application Subtype octet-stream postscript oda atomicmail andrew-inset slate wita dec-dx dca-rft activemessage rtf applefile mac-binhex40 news-message-id news-transmission wordperfect5.1 pdf zip macwriteii msword remote-printing mathematica cybercash commonground iges riscos eshop x400-bp sgml cals-1840 pgp-encrypted pgp-signature pgp-keys vnd.framemaker vnd.mif vnd.ms-excel vnd.ms-powerpoint vnd.ms-project vnd.ms-works Subtype vnd.music-niff vnd.ms-artgalry vnd.truedoc vnd.koan vnd.street-stream vnd.fdf set-payment-initiation set_payment set-registration-initiation set-registration vnd.seemail vnd.businessobjects vnd.meridian-slingshot vnd.xara sgml-open-catalog vnd.rapid vnd.enliven vnd.japannet-registration-wakeup vnd.japannet-verification-wakeup vnd.japannet-payment-wakeup vnd.japannet-directory-service vnd.intertrust.digibox vnd.intertrust.nncp vnd.ms-tnef vnd.svd AT+ i Programmer’s Manual Version 7.4a Type image . . audio video .. .. .. .. .. Subtype jpeg gif ief g3fax tiff cgm naplps vnd.dwg vnd.svf vnd.dxf png vnd.fpx vnd.net-fpx basic 32kadpcm vnd.qcelp mpeg quicktime vnd.vivo vnd.motorola.video vnd.motorola.videop . . . . . table 28-1 MIME Content Types and Subtypesh . . . 29 Appendix B 29.1 Sample Parameter Update File AT+ i Programmer’s Manual Version 7.4a 30 Appendix C 30.1 NIST Time Servers Server IP Address Location nist1.aol-ca.truetime.com 207.200.81.113TrueTime, AOL facility,Sunnyvale, California nist1.aol-va.truetime.com 205.188.185.33TrueTime, AOL facility,Virginia nist1.datum.com 66.243.43.21 Datum, San Jose, California nist1.datum.com 209.0.72.7 Datum, San Jose, California nist1.dc.certifiedtime.com 216.200.93.8 Abovnet, Virginia nist1.nyc.certifiedtime.com 208.184.49.9 Abovnet, New York City nist1.sjc.certifiedtime.com 208.185.146.41Abovnet, San Jose, California nist1-dc.glassey.com 216.200.93.8 Abovenet, Virginia nist1-ny.glassey.com 208.184.49.9 Abovenet, New York City nist1-sj.glassey.com 207.126.98.204Abovenet, San Jose,California time.nist.gov 192.43.244.18 NCAR, Boulder, Colorado time-a.nist.gov 129.6.15.28 NIST, Gaithersburg, Maryland time-a.timefreq.bldrdoc.gov132.163.4.101 NIST, Boulder, Colorado time-b.nist.gov 129.6.15.29 NIST, Gaithersburg, Maryland time-b.timefreq.bldrdoc.gov132.163.4.102 NIST, Boulder, Colorado time-c.timefreq.bldrdoc.gov132.163.4.103 NIST, Boulder, Colorado time-nw.nist.gov 131.107.1.10 Microsoft, Redmond,Washington utcnist.colorado.edu 128.138.140.44University of Colorado,Boulder Table 30-1: List of NIST Time Servers Note: Check http://tf.nist.gov/service/time-servers.html for updates AT+ i Programmer’s Manual Version 7.4a