Good to know before reading the rest of this article
Different phones support different sets of AT commands. So not all AT commands listed below might not be supported by a specific phone. Currently there is no authoritative list available of supported AT commands by all phones.
AT commands are also known as Hayes AT commands. There are different views to understand the meanings of "AT". Some people call it as "Attention Telephone" or some people call it as "Attention Terminal" commands.
AT commands allow us to give instructions to a phone, either a mobile phone or a normal landline telephone. The commands are sent to the phone's modem, which can be GSM modem or PC's modem. In this discussion, we will focus on AT commands on Nokia's GSM and WCDMA products only. Different manufacturers may have different set of AT commands. Fortunately, many AT commands are the same. Mobile manufacturers may also give attention to operators to allow or not to allow some commands on the phone.
Let us see in brief the usage of AT commands. We can perform operations that we normally do from the keypad, for instance calling a number, sending an sms, reading an SMS, deleting an SMS, setting the SMSC number, looking for GPRS access point, reading phonebook data, deleting phonebook data, reading the battery status, reading the signal strength etc. When we want to make a PC based application to interface a mobile phone using USB, IR or bluetooth, such commands are needed to communicate with mobile phones. Basically such commands are application layer of MBUS or FBUS commands. Nokia provides an AT command set guide by which we can refer the basic command syntax and the response of the command in various situations (see Related Links section at the end of this article).
Using AT Commands with HyperTerminal
Let us see now how to use AT commands. The AT commands work on device that has built-in GSM modem. If it exists, there is no need of virtual modem software to install on your PC. If you are using very older Nokia phones you have to find out the DATA suite not the PC Suite for such phones (e.g. Nokia 5110) to use AT commands. We will focus on the mobile phones which has built-in GSM modem.
Follow the instructions below on your PC to use AT commands:
- Connect your mobile phone in PC Suite mode using any available connection (BT, USB or IR).
- Make sure that you have installed proper GSM modem driver on your PC. You can check it from Control Panel | System | Hardware | Device Manager. Check Modems section. If you see something like "Nokia XY USB Modem" or "Nokia XY Bluetooth Modem", it means the device has built-in GSM modem. If you don't have it, go to Nokia web site and download the driver from the product page of your device.
- Open the HyperTerminal, a communication utility on your Windows OS. You can find the HyperTerminal in Start | Programs | Accessories | Communication.
- Create a new connection set on HyperTerminal. You may need to set some of the parameters, such as baud rate (such as 9600), handshaking mode (Xon-Xoff), parity bit (default) etc.
- Note that you also need to select the communication port on which your mobile has been connected. The port number can be found by right clicking the modem item in Control Panel.
- Once you are done with this you can give the basic AT command, type simple AT in the window so you will get "OK" response.
There are basically two modes to work for mobile phones. one is PDU and another is text mode. PDU is protocol data unit. Mobile normally understands internally in PDU format. We can use both. AT+CMGF is the command to set the mode. If we type AT+CMGF=0 the PDU mode is set. If we type AT+CMGF=1 the text mode is set. If we want to check which mode has been set we can type simple AT+CMGF? so it will show the result.
Now for example we want to dial out a number called "111" the command is ATD 111 or ATD "111".
To send an SMS first we have to set the mode in text. We can send SMS in both the modes but the format of typing text to send SMS is different. For normal usage we use text mode. So type AT+CMGS="9198XX21XX99", "Message" ^ctrlZ. So SMS will be sent out from your PC through mobile phone. To read an SMS from the inbox we have to write AT+CMGR=1 to read the sms stored at 1st location. The location starts from 0 so be careful. To delete an SMS type AT+CMG
NOKIA GSM AT COMMAND SET
|ATH||Hang Up Call|
|ATL||Monitor Speaker Loudness|
|ATM||Monitor Speaker Mode|
|ATP||Set Pulse Dial as Default|
|ATT||Set Tone Dial as Default|
|AT+CSTA||Select Type of Address|
|AT+CRC||Cellular Result Codes|
Data Card Control Commands
|ATS||Select an S-register|
|ATZ||Recall Stored Profile|
|AT&F||Restore Factory Settings|
|AT&V||View Active Configuration|
|AT&W||Store Parameters in Given Profile|
|AT&Y||Select Set as s Powerup Option|
|AT+CLCK||Facility Lock Command|
|AT+COLP||Connected Line Identification Presentation|
|AT+GCAP||Request Complete Capabilities List|
|AT+GMI||Request Manufacturer Identification|
|AT+GMM||Request Model Identification|
|AT+GMR||Request Revision Identification|
|AT+GSN||Request Product Serial Number Identification|
Phone Control Commands
|AT+CGMI||Request Manufacturer Identification|
|AT+CGMM||Request Model Identification|
|AT+CGMR||Request Revision Identification|
|AT+CGSN||Request Product Serial Number Identification|
|AT+CMEE||Report Mobile Equipment Error|
|AT+CPAS||Phone Activity Status|
|AT+CPBF||Find Phone Book Entries|
|AT+CPBR||Read Phone Book Entry|
|AT+CPBS||Select Phone Book Memory Storage|
|AT+CPBW||Write Phone Book Entry|
|AT+CSCS||Select TE Character Set|
Computer Data Card Interface Commands
|ATQ||Result Code Suppression|
|ATV||Define Response Format|
|ATX||Response Range Selection|
|AT&C||Define DCD Usage|
|AT&D||Define DTR Usage|
|AT&K||Select Flow Control|
|AT&Q||Define Communications Mode Option|
|AT&S||Define DSR Option|
|AT+ICF||DTE-DCE Character Framing|
|AT+IFC||DTE-DCE Local Flow Control|
|AT+IPR||Fixed DTE Rate|
|AT+CLIP||Calling Line Identification Presentation|
|AT+CR||Service Reporting Control|
|AT+DR||Data Compression Reporting|
|AT+ILRR||DTE-DCE Local Rate Reporting|
Network Communication Parameter Commands
|ATB||Communications Standard Option|
|AT+CBST||Select Bearer Service Type|
|AT+CEER||Extended Error Report|
|AT+CRLP||Radio Link Protocol|
|A/||Re-Execute Command Line|
|AT*C||Start SMS Interpreter|
|AT*T||Enter SMS Block Mode Protocol|
|AT*V||Activate V.25bis Mode|
|AT+CESP||Enter SMS Block Mode Protocol|
SMS Commands SMS Text Mode
|AT+CSMS||Select Message Service|
|AT+CPMS||Preferred Message Storage|
|AT+CSCA||Service Centre Address|
|AT+CSMP||Set Text Mode Parameters|
|AT+CSDH||Show Text Mode Parameters|
|AT+CSCB||Select Cell Broadcast Message Types|
|AT+CNMI||New Message Indications to TE|
|AT+CMSS||Send Message from Storage|
|AT+CMGW||Write Message to Memory|
SMS PDU Mode
|AT+CMGW||Write Message to Memory|