This is a list of AT commands, or actually Hayes commands. This is not a complete list of all commands, instead if focuses mostly on commands that are needed for GPRS/3G/UMTS/HSDPA and a few other more “exotic” commands that aren’t too well known. I wrote this mainly for myself, but I figure other might find it useful as well.
Command : AT+CPIN?
Response : +CPIN: <code>
Description : Check PIN status.
<code> can have several values, these are the more common ones
Command : AT+CPIN=<pin>[,<newpin>]
Response : OK | +CME ERROR: <error>
Description : Enter/change PIN.
Example
>AT+CPIN?
+CPIN: SIM PIN
OK>AT+CPIN=”1234″
OK>AT+CPIN?
+CPIN: READY
OK
Command : AT+CREG?, AT+CREG=? , AT+CREG=<n>
Response : +CREG: <n>,<stat>,[,<lac>,<ci>[,<AcT>]] | +CME ERROR
Description : Get network registration status and controls unsolicited status callback, which when turned on will send a +CREG message with the new network status when something changes.
<n>
<stat>
<lac> Location area code
<ci> UTRAN/GERAN cell ID
<AcT> Network access type
UTRAN is a short for UMTS Terrestrial Radio Access Network
The following example shows that full unsolicited status callback is enabled, that the device is registered to its home network followed by an location area code followed by the UTRAN cell ID. Unfortunately this device does not show access type with this command.
Example:
>AT+CREG=2
OK
>AT+CREG?
+CREG: 2,1,”048A”,”58B2″
Command : AT+COPS?,
Response : +COPS: (<mode>,[<format>,<oper>[,<AcT>]]),…, (<modeN>,[<formatN>,<operN>[,<AcTN>]])
Command : AT+COPS=?
Response : +COPS: <stat>, long <oper>, short <oper>, numeric <oper>, <AcT>
Response : +CME ERROR:
Command : AT+COPS=<mode>,[<format>,<oper>[,<AcT>]]
Response : OK | +CME ERROR
Description : Get/set current GSM/UMTS network operator, list available operators. This can be used to change for example access type and switch network.
<mode>
<format>
<oper>
String (based on <format>) that identifies the operator.
<stat>
<AcT> Network access type
The following example shows that the devices is connected to the operator called “3″ using UTRAN (which is UMTS, also called 3G). Listing available networks shows the current network, an additional UTMS network called Sweden3G that is forbidden and a GSM network called “3″ that is available.
Example:
>AT+COPS?
+COPS: 0,0,”3″,2AT+COPS=?
+COPS: (2,”3″,”3″,”24004″,2),(1,”3″,”3″,”24008″,0),(3,”Sweden 3G”,”Sweden3G”,”2)
Command : AT+COPN
Response : +COPN: <numeric1>,<alpha1>, …, +COPN: <numericN>,<alphaN>
Description : Read operator names stored in device memory.
Example:
+COPN: “20408″,”NL KPN”
+COPN: “20412″,”NL Telfort”
+COPN: “20416″,”T-Mobile NL”
+COPN: “20420″,”Orange NL”
…
+COPN: “24002″,”3 SE”
+COPN: “24004″,”SWEDEN”
+COPN: “24005″,”Sweden 3G”
+COPN: “24008″,”Telenor SE”
+COPN: “24010″,”S COMVIQ”
Command : AT+CGDCONT=<cid> [,<pdptype> [,<apn>[,<pdpaddr> [,<dcomp>[,<hcomp]]]]]
Response : OK | ERROR
Command : AT+CGDCONT?
Response : +CGDCONT: <cid1>,<pdptype1>,<apn1>,<pdpaddr1><dcomp1>,<hcomp1>, …, <cidN>,<pdptypeN>,<apnN>,<pdpaddrN><dcompN>
Command : AT+CGDCONT=?
Response : +CGDCONT: (<cid_range>),<pdptype>,,,(<dcomp_range>),(<hcomp_range>)
Description : Allows configuration of one or several packet data protocol context which forms the base of a data connection.
<cid> PDP context ID, minimum value is 1, maximum value depends on device and can be found with the =? command.
<pdptype> String parameter identifying the protocol type
IP – Internet Protocol
IPV6 – Internet Protocol, version 6
PPP – Point to Point Protocol
<apn> String that identifies the Access Point Name in the packet data network.
<pdpaddr> Requested address, if null (0.0.0.0) an address is requested dynamically.
<dcomp> PDP data compression control, off by default.
<hcomp> PDP header compression control, off by default.
Example :
> AT+CGDCONT=1,”IP”,”bredband.tre.se”
OK>AT+CGDCONT?
+CGDCONT: 1,”IP”,”bredband.tre.se”,”0.0.0.0″,0,0>AT+CGDCONT=?
+CGDCONT: (1-16),”IP”,,,(0-2),(0-4)
+CGDCONT: (1-16),”PPP”,,,(0-2),(0-4)
+CGDCONT: (1-16),”IPV6″,,,(0-2),(0-4)
Command : AT$QCPDPP=<cid>,<auth_type>,<auth_name>,<auth_pwd>
Response : OK | ERROR
Description : A Qualcomm command, defines authentication parameters for the PDP context id <cid>.
<auth_type>
<auth_name> and <auth_pwd> are strings with the authentication information.
Command : AT+CSQ
Response : +CSQ: <rssi>,<ber>
Description : Returns signal quality.
<rssi> Received Signal Strength Indicator
<ber> Bit Error Rate, in percent 0..7.
99 not known or not detectable
A note on the RSSI (received signal strength), dBm is a decibel (logarithmic) scale with a reference of 1 milliwatt thus 0 dBm equals a received signal of 1 mW.
Signal strength is usually lower than 1 mW and therefore below 0, so the larger (closer to 0) the better signal strength.
You can convert the RSSI to dBM with
Example
>AT+CSQ=?
+CSQ: (0-31,99),(99)
OK>AT+CSQ
+CSQ: 14,99
Command : AT+GMI
Response : Manufacturer Identification string
Command : AT+GMM
Response : Model Identification string
Command : AT+GMR
Response : Revision Identification string
Example :
>AT+GMI
Option N.V.
OK>AT+GMM
GTM378
OK>AT+GMR
2.4.6Hd (Date: Oct 04 2007, Time: 11:59:08)
Command : AT_OWANCALL=<pdp context>,<enabled>[,<callback enabled>]
Response : OK
Description : Used to initiate UMTS/HSDPA connections.
<pdp context> – Existing, valid, PDP context that specifies the intended APN to connect to.
<enabled> – 1 = Enable connection, 0 = Disable connection (disconnect)
<callback enabled> – 1 = Asynchronous callback when connection is established, 0 = silent
Example :
>AT_OWANCALL=1,1,1
OK
_OWANCALL: 1, 1>AT_OWANCALL=1,0
OK
_OWANCALL: 1, 0
Command : AT_OWANDATA=<pdp context>
Response : _OWANDATA: <pdp context>, <ip address>, <route?>, <nameserver 1>, <nameserver 2>, <unknown>, <unknown>, <speed>
Description : Retrieve IP configuration from an established connection previously created with AT_OWANCALL
Example :
>AT_OWANDATA=1
_OWANDATA: 1, 79.138.181.171, 0.0.0.0, 80.251.192.244, 80.251.192.245, 0.0.0.0, 0.0.0.0, 72000
3GPP TS 27.007 V8.3.0 (2008-03) – AT command set for User Equipment (UE)
Specification details at 3gpp.org
补充:
AT+CFUN=<fun>,[<rst>]
<fun>
0 minimum functionality
1 full functionality (Default)
4 disable phone both transmit and receive RF circuits
<rst>:
0 Set the ME to <fun> power level immediately. This is the default when <rst> is not given.
1 Set the ME to <fun> power level after the ME been reset.
CFUN的具体参数和对应的功能是可以由OEM自己指定的,也就是说OEM可以自己定制自己的设备功能,通过CFUN来打开或关闭.比如打开射频可以用 CFUN=1,关闭可以用CFUN=0,也可以自己定义打开蓝牙CFUN=5等等,所以具体需要看片子的说明说册,不是所有的人都完全按照3GPP规范来 做的.
同理,Minimum functionality和Full functionality也是由各OEM自己定义的设备功能.