AT Command Set Comparison¶
This document lists the differences between the AT commands supported by the old NONOS-AT version and those by the new ESP-AT version that you should pay attention to before migrating from the old to new.
NONOS-AT: Not recommended version for ESP8266 series of chips since its base SDK, ESP8266_NONOS_SDK, is no longer updated.
ESP-AT: Recommended version. It supports all series of chips and a richer set of commands compared with NONOS-AT, such as Bluetooth commands, Bluetooth Low Energy commands, Ethernet commands, driver commands, and so on. For more details about ESP-AT, please refer to What is ESP-AT and AT Binary Lists.
Note
The table below covers all the commands supported by the NONOS-AT, but not all by ESP-AT. See Section AT Command Set for a full list of commands supported by ESP-AT.
The links in the first column of the table point to ESP-AT commands.
Command |
Function |
NONOS-AT |
ESP-AT |
---|---|---|---|
Test AT startup |
✅ |
✅ |
|
Restart a module |
✅ |
✅ |
|
Check version information |
✅ |
✅ |
|
Enter Deep-sleep mode |
✅ |
✅ |
|
AT commands echoing |
✅ |
✅ |
|
Restore factory default settings |
✅ |
✅ |
|
Current UART configuration, not saved in flash |
✅ |
✅ |
|
Default UART configuration, saved in flash |
✅ |
✅ |
|
Set the sleep mode |
✅
1: light sleep
2: modem sleep
|
ESP8266 ✅
ESP32 ✅
ESP32-S2 ❌ 1
|
|
AT+WAKEUPGPIO |
Wakeup from light sleep on GPIO interrupt |
✅ |
❌ 3 Similar command: AT+SLEEPWKCFG
|
Set RF TX Power |
✅
Range: [0,82]
Unit: 0.25 dBm
|
✅ 2 |
|
AT+RFVDD |
Set RF TX power according to VDD33 |
✅ |
❌ |
Query the remaining space of RAM |
✅ |
✅ Added the parameter of minimum heap size |
|
AT+SYSADC |
Read ADC value |
✅ |
❌ |
AT+SYSIOSETCFG |
Set IO working mode |
✅ |
❌ |
AT+SYSIOGETCFG |
Query IO working mode |
✅ |
❌ |
AT+SYSGPIODIR |
Set GPIO direction |
✅ |
❌ |
AT+SYSGPIOWRITE |
Set GPIO output level |
✅ |
❌ |
AT+SYSGPIOREAD |
Read GPIO input level |
✅ |
❌ |
Set system prompt info |
❌ |
✅ |
|
AT+SYSMSG_CUR |
Set system prompt info, not saved in flash |
✅ |
❌ 3 Similar command: AT+SYSMSG
|
AT+SYSMSG_DEF |
Set default system prompt info, saved in flash |
✅ |
❌ 3 Similar command: AT+SYSMSG
|
Set Wi-Fi mode |
❌ |
✅ Added automatic connection after mode switching |
|
AT+CWMODE_CUR |
Set current Wi-Fi mode, not saved in flash |
✅ |
❌ 3 Similar command: AT+CWMODE
|
AT+CWMODE_DEF |
Set default Wi-Fi mode, saved in flash |
✅ |
❌ 3 Similar command: AT+CWMODE
|
Connect to an AP |
✅ |
✅ Added more functionality |
|
AT+CWJAP_CUR |
Connect to an AP, not saved in flash |
✅ |
❌ 3 Similar command: AT+CWJAP
|
AT+CWJAP_DEF |
Connect to an AP, saved in flash |
✅ |
❌ 3 Similar command: AT+CWJAP
|
Set configuration for AT+CWLAP |
✅ |
✅ Added more functionality |
|
List available APs |
✅ |
✅ Response is different |
|
Disconnect from an AP |
✅ |
✅ |
|
Set softAP parameters |
❌ |
✅ |
|
AT+CWSAP_CUR |
Set softAP parameters, not saved in flash |
✅ |
❌ 3 Similar command: AT+CWSAP
|
AT+CWSAP_DEF |
Set softAP parameters, saved in flash |
✅ |
❌ 3 Similar command: AT+CWSAP
|
Query info of the station that connects to a softAP |
✅ |
✅ |
|
Set DHCP |
❌ |
✅ |
|
AT+CWDHCP_CUR |
Set DHCP, not saved in flash |
✅ |
❌ 3 Similar command: AT+CWDHCP
|
AT+CWDHCP_DEF |
Set DHCP, saved in flash |
✅ |
❌ 3 Similar command: AT+CWDHCP
|
Set the IP addresses allocated by an ESP softAP DHCP server |
❌ |
✅ |
|
AT+CWDHCPS_CUR |
Same as above, but not saved in flash |
✅ |
❌ 3 Similar command: AT+CWDHCPS
|
AT+CWDHCPS_DEF |
Same as above, but saved in flash |
✅ |
❌ 3 Similar command: AT+CWDHCPS
|
Connect to an AP automatically when powered on |
✅ |
✅ |
|
Set the MAC address of an ESP station |
❌ |
✅ |
|
AT+CIPSTAMAC_CUR |
Same as above, but not saved in flash |
✅ |
❌ 3 Similar command: AT+CIPSTAMAC
|
AT+CIPSTAMAC_DEF |
Same as above, but saved in flash |
✅ |
❌ 3 Similar command: AT+CIPSTAMAC
|
Set the IP address of an ESP softAP |
❌ |
✅ |
|
AT+CIPAPMAC_CUR |
Same as above, but not saved in flash |
✅ |
❌ 3 Similar command: AT+CIPAPMAC
|
AT+CIPAPMAC_DEF |
Same as above, but saved in flash |
✅ |
❌ 3 Similar command: AT+CIPAPMAC
|
Set the IP address of an ESP station |
❌ |
✅ |
|
AT+CIPSTA_CUR |
Same as above, but not saved in flash |
✅ |
❌ 3 Similar command: AT+CIPSTA
|
AT+CIPSTA_DEF |
Same as above, but saved in flash |
✅ |
❌ 3 Similar command: AT+CIPSTA
|
Set the IP address of an ESP softAP |
❌ |
✅ |
|
AT+CIPAP_CUR |
Same as above, but not saved in flash |
✅ |
❌ 3 Similar command: AT+CIPAP
|
AT+CIPAP_DEF |
Same as above, but saved in flash |
✅ |
❌ 3 Similar command: AT+CIPAP
|
Start SmartConfig |
✅ |
✅ |
|
Stop SmartConfig |
✅ |
✅ |
|
AT+CWSTARTDISCOVER |
Enable the mode that an ESP device can be found by WeChat |
✅ |
❌ |
AT+CWSTOPDISCOVER |
Disable the mode that an ESP device can be found by WeChat |
✅ |
❌ |
Enable the WPS function |
✅ |
✅ |
|
Configure the mDNS function |
✅ |
✅ |
|
Connect to a WPA2 Enterprise AP |
❌ |
ESP8266 ❌
ESP32 ✅
ESP32-S2 ❌
|
|
AT+CWJEAP_CUR |
Same as above, but not saved in flash |
✅ |
❌ |
AT+CWJEAP_DEF |
Same as above, but saved in flash |
✅ |
❌ |
Set the host name of an ESP station |
✅ |
✅ |
|
Set the Wi-Fi Country Code |
❌ |
✅ |
|
AT+CWCOUNTRY_CUR |
Same as above, but not saved in flash |
✅ |
❌ 3 Similar command: AT+CWCOUNTRY
|
AT+CWCOUNTRY_DEF |
Same as above, but saved in flash |
✅ |
❌ 3 Similar command: AT+CWCOUNTRY
|
Obtain the TCP/UDP/SSL connection status and info |
✅ |
✅ |
|
Resolve a domain name |
✅ |
✅ |
|
Establish a TCP/UDP/SSL connection |
✅ |
✅ |
|
AT+CIPSSLSIZE |
Set SSL buffer size |
✅ |
❌ |
Set SSL clients |
✅ |
✅ Parameters are different |
|
Send data |
✅ |
✅ |
|
Send data of specified length, or use |
✅ |
✅ |
|
AT+CIPSENDBUF |
Write data into the TCP-Send-Buffer |
✅ |
❌ 3 |
AT+CIPBUFRESET |
Reset the segment ID count |
✅ |
❌ 3 |
AT+CIPBUFSTATUS |
Query the status of the TCP-Send-Buffer |
✅ |
❌ 3 |
AT+CIPCHECKSEQ |
Query if a specific segment was successfully sent |
✅ |
❌ 3 |
AT+CIPCLOSEMODE |
Set the close mode of TCP connection |
✅ |
❌ 3 |
Close TCP/UDP/SSL connection |
✅ |
✅ |
|
Obtain the local IP address |
✅ |
✅ |
|
Set multiple connections |
✅ |
✅ |
|
Create a TCP/SSL server |
✅ SSL server not supported |
✅ SSL server supported for ESP32 and ESP32-S2, not for ESP8266 |
|
Set the maximum connections allowed by a server |
✅ |
✅ |
|
Set the transmission mode |
✅ |
✅ |
|
Set whether to enter Wi-Fi Passthrough Mode on power-up |
✅ |
✅ |
|
Set the local TCP server timeout |
✅ |
✅ |
|
Ping the remote host |
✅ |
✅ |
|
Upgrade the firmware through Wi-Fi |
✅ |
✅ More parameters supported |
|
Show the remote IP and port with +IPD |
✅ |
✅ |
|
Set TCP Receive Mode |
✅ |
✅ |
|
Get TCP data in passive receive mode |
✅ |
✅ Response is different |
|
Get TCP data length in passive receive mode |
✅ |
✅ |
|
Set the time zone and SNTP server |
✅ |
✅ Added more functionality |
|
Query SNTP time |
✅ |
✅ |
|
Set DNS server information |
❌ |
✅ |
|
AT+CIPDNS_CUR |
Same as above, but not saved in flash |
✅ |
❌ 3 Similar command: AT+CIPDNS
|
AT+CIPDNS_DEF |
Same as above, but saved in flash |
✅ |
❌ 3 Similar command: AT+CIPDNS
|
Set user partitions in flash |
❌ |
✅ |
Note 1: AT+SLEEP in ESP-AT:
ESP8266 and ESP32 ✅
1: modem sleep by DTIM
2: light sleep
3: modem sleep by listen interval
ESP32-S2 ❌
Note 2: AT+RFPOWER in ESP-AT:
ESP8266 ✅. Range: [40,82]. Unit: 0.25 dBm
ESP32 ✅. Range: [40,78]. Unit: 0.25 dBm. Support Bluetooth LE.
ESP32-S2 ✅. Range: [40,78]. Unit: 0.25 dBm
Note 3: This command will not be added to the ESP-AT version.