General AT Commands
AT commands (Hayes command set) are instructions for controlling modules. The commands consist of a series of short text strings for a range of uses, including:
- Configuring a module
- Establishing the module's network connection
- Discovering module and connection status information, to ensure they are working correctly
- Managing the module
- Encrypting and transporting data to and from the module
- Directly accessing the cloud
Your software must send test, read and write AT commands to your module.
Search the module supplier documentation for a full set of the AT commands you can use on your module. For example, Quectel supply the BG95&BG77&BG600L Series AT Commands Manual (PDF). (Note, this link may not point to the latest version).
AnyNet SMARTconnect™ users can use an extended set of commands. For more information, see Management AT commands.
Before you begin
Before you use any AT commands on the module, ensure that it is ready to receive them.
To test that the module is ready to receive AT commands:
-
Using a terminal emulator that is connected to your module, type:
at
<return>The terminal emulator will return any of the following:
OK – the module and port are connected and ready to communicate
ERROR – the module and port cannot communicate. Contact the modem supplier.
Nothing – ensure you have set the correct baud rate in your code. For more information, seeConnecting to the Quectel module using a terminal emulator.
-
If you are using AnyNet SMARTconnect™, type:
at+etminfo=version
<return>The terminal emulator will return either of the following:
-
AnyNet SMARTconnect™ V<version>, where <version> is the current software version – the module is ready to receive AnyNet SMARTconnect™ AT commands.
Verify that the version number is AnyNet SMARTconnect™ V0.99_ma or higher.
-
ERROR – AnyNet SMARTconnect™ software has not yet initialised. Try again in 5 seconds.
-
AT Command syntax
Use the following syntax:
AT+<COMMAND><CR>
where:
AT
is in upper or lowercase<COMMAND>
is a test, read or write command in upper or lower case-
<CR>
is the end-of-line character marking the end of a command line (alias \r – carriage return)The modem will execute the command line after receiving the end-of-line character.
<LF>
is the line feed, which will move the cursor to the next line
This document displays commands only. <CR><LF>
after a command is intentionally omitted.
AT commands are usually followed by a response that includes:
<CR><LF><RESPONSE><CR><LF>
where <RESPONSE> is the command response
This document displays responses only. <CR><LF> is intentionally omitted.
The response may include:
- OK – indicates the command executed with no errors
- ERROR – indicates an invalid command, or that the command line was too long
Types of AT Commands and responses
Command type | Command syntax | Description |
---|---|---|
Test |
AT+<COMMAND>=? |
Returns a list of parameters and value ranges set by the corresponding Write command or internal processes. |
Read |
AT+<COMMAND>? |
Returns the currently set value of each parameter. |
Write |
AT+<COMMAND>= <parameter> |
Sets the user-defined parameter values. |
Execute |
AT+<COMMAND> |
Reads non-variable parameters affected by internal processes in the Eseye-enabled modem. |
Here are a small number of useful general AT commands: