ESP8266 WiFi Module offers complete networking solutions to our DIY (Do-it-yourself) and IoT (Internet of Things) projects. It provides WiFi connectivity to any microcontroller through its full TCP/IP Stack. The ESP8266 WiFi module and the microcontroller can be interface through UART and with the help of a wide range of AT Commands, the Microcontroller can control the ESP Module. The AT Commands of the ESP8266 WiFi Module are responsible for controlling all the operations of the module like restart, connect to WiFi, change mode of operation and so forth. So, it is important to understand the ESP8266 AT Commands, at least a few important ones if not all.
Types of ESP8266 AT Commands
Before going into the details of the AT Command Set and how the AT Commands are divided, you need to understand about the different types AT Commands. Basically, the ESP8266 AT Commands can be classified into four types:
Test Query Set Execute
The following table gives you a clear idea about these different types of AT Commands. Here, I’ll use a sample command as “TEST” to demonstrate the differences. Test Commands: The Test AT Commands of ESP8266 WiFi Module are used to get the parameters of a command and their range. Query Commands: The Query Commands returns the present value of the parameters of a command. Set Commands: The Set Commands are used set the values of the parameters in the commands and also runs the commands. Execute Commands: The Execute Commands will run the commands without parameters. NOTE: Not all the ESP8266 AT Commands support all the four command types. Now that we have seen the different types of ESP8266 AT Commands, let us proceed with the actual AT Commands list.
ESP8266 AT Commands Set
The ESP8266 AT Commands Set is divided into three categories. They are:
Basic AT Commands WiFi AT Commands TCP/IP AT Commands
There are a total of 88 AT Commands for ESP8266 WiFi Module. I will not talk about all the 88 AT Commands but just a few important ones. If you want to know the details of all the ESP8266 AT Commands, then I suggest you to visit the official documentation page provided by Espressif Systems (the manufacturer of ESP8266EX SoC). You can view the official ESP8266 AT Commands Documentation from here. Let us see about different ESP8266 AT Commands in each category along with their format (syntax) and responses. NOTE: The Parameters mentioned in [] are optional.
Basic ESP8266 AT Commands
As per the official documentation from Espressif Systems, there are a total of 23 Basic AT Commands.
AT
This is the basic command that tests the AT start up i.e. if the AT System is working correctly or not. If the AT start up is successful, then the response is OK.
AT+RST
This command can be used to restart (reset) the ESP8266 WiFi Module.
AT+GMR
This command is used to check the version information of the firmware and SDK. The response consists of three things: the AT Firmware version, the SDK version and the compilation time of the BIN file.
WiFi AT Commands
The WiFi AT Commands are useful in controlling the WiFi features of the ESP8266 Module like setting up the WiFi Mode of operation, get the list of WiFi Networks, connect to a WiFi Network, setup the Access Point (AP), control DHCP, WPS, MAC Address, IP Address etc.
As per the official documentation, there are 40 WiFi AT Commands for ESP8266 Module. Let me introduce a few important AT Commands.
AT+CWMODE
This command is used to set the WiFi Mode of operation as either Station mode, Soft Access Point (AP) or a combination of Station and AP. The CWMODE command supports Test, Query and Set type commands.
The syntax, response and parameters (in Set command) of this command are given in the following table.
OK
OK
1: Station
2: Soft Access Point (AP)
3: Station+SoftAP
AT+CWLAP
This command lists out all the available WiFi Networks in the reach of ESP8266. It has both Set and Execute Command types.
,<scan_time_min>,<scan_time_max>]
freq offset>,<freq cali>,<pairwise_cipher>,
<group_cipher>,
TCP/IP AT Commands
The TCP/IP AT Commands are responsible for communication over the internet. There are a total of 25 TCP/IP AT Commands for ESP8266 WiFi Module. Some of the important ones are mentioned here.
AT+CIPSTATUS
This TCP/IP AT Command of the ESP8266 WiFi Module get the information or status of the connection. Only the Execute type command is available.
+CIPSTATUS:
Δ