Releases: espressif/esp-at
v3.2.1.0
v3.2.1.0 Release Notes
v3.2.1.0 is released for ESP32. The changes since the v3.2.0.0 are as follows.
ESP32-AT
Documentation for Release v3.2.1.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.2.0.0/esp32/index.html. ESP32-AT v3.2.1.0 is a minor update for ESP32-AT v3.2.0.0.
The firmwares:
- ESP32-WROOM-32-AT-V3.2.1.0.zip
- ESP32-SOLO-AT-V3.2.1.0.zip
- ESP32-PICO-D4-AT-V3.2.1.0.zip
- ESP32-MINI-1-AT-V3.2.1.0.zip
This is the list of changes since release v3.2.0.0:
Optimization
- Optimized the time cost of the
AT+BLEGATTSSRVCRE
command by removing some logs
v3.4.0.0
v3.4.0.0 Release Notes
v3.4.0.0 is released for ESP32 and ESP32-S2. The changes since the previous version are as follows.
ESP32-AT
Documentation for Release v3.4.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.4.0.0/esp32/index.html. ESP32-AT v3.4.0.0 is a major update for ESP32-AT v3.2.0.0.
The firmwares:
- ESP32-WROOM-32-AT-V3.4.0.0.zip
- ESP32-SOLO-AT-V3.4.0.0.zip
- ESP32-PICO-D4-AT-V3.4.0.0.zip
- ESP32-MINI-1-AT-V3.4.0.0.zip
This is the list of changes since release v3.2.0.0:
Breaking Changes
esp-idf
version updated to v5.0.6RF power
: Fixed the issue that the actual wifi transmit power didn't match the settings. The default configuration of wifi transmit power is 19.5 dBm, but the actual wifi transmit power may be slightly lower than the settings. This is because the wifi transmit power is limited by your country code according tophy_multiple_init_data.bin
configuration. In the current version, esp-at disabled multiple phy init data bin to improve the wifi transmit power (rf power is no longer limited by your country code).
1. Feature
1.1 TCP/IP
- Added the
AT+CIPRECVTYPE
command to set recv mode for each connection AT+CIPRECVLEN
query command can return the real data length now
1.2 Application Layer
AT+MQTTCONNCFG
: Enlarged lwt msg length to 128 bytes- Added the
AT+MQTTSNI
command to set MQTT server name indication
2. Bugfix
2.1 Wi-Fi
AT+CWLAP
: Fixed an issue where executingAT+CWLAP
may return an ERROR when theAT+CWRECONNCFG
command is sent immediately after the Wi-Fi disconnection
2.2 TCP/IP
AT+PING
: Fixed an issue that cannot ping a linklocal ipv6 address- Fixed an ssl issue where "CLOSED" was output before reading all data in passive mode
- Fixed a potential ssl crash caused when mbedtls dynamic buffer feature is used and an ssl renegotiation occurs
- Fixed an issue where esp-tls is unable to parse ECC keys
2.3 System
- Fixed the issue that AT could not work immediately after restart and prompt ready
- Fixed an
AT+SYSFLASH
crash issue if a large amount of data is read - Fixed a potential GPIO voltage fluctuation issue during light-sleep
2.4 Bluetooth
- Fixed BLE don't print ble connection params update fail issue
- Fixed BLE memory leak issue
3. Optimization
- Optimized sntp startup delay and receive timeout to speed up sntp time acquisition
- Re-organized the gitlab ci
- Re-organized the main directory of the esp-at repository
- Added some debug options to allow different kinds of esp-at debug output
ESP32S2-AT
Documentation for Release v3.4.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.4.0.0/esp32s2/index.html. ESP32S2-AT v3.4.0.0 is a major update for ESP32S2-AT v2.1.0.0.
The firmware:
This is the list of changes since release v2.1.0.0:
Breaking Changes
esp-idf
version updated to v5.0.6
1. Feature
1.1 Basic
Added more Basic AT commands:
- AT+CMD: List all AT commands and types supported in the current firmware.
- AT+TRANSINTVL: Set the data transmission interval in the Passthrough Mode.
- AT+SYSMSGFILTER: Enable or disable the system message filter.
- AT+SYSMSGFILTERCFG: Query/Set the system message filters.
- AT+SYSMFG: Query/Set manufacturing nvs User Partitions.
- AT+SYSREG: Read/write the register.
1.2 Wi-Fi
Added more Wi-Fi AT commands:
- AT+CWINIT: Initialize/Deinitialize Wi-Fi driver.
- AT+CWSTATE: Query the Wi-Fi state and Wi-Fi information.
- AT+CWRECONNCFG: Query/Set the Wi-Fi reconnecting configuration.
1.3 TCP/IP
Added more TCP/IP AT Commands:
- AT+CIPV6: Enable/disable the network of Internet Protocol Version 6 (IPv6).
- AT+CIPSTATE: Obtain the TCP/UDP/SSL connection information.
- AT+CIPSENDL: Send long data in parallel in the normal transmission mode.
- AT+CIPSENDLCFG: Set the configuration for the command AT+CIPSENDL.
- AT+CIPSNTPINTV: Query/Set the SNTP time synchronization interval.
- AT+CIPFWVER: Query the existing AT firmware version on the server.
- AT+CIPSSLCCN: Query/Set the Common Name of the SSL client.
- AT+CIPSSLCSNI: Query/Set SSL client Server Name Indication (SNI).
- AT+CIPSSLCALPN: Query/Set SSL client Application Layer Protocol Negotiation (ALPN).
- AT+CIPSSLCPSK: Query/Set SSL client Pre-shared Key (PSK) in string format.
- AT+CIPSSLCPSKHEX: Query/Set SSL client Pre-shared Key (PSK) in hexadecimal format.
- AT+CIPRECVTYPE: Query/Set socket receiving mode.
1.4 MQTT
Added more MQTT AT Commands:
- AT+MQTTLONGCLIENTID: Set MQTT client ID
- AT+MQTTLONGUSERNAME: Set MQTT username
- AT+MQTTLONGPASSWORD: Set MQTT password
- AT+MQTTALPN: Set MQTT Application Layer Protocol Negotiation (ALPN)
- AT+MQTTSNI: Set MQTT Server Name Indication (SNI)
1.5 HTTP
Added more HTTP AT Commands:
- AT+HTTPCGET: Get HTTP Resource
- AT+HTTPCPOST: Post HTTP data of specified length
- AT+HTTPCPUT: Put HTTP data of specified length
- AT+HTTPURLCFG: Set/Get long HTTP URL
- AT+HTTPCHEAD: Set/Query HTTP request headers
1.6 User
Added new User AT Commands:
- AT+USERRAM: Operate user’s free RAM.
- AT+USEROTA: Upgrade the firmware according to the specified URL.
- AT+USERWKMCUCFG: Configure how AT wakes up MCU.
- AT+USERMCUSLEEP: MCU indicates its sleep state.
- AT+USERDOCS: Query the ESP-AT user guide for the current firmware.
2. Attention
Due to the long time without a new firmware release for ESP32-S2, this release has significant changes. If you want to know more information, please refer to some ESP32 release notes:
v3.3.0.0
v3.3.0.0 Release Notes
v3.3.0.0 is released for ESP32-C2 and ESP32-C3. The changes since the previous version are as follows.
ESP32C2-AT
Documentation for Release v3.3.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.3.0.0/esp32c2/index.html ESP32C2-AT v3.3.0.0 is a major update for ESP32C2-AT v3.1.0.0.
The firmwares:
This is the list of changes since release v3.1.0.0:
Breaking Changes
esp-idf
version updated to v5.0.6
1. Feature
1.1 TCP/IP
- Added the
AT+CIPSSLCPSKHEX
command to set SSL client pre-shared key in hexadecimal format - Added the
AT+CIPRECVTYPE
command to set recv mode for each connection AT+CIPRECVLEN
query command can return the real data length now
1.2 Application Layer
AT+CIPSNTPCFG
: Added timezone query and timezone set when SNTP was disabledAT+MQTTCONNCFG
: Enlarged lwt msg length to 128 bytes- Added the
AT+MQTTSNI
command to set MQTT server name indication
2. Bugfix
2.1 Wi-Fi
AT+CWLAP
: Fixed an issue where executingAT+CWLAP
may return an ERROR when theAT+CWRECONNCFG
command is sent immediately after the Wi-Fi disconnection
2.2 TCP/IP
AT+PING
: Fixed an issue that cannot ping a linklocal ipv6 address- Fixed an SSL issue where "CLOSED" was output before reading all data in passive mode
- Fixed a potential SSL crash if mbedtls dynamic buffer feature is used and SSL renegotiation occurs
- Fixed an issue where esp-tls is unable to parse ECC keys
2.3 System
- Fixed the issue that
AT+SYSMFG
read operation returned wrong length - Fixed the issue where AT cannot work immediately after restart and prompt ready
- Fixed an
AT+SYSFLASH
crash issue if read a large amount of data
3. Optimization
- Optimized sntp startup delay and receive timeout to speedup sntp time acquisition
- Disabled relinker feature to get rid of potential crashes
- Optimized the available ram size
- Re-organized the gitlab ci
- Re-organized the main directory of the esp-at repository
- Added some debug options to allow different kinds of esp-at debug output
ESP32C3-AT
Documentation for Release v3.3.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.3.0.0/esp32c3/index.html ESP32C3-AT v3.3.0.0 is a major update for ESP32C3-AT v3.2.0.0.
The firmware:
This is the list of changes since release v3.2.0.0:
Breaking Changes
esp-idf
version updated to v5.0.6RF power
: Fixed an issue where the actual wifi transmit power didn't match the settings. The default configuration of wifi transmit power is 19.5 dBm, but the actual wifi transmit power may be slightly lower than the settings, this is because the wifi transmit power is limited by your country code according tophy_multiple_init_data.bin
configuration. In the current version, esp-at disabled multiple phy init data bin to improve the wifi transmit power (RF power is no longer limited by your country code).
1. Feature
1.1 TCP/IP
- Added the
AT+CIPRECVTYPE
command to set recv mode for each connection AT+CIPRECVLEN
query command can return the real data length now
1.2 Application Layer
AT+MQTTCONNCFG
: Enlarged lwt msg length to 128 bytes- Added the
AT+MQTTSNI
command to set MQTT server name indication
2. Bugfix
2.1 Wi-Fi
AT+CWLAP
: Fixed an issue where executingAT+CWLAP
may return an ERROR when theAT+CWRECONNCFG
command is sent immediately after the Wi-Fi disconnection- Fixed an issue where init and deinit the wifi could lead to Wi-Fi scan issue
2.2 TCP/IP
AT+PING
: Fixed an issue that cannot ping a link-local ipv6 address- Fixed an SSL issue where "CLOSED" was output before reading all data in passive mode
- Fixed a potential SSL crash if mbedtls dynamic buffer feature is used and SSL renegotiation occurs
- Fixed an issue where esp-tls is unable to parse ECC keys
2.3 System
- Fixed the issue where AT cannot work immediately after restart and prompt ready
- Fixed an
AT+SYSFLASH
crash issue if a large amount of data is read
2.4 Bluetooth
- Fixed ble init fail issue
- Fixed ble disconnection will crash issue
- Fixed ble connection timeout issue
3. Optimization
- Optimized SNTP startup delay and receive timeout to speed up SNTP time acquisition
- Re-organized the GitLab CI
- Re-organized the main directory of the esp-at repository
- Added some debug options to allow different kinds of esp-at debug output
v4.0.0.0
ESP32-C6 AT Release v4.0.0.0
Documentation for Release v4.0.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v4.0.0.0/esp32c6/index.html
ESP32-C6 AT v4.0.0.0 is the first released version of AT firmware for ESP32-C6.
The firmware:
Known Issues
- Unable to use Long Range mode in the AT+CWSTAPROTO and AT+CWAPPROTO commands.
- Deinit BluFi will result in a memory leak.
- The third BLE connection cannot be paired.
- In some scenarios, there may be no prompt to write the attribute value of UUID 0x2902.
Features
Basic AT Commands
- AT: Test AT startup.
- AT+RST: Restart a module.
- AT+GMR: Check version information.
- AT+CMD: List all AT commands and types supported in current firmware.
- AT+GSLP: Enter Deep-sleep mode.
- ATE: Configure AT commands echoing.
- AT+RESTORE: Restore factory default settings of the module.
- AT+SAVETRANSLINK: Set whether to enter Passthrough Mode on power-up.
- AT+TRANSINTVL: Set the data transmission interval in the Passthrough Mode.
- AT+UART_CUR: Current UART configuration, not saved in flash.
- AT+UART_DEF: Default UART configuration, saved in flash.
- AT+SLEEP: Set the sleep mode.
- AT+SYSRAM: Query current remaining heap size and minimum heap size.
- AT+SYSMSG: Query/Set System Prompt Information.
- AT+SYSMSGFILTER: Enable or disable the system message filter.
- AT+SYSMSGFILTERCFG: Query/Set the system message filters.
- AT+SYSFLASH: Query/Set User Partitions in Flash.
- AT+SYSMFG: Query/Set manufacturing nvs User Partitions.
- AT+RFPOWER: Query/Set RF TX Power.
- AT+SYSROLLBACK: Roll back to the previous firmware.
- AT+SYSTIMESTAMP: Query/Set local time stamp.
- AT+SYSLOG: Enable or disable the AT error code prompt.
- AT+SLEEPWKCFG: Query/Set the light-sleep wakeup source and awake GPIO.
- AT+SYSSTORE: Query/Set parameter store mode.
- AT+SYSREG: Read/write the register.
Wi-Fi AT Commands
- AT+CWINIT: Initialize/Deinitialize Wi-Fi driver.
- AT+CWMODE: Set the Wi-Fi mode (Station/SoftAP/Station+SoftAP).
- AT+CWSTATE: Query the Wi-Fi state and Wi-Fi information.
- AT+CWJAP: Connect to an AP.
- AT+CWRECONNCFG: Query/Set the Wi-Fi reconnecting configuration.
- AT+CWLAPOPT: Set the configuration for the command AT+CWLAP.
- AT+CWLAP: List available APs.
- AT+CWQAP: Disconnect from an AP.
- AT+CWSAP: Query/Set the configuration of an ESP32-C6 SoftAP.
- AT+CWLIF: Obtain IP address of the station that connects to an ESP32-C6 SoftAP.
- AT+CWQIF: Disconnect stations from an ESP32-C6 SoftAP.
- AT+CWDHCP: Enable/disable DHCP.
- AT+CWDHCPS: Query/Set the IPv4 addresses allocated by an ESP32-C6 SoftAP DHCP server.
- AT+CWAUTOCONN: Connect to an AP automatically when powered on.
- AT+CWAPPROTO: Query/Set the 802.11 b/g/n protocol standard of SoftAP mode.
- AT+CWSTAPROTO: Query/Set the 802.11 b/g/n protocol standard of station mode.
- AT+CIPSTAMAC: Query/Set the MAC address of an ESP32-C6 station.
- AT+CIPAPMAC: Query/Set the MAC address of an ESP32-C6 SoftAP.
- AT+CIPSTA: Query/Set the IP address of an ESP32-C6 station.
- AT+CIPAP: Query/Set the IP address of an ESP32-C6 SoftAP.
- AT+CWSTARTSMART: Start SmartConfig.
- AT+CWSTOPSMART: Stop SmartConfig.
- AT+WPS: Enable the WPS function.
- AT+MDNS: Configure the mDNS function.
- AT+CWJEAP: Connect to a WPA2 Enterprise AP.
- AT+CWHOSTNAME: Query/Set the host name of an ESP32-C6 station.
- AT+CWCOUNTRY: Query/Set the Wi-Fi Country Code.
TCP/IP AT Commands
- AT+CIPV6: Enable/disable the network of Internet Protocol Version 6 (IPv6).
- AT+CIPSTATE: Obtain the TCP/UDP/SSL connection information.
- AT+CIPSTATUS (deprecated): Obtain the TCP/UDP/SSL connection status and information.
- AT+CIPDOMAIN: Resolve a Domain Name.
- AT+CIPSTART: Establish TCP connection, UDP transmission, or SSL connection.
- AT+CIPSTARTEX: Establish TCP connection, UDP transmission, or SSL connection with an automatically assigned ID.
- [Data Mode Only] +++: Exit from the data mode.
- AT+SAVETRANSLINK: Set whether to enter Wi-Fi Passthrough Mode on power-up.
- AT+CIPSEND: Send data in the normal transmission mode or Wi-Fi normal transmission mode.
- AT+CIPSENDL: Send long data in parallel in the normal transmission mode.
- AT+CIPSENDLCFG: Set the configuration for the command AT+CIPSENDL.
- AT+CIPSENDEX: Send data in the normal transmission mode in expanded ways.
- AT+CIPCLOSE: Close TCP/UDP/SSL connection.
- AT+CIFSR: Obtain the local IP address and MAC address.
- AT+CIPMUX: Enable/disable the multiple connections mode.
- AT+CIPSERVER: Delete/create a TCP/SSL server.
- AT+CIPSERVERMAXCONN: Query/Set the maximum connections allowed by a server.
- AT+CIPMODE: Query/Set the transmission mode.
- AT+CIPSTO: Query/Set the local TCP Server Timeout.
- AT+CIPSNTPCFG: Query/Set the time zone and SNTP server.
- AT+CIPSNTPTIME: Query the SNTP time.
- AT+CIPSNTPINTV: Query/Set the SNTP time synchronization interval.
- AT+CIPFWVER: Query the existing AT firmware version on the server.
- AT+CIUPDATE: Upgrade the firmware through Wi-Fi.
- AT+CIPDINFO: Set “+IPD” message mode.
- AT+CIPSSLCCONF: Query/Set SSL clients.
- AT+CIPSSLCCN: Query/Set the Common Name of the SSL client.
- AT+CIPSSLCSNI: Query/Set SSL client Server Name Indication (SNI).
- AT+CIPSSLCALPN: Query/Set SSL client Application Layer Protocol Negotiation (ALPN).
- AT+CIPSSLCPSK: Query/Set SSL client Pre-shared Key (PSK) in string format.
- AT+CIPSSLCPSKHEX: Query/Set SSL client Pre-shared Key (PSK) in hexadecimal format.
- AT+CIPRECONNINTV: Query/Set the TCP/UDP/SSL reconnection interval for the Wi-Fi normal transmission mode.
- AT+CIPRECVTYPE: Query/Set socket receiving mode.
- AT+CIPRECVDATA: Obtain socket data in passive receiving mode.
- AT+CIPRECVLEN: Obtain socket data length in passive receiving mode.
- AT+PING: Ping the remote host.
- AT+CIPDNS: Query/Set DNS server information.
- AT+CIPTCPOPT: Query/Set the socket options.
Bluetooth® Low Energy AT Commands
- AT+BLEINIT: Bluetooth LE initialization.
- AT+BLEADDR: Query/Set Bluetooth LE device address.
- AT+BLENAME: Query/Set Bluetooth LE device name.
- AT+BLESCANPARAM: Query/Set parameters of Bluetooth LE scanning.
- AT+BLESCAN: Enable Bluetooth LE scanning.
- AT+BLESCANRSPDATA: Set Bluetooth LE scan response.
- AT+BLEADVPARAM: Query/Set parameters of Bluetooth LE advertising.
- AT+BLEADVDATA: Set Bluetooth LE advertising dATa.
- AT+BLEADVDATAEX: AutomATically set Bluetooth LE advertising dATa.
- AT+BLEADVSTART: Start Bluetooth LE advertising.
- AT+BLEADVSTOP: Stop Bluetooth LE advertising.
- AT+BLECONN: Establish Bluetooth LE connection.
- AT+BLECONNPARAM: Query/UpdATe parameters of Bluetooth LE connection.
- AT+BLEDISCONN: End Bluetooth LE connection.
- AT+BLEDATALEN: Set Bluetooth LE dATa packet length.
- AT+BLECFGMTU: Set Bluetooth LE MTU length.
- AT+BLEGATTSSRV: GATTS discovers services.
- AT+BLEGATTSCHAR: GATTS discovers characteristics.
- AT+BLEGATTSNTFY: Notify a client of the value of a characteristic value from the server.
- AT+BLEGATTSIND: IndicATe the characteristic value from the server to a client.
- AT+BLEGATTSSETATTR: GATTS sets characteristics.
- AT+BLEGATTCPRIMSRV: Generic ATtributes Client (GATTC) discovers primary services.
- AT+BLEGATTCINCLSRV: GATTC discovers included services.
- AT+BLEGATTCCHAR: GATTC discovers characteristics.
- AT+BLEGATTCRD: GATTC reads characteristics.
- AT+BLEGATTCWR: GATTC writes characteristics.
- AT+BLESPPCFG: Query/Set Bluetooth LE SPP parameters.
- AT+BLESPP: Enter Bluetooth LE SPP mode.
- AT+SAVETRANSLINK: Set whether to enter Bluetooth LE :term:
Passthrough Mode
on power-up. - AT+BLESECPARAM: Query/Set Bluetooth LE encryption parameters.
- AT+BLEENC: InitiATe Bluetooth LE encryption request.
- AT+BLEENCRSP: Respond to the pairing request from the peer device.
- AT+BLEKEYREPLY: Reply the key value to the peer device.
- AT+BLECONFREPLY: Reply the confirm value to the peer device in the legacy connection stage.
- AT+BLEENCDEV: Query bonded Bluetooth LE encryption device list.
- AT+BLEENCCLEAR: Clear Bluetooth LE encryption device list.
- AT+BLESETKEY: Set Bluetooth LE stATic pair key.
- AT+BLEPERIODICDATA: Set Bluetooth LE periodic advertising dATa.
- AT+BLEPERIODICSTART: Start Bluetooth LE periodic advertising.
- AT+BLEPERIODICSTOP: Stop Bluetooth LE periodic advertising.
- AT+BLESYNCSTART: Start to synchronize with periodic advertising.
- AT+BLESYNCSTOP: Stop synchronizing with periodic advertising.
- AT+BLEREADPHY: Query the current transmitter PHY.
- AT+BLESETPHY: Set the current transmitter PHY.
MQTT AT Commands
- AT+MQTTUSERCFG: Set MQTT user configuration.
- AT+MQTTLONGCLIENTID: Set MQTT client ID.
- AT+MQTTLONGUSERNAME: Set MQTT username.
- AT+MQTTLONGPASSWORD: Set MQTT password.
- AT+MQTTCONNCFG: Set configuration of MQTT connection.
- AT+MQTTALPN: Set MQTT Application Layer Protocol Negotiation (ALPN).
- AT+MQTTSNI: Set MQTT Server Name Indication (SNI).
- AT+MQTTCONN: Connect to MQTT Brokers.
- AT+MQTTPUB: Publish MQTT Messages in string.
- AT+MQTTPUBRAW: Publish long MQTT messages.
- AT+MQTTSUB: Subscribe to MQTT topics.
- AT+MQTTUNSUB: Unsubscribe from MQTT topics.
- AT+MQTTCLEAN: Close MQTT connections.
HTTP AT Commands
- AT+HTTPCLIENT: Send HTTP Client Request.
- AT+HTTPGETSIZE: Get HTTP Resource Size.
- AT+HTTPCGET: Get HTTP Resource.
- AT+HTTPCPOST: Post HTTP data of specified length.
- AT+HTTPCPUT: Put HTTP data of specified length.
- AT+HTTPURLCFG: Set/Get long HTTP URL.
- AT+HTTPCHEAD: Set/Query HTTP request headers.
User AT Commands
- AT+USERRAM: Operate user’s...
v3.2.0.0
v3.2.0.0 Release Notes
v3.2.0.0 is released for ESP32 and ESP32-C3. The changes since the previous version are as follows.
ESP32-AT
Documentation for Release v3.2.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.2.0.0/esp32/index.html
ESP32-AT v3.2.0.0 is a major update for ESP32-AT v2.4.0.0.
The firmwares:
- ESP32-WROOM-32-AT-V3.2.0.0.zip
- ESP32-SOLO-AT-V3.2.0.0.zip
- ESP32-PICO-D4-AT-V3.2.0.0.zip
- ESP32-MINI-1-AT-V3.2.0.0.zip
- ESP-AT will not release firmwares for ESP32 WROVER series
This is the list of changes since release v2.4.0.0:
Breaking Changes
esp-idf
version updated to release/v5.0 (24b9d38a)AT+SYSFLASH
: If you previously used v2.4.0.0 firmware and now directly flash v3.2.0.0 firmware, and MCU reads/writes parameters throughAT+SYSFLASH
command, the two versions will return different data, causing incompatibility (because v2.4.0.0 reads/writes parameters using partition method, while v3.2.0.0 uses NVS method). You can choose any of the following methods to resolve the compatibility issue:- Modify MCU code. For v2.4.0.0 firmware version, use
AT+SYSFLASH
command to read/write parameters; for v3.2.0.0 firmware version, useAT+SYSMFG
command to read/write parameters. - Upgrade to v3.2.0.0 firmware using
AT+USEROTA
orAT+CIUPDATE
command instead of directly flashing firmware. - Customize AT firmware. In the firmware released with v2.4.0.0, replace the esp-at.bin file with the esp-at.bin file from v3.1.0.0, and recompile it into a new 4MB firmware.
- Modify MCU code. For v2.4.0.0 firmware version, use
AT+RFPOWER
: The default value of ble tx power changed from 2 to 0
1. Feature
1.1 Wi-Fi
AT+CWSTAPROTO
andAT+CWAPPROTO
commands addedWIFI_PROTOCOL_LR
support- Added the
AT+CWINIT
command to init or deinit Wi-Fi AT+WEBSERVER
: Wi-Fi provisioning supports special characters in SSIDs and passwords
1.2 TCP/IP
- Added the
AT+CIPFWVER?
command to query firmware versions AT+CIUPDATE
: Added CDN network support- Added the
AT+TRANSINTVL
command to support configurable intervals in passthrough mode
1.3 Application Layer
- Added the
AT+MQTTLONGCLIENTID
command to set MQTT client ID - Added the
AT+MQTTLONGUSERNAME
command to set MQTT username - Added the
AT+MQTTLONGPASSWORD
command to set MQTT password - Added the
AT+HTTPCHEAD
commands to set more request headers - Added
AT+HTTPCPUT
command to put HTTP data of specified length AT+HTTPGETSIZE
: Added tx_size, rx_size, timeout parameters- Added WebSocket AT commands
AT+WEBSERVER
: Added the customized partition upgrade functionAT+CIPSNTPCFG
: Added timezone query and timezone set when SNTP was disabled
1.4 System
- Added the
AT+SYSMSGFILTER
andAT+SYSMSGFILTERCFG
commands to filter system messages - Added the
AT+USERWKMCUCFG
andAT+USERMCUSLEEP
commands to wake up MCU - Added
esp_at_get_para_as_float()
API to get the float type parameter
1.5 Bluetooth
AT+BLUFI
: BluFi supports getting AP lists and sending custom dataAT+BLEWL
: Added ble whitelist commandAT+BLUFINAME
: Modified maximum length of BluFi name to 29 bytesAT+SAVETRANSLINK
: Support Bluetooth LE passthrough modeAT+BLERDRSSI
: Support reading the RSSI of Bluetooth LE connection- Support sending exchange MTU requests when init server role
2. Bugfix
2.1 Wi-Fi
- Fixed that Wi-Fi mode was changed after waking up from deep sleep (
AT+GSLP
) - Fixed that
AT+CWQIF
fails to disconnect the station if connected by multiple stations - Fixed that
AT+CWJAP
returned the wrong reason code sometimes - Fixed the crash caused by frequently enabling and disabling web server (
AT+WEBSERVER
) - Fixed that Wi-Fi stopped reconnection if
AT+BLUFI
command was sent - Fixed the issue of occasional network configuration failure in smartconfig (due to the lack of SSID validity check, which resulted in incorrect Wi-Fi auto-connection after power-up, further terminating the smartconfig network configuration).
- Fixed a potential issue that SoftAP could not work if powered down when saving the SoftAP configurations
AT+CWJEAP
: Fixed the issue that theEAP-TLS
method does not work due to the last byte of PKI was not NULL terminated- Fixed that
AT+RFPOWER
command could not set ble tx power when Wi-Fi mode was 0
2.2 TCP/IP
- Fixed that
AT+CIPSTO
could not work in passthrough mode - Fixed that
AT+CIPTCPOPT
cannot work if AT works as a server - Fixed that
AT+CIPTCPOPT
query command may return the wrong keep-alive value - Added a workaround that
AT+CIPCLOSE
might block forever if ESP-AT works as a TCP client andSO_LINGER
option is set (due to the LwIP SO_LINGER issue in some cases) - Fixed that
AT+CIPRECVDATA
may cause a busy p issue - Fixed that
AT+CIPSSLCCONF
,AT+CIPSSLCCN
,AT+CIPSSLCSNI
,AT+CIPSSLCALPN
,AT+CIPSSLCPSK
,AT+CIPTCPOPT
returns multiple items in single connection - Fixed a type and remote host parameter unmatched issue in
AT+CIPSTART
command - Fixed a potential crash if the hostname length is bigger than 64 bytes in
AT+CIPSTART
command AT+CIPSEND
: Fixed a data sent issue due to the changed link_id- Fixed that
AT+CIUPDATE
returned ERROR if the OTA server returned too many OTA versions - Fixed that
AT+CIPSTART
could not establish multiple UDP transmissions on the same port - Fixed the issue of TLS connection failures caused by incorrect CN settings
- Fixed the issue of returning OK when setting
AT+CIPSERVER
twice
2.3 Application Layer
- Fixed that
AT+HTTPURLCFG?
returned the wrong URL - Fixed that
rx_size
parameter could not work when set to 0 inAT+HTTPCGET
command - Fixed that
AT+HTTPCPOST
response returns the wrong command name if appended more post data - Fixed the issue of AT blocking when MQTT broker actively closed MQTT client connection
2.4 System
- Fixed that busy p issue if an SSL connection was established and data was read in a weak network
- Fixed that GPIO32/GPIO33 could not work as UART pins due to conflict with the external 32 KHz crystal oscillator configuration
- Fixed that
esp_at_port_write_data()
crashed if input length < 0 - Fixed the high power consumption in light sleep if set the wake-up source
- Fixed the memory leak issue of
AT+FS
command SPI
: Fixed a global issue where incorrect length was returned when reading data by SPI (For example, AT+HTTPCPOST command cannot read out all the data from SPI due to wanted data length being returned instead of the actual data length)
2.5 Bluetooth
- Fixed that device name was missing in adv packets
- Fixed some BluFi issues
- Fixed the issue of occasional restart caused by the AT+BLEGATTCPRIMSRV=0 command
- Fixed the ble tx power set fail issue
2.6 Tools
- Fixed that factory firmware cannot be generated on Windows OS
build.py
: Installed compilation environment depends on the targetbuild.py
: Used the python of esp-idf environment instead of external deprecated pythonat.py
Support modifying manufacturing NVS
3. Optimization
- Refactored the storage mode of factory parameters to use the manufacturing NVS operation instead of partition operation. (see Why are we using manufacturing nvs way on the master? for more details)
- Simplified GitHub CI workflow
- Enabled power_management for the station when disconnected (Chip will do modem-sleep when rf module is not in use any more)
- Disable PMF to improve Wi-Fi compatibility when AT works in SoftAP mode
- Used Python to generate fatfs.bin instead of the deprecated mkfatfs component
- Support jihulab redirects in
build.py
- Migrated AT firmware resources from
download.espressif.com
server todl.espressif.com
server - Enhanced the documentation with the addition of more and detailed descriptions and addressed some document errors.
ESP32C3-AT
Documentation for Release v3.2.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.2.0.0/esp32c3/index.html
ESP32C3-AT v3.2.0.0 is a major update for ESP32C3-AT v2.4.2.0.
The firmwares:
This is the list of changes since release v2.4.2.0:
Breaking Changes
esp-idf
version updated to release/v5.0 (24b9d38a)AT+SYSFLASH
: If you previously used v2.4.0.0 firmware and now directly flash v3.2.0.0 firmware, and MCU reads/writes parameters throughAT+SYSFLASH
command, the two versions will return different data, causing incompatibility (because v2.4.0.0 reads/writes parameters using partition method, while v3.2.0.0 uses NVS method). You can choose any of the following methods to resolve the compatibility issue:- Modify MCU code. For v2.4.0.0 firmware version, use
AT+SYSFLASH
command to read/write parameters; for v3.2.0.0 firmware version, useAT+SYSMFG
command to read/write parameters. - Upgrade to v3.2.0.0 fir...
- Modify MCU code. For v2.4.0.0 firmware version, use
v3.1.0.0
ESP32-C2 AT Release v3.1.0.0
Documentation for Release v3.1.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.1.0.0/esp32c2/index.html
ESP32-C2 AT v3.1.0.0 is a major update for ESP32C2-AT v3.0.0.0.
Changelog
This is the list of changes since release v3.0.0.0:
Breaking Changes
AT+SYSFLASH
: If you previously used v3.0.0.0 firmware and now directly flash v3.1.0.0 firmware with 2MB or 4MB, and MCU reads/writes parameters throughAT+SYSFLASH
command, the two versions will return different data, causing incompatibility (because v3.0.0.0 reads/writes parameters using partition method, while v3.1.0.0 uses NVS method). You can choose any of the following methods to resolve the compatibility issue:- Modify MCU code. For v3.0.0.0 firmware version, use
AT+SYSFLASH
command to read/write parameters; for v3.1.0.0 firmware version, use AT+SYSMFG command to read/write parameters. - Upgrade to v3.1.0.0 firmware using AT+USEROTA or
AT+CIUPDATE
command instead of directly flashing 2MB or 4MB firmware. - Customize AT firmware. In the firmware released with v3.0.0.0, replace the esp-at.bin file with the esp-at.bin file from v3.1.0.0, and recompile it into a new 2MB or 4MB firmware.
- Modify MCU code. For v3.0.0.0 firmware version, use
Known Issue
- Cannot set ble tx power.
- Wi-Fi and Bluetooth commands cannot be used at the same time due to lack of ram.
- The time obtained by SNTP will be reset to 1970 after the chip soft restart.
1. Feature
Basic AT Commands
- Added
AT+RST
setup command to enable the chip to enter firmware downloading mode. AT+SYSMSGFILTER
: Enable or disable the system message filter.AT+SYSMSGFILTERCFG
: Query/Set the system message filters.AT+SYSMFG
: Query/Set manufacturing NVS User Partitions.- Added
AT+TRANSINTVL
command to support configurable interval in passthrough mode.
Wi-Fi AT Commands
TCP/IP AT Commands
AT+CIUPDATE
supports CDN network
Bluetooth® Low Energy AT Commands (ESP32C2-4MB only)
The following commands are not supported in default ESP32C2-4MB firmware, but you can enable them according to guide.
AT+BLEINIT
: Bluetooth LE initialization.AT+BLEADDR
: Query/Set Bluetooth LE device address.AT+BLENAME
: Query/Set Bluetooth LE device name.AT+BLESCANPARAM
: Query/Set parameters of Bluetooth LE scanning.AT+BLESCAN
: Enable Bluetooth LE scanning.AT+BLESCANRSPDATA
: Set Bluetooth LE scan response.AT+BLEADVPARAM
: Query/Set parameters of Bluetooth LE advertising.AT+BLEADVDATA
: Set Bluetooth LE advertising data.AT+BLEADVDATAEX
: Automatically set Bluetooth LE advertising data.AT+BLEADVSTART
: Start Bluetooth LE advertising.AT+BLEADVSTOP
: Stop Bluetooth LE advertising.AT+BLECONN
: Establish Bluetooth LE connection.AT+BLECONNPARAM
: Query/Update parameters of Bluetooth LE connection.AT+BLEDISCONN
: End Bluetooth LE connection.AT+BLECFGMTU
: Set Bluetooth LE MTU length.AT+BLEGATTSSRV
: GATTS discovers services.AT+BLEGATTSCHAR
: GATTS discovers characteristics.AT+BLEGATTSNTFY
: Notify a client of the value of a characteristic value from the server.AT+BLEGATTSIND
: Indicate the characteristic value from the server to a client.AT+BLEGATTSSETATTR
: GATTS sets characteristics.AT+BLEGATTCPRIMSRV
: Generic Attributes Client (GATTC) discovers primary services.AT+BLEGATTCINCLSRV
: GATTC discovers included services.AT+BLEGATTCCHAR
: GATTC discovers characteristics.AT+BLEGATTCRD
: GATTC reads characteristics.AT+BLEGATTCWR
: GATTC writes characteristics.AT+BLESPPCFG
: Query/Set Bluetooth LE SPP parameters.AT+BLESPP
: Enter Bluetooth LE SPP mode.AT+BLESECPARAM
: Query/Set Bluetooth LE encryption parameters.AT+BLEENC
: Initiate Bluetooth LE encryption request.AT+BLEKEYREPLY
: Reply the key value to the peer device.AT+BLECONFREPLY
: Reply the confirm value to the peer device in the legacy connection stage.AT+BLEENCDEV
: Query bonded Bluetooth LE encryption device list.AT+BLEENCCLEAR
: Clear Bluetooth LE encryption device list.AT+BLESETKEY
: Set Bluetooth LE static pair key.
MQTT AT Commands
HTTP AT Commands (ESP32C2-4MB only)
AT+HTTPCHEAD
: Set/Query HTTP request headers.
User AT Commands
WebSocket AT Commands
The following commands are not supported in default ESP32C2-4MB firmware, but you can enable them according to guide.
AT+WSCFG
: Set the WebSocket configuration.AT+WSOPEN
: Query/Open a WebSocket connection.AT+WSSEND
: Send data to a WebSocket connection.AT+WSCLOSE
: Close a WebSocket connection.
2. Bugfix
Basic AT Commands
- Fixed the high power consumption if the wake-up was set.
Wi-Fi AT Commands
- Fixed that Wi-Fi could not auto-reconnect after
AT+BLUFI
command was sent.
TCP/IP AT Commands
- Fixed the potential crash if the hostname length was greater than or equal to 64 bytes.
- Fixed that UDP could not establish multiple connections on the same port.
- Fixed that TLS connection could not be established due to no SNI.
- Fixed the issue of returning OK when setting
AT+CIPSERVER
command for the second time with a different configuration.
Bluetooth® Low Energy AT Commands (ESP32C2-4MB only)
- Fixed that BluFi could not set the device name.
- Fixed that BluFi could not encrypt customer data.
MQTT AT Commands
- Fixed the memory leak when MQTT used a long client ID, username, or password.
User AT Commands
3. Optimization
- Provided more free heap size for users.
- For 2MB flash size: free heap size increased from 83068 bytes to 98248 bytes. (About 15 KB)
- For 4MB flash size: free heap size increased from 59628 bytes to 74964 bytes. (About 15 KB)
- Refactored the storage mode of factory parameters to use the manufacturing NVS operation instead of partition operation. (This optimization is compatible with previous firmware versions and does not affect the functionality after upgrading via OTA for users, except for the AT+SYSFLASH command.)
- Added the parameters validity check for
AT+RFPOWER
command.
v3.0.0.0
ESP32-C2 AT Release v3.0.0.0
Documentation for Release v3.0.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v3.0.0.0/esp32c2/index.html
The firmwares:
ESP32-C2-4MB_AT_Bin_V3.0.0.0.zip
ESP32-C2-2MB_AT_Bin_V3.0.0.0.zip
ESP32-C2 AT v3.0.0.0 is the first released version of AT firmware for ESP32-C2.
Feature
Basic AT Commands
- AT: Test AT startup.
- AT+RST: Restart a module.
- AT+GMR: Check version information.
- AT+CMD: List all AT commands and types supported in current firmware.
- AT+GSLP: Enter Deep-sleep mode.
- ATE: Configure AT commands echoing.
- AT+RESTORE: Restore factory default settings of the module.
- AT+UART_CUR: Current UART configuration, not saved in flash.
- AT+UART_DEF: Default UART configuration, saved in flash.
- AT+SLEEP: Set the sleep mode.
- AT+SYSRAM: Query current remaining heap size and minimum heap size.
- AT+SYSMSG: Query/Set System Prompt Information.
- AT+SYSFLASH: Query/Set User Partitions in Flash.
- AT+RFPOWER: Query/Set RF TX Power.
- AT+SYSROLLBACK: Roll back to the previous firmware. (ESP32C2-4MB only)
- AT+SYSTIMESTAMP: Query/Set local time stamp.
- AT+SYSLOG: Enable or disable the AT error code prompt.
- AT+SLEEPWKCFG: Query/Set the light-sleep wakeup source and awake GPIO.
- AT+SYSSTORE: Query/Set parameter store mode.
- AT+SYSREG: Read/write the register.
Wi-Fi AT Commands
- AT+CWMODE: Set the Wi-Fi mode (Station/SoftAP/Station+SoftAP).
- AT+CWSTATE: Query the Wi-Fi state and Wi-Fi information.
- AT+CWJAP: Connect to an AP.
- AT+CWRECONNCFG: Query/Set the Wi-Fi reconnecting configuration.
- AT+CWLAPOPT: Set the configuration for the command AT+CWLAP.
- AT+CWLAP: List available APs.
- AT+CWQAP: Disconnect from an AP.
- AT+CWSAP: Query/Set the configuration of an ESP SoftAP.
- AT+CWLIF: Obtain IP address of the station that connects to an ESP SoftAP.
- AT+CWQIF: Disconnect stations from an ESP SoftAP.
- AT+CWDHCP: Enable/disable DHCP.
- AT+CWDHCPS: Query/Set the IP addresses allocated by an ESP SoftAP DHCP server.
- AT+CWAUTOCONN: Connect to an AP automatically when powered on.
- AT+CWAPPROTO: Query/Set the 802.11 b/g/n protocol standard of SoftAP mode.
- AT+CWSTAPROTO: Query/Set the 802.11 b/g/n protocol standard of station mode.
- AT+CIPSTAMAC: Query/Set the MAC address of an ESP station.
- AT+CIPAPMAC: Query/Set the MAC address of an ESP SoftAP.
- AT+CIPSTA: Query/Set the IP address of an ESP station.
- AT+CIPAP: Query/Set the IP address of an ESP SoftAP.
- AT+CWSTARTSMART: Start SmartConfig.
- AT+CWSTOPSMART: Stop SmartConfig.
- AT+WPS: Enable the WPS function.
- AT+MDNS: Configure the mDNS function.
- AT+CWHOSTNAME: Query/Set the host name of an ESP station.
- AT+CWCOUNTRY: Query/Set the Wi-Fi Country Code.
TCP/IP AT Commands
- AT+CIPV6: Enable/disable the network of Internet Protocol Version 6 (IPv6).
- AT+CIPSTATUS: Obtain the TCP/UDP/SSL connection status and information.
- AT+CIPDOMAIN: Resolve a Domain Name.
- AT+CIPSTART: Establish TCP connection, UDP transmission, or SSL connection.
- AT+CIPSTARTEX: Establish TCP connection, UDP transmission, or SSL connection with an automatically assigned ID.
- [Passthrough Mode Only] +++: Exit the passthrough mode.
- AT+CIPSEND: Send data in the normal transmission mode or Wi-Fi passthrough mode.
- AT+CIPSENDL: Send long data in paraller in the normal transmission mode.
- AT+CIPSENDLCFG: Set the configuration for the command AT+CIPSENDL.
- AT+CIPSENDEX: Send data in the normal transmission mode in expanded ways.
- AT+CIPCLOSE: Close TCP/UDP/SSL connection.
- AT+CIFSR: Obtain the local IP address and MAC address.
- AT+CIPMUX: Enable/disable the multiple connections mode.
- AT+CIPSERVER: Delete/create a TCP/SSL server.
- AT+CIPSERVERMAXCONN: Query/Set the maximum connections allowed by a server.
- AT+CIPMODE: Query/Set the transmission mode.
- AT+SAVETRANSLINK: Set whether to enter Wi-Fi passthrough mode on power-up.
- AT+CIPSTO: Query/Set the local TCP Server Timeout.
- AT+CIPSNTPCFG: Query/Set the time zone and SNTP server.
- AT+CIPSNTPTIME: Query the SNTP time.
- AT+CIPSNTPINTV: Query/Set the SNTP time synchronization interval.
- AT+CIPFWVER: Query the existing AT firmware version on the server.
- AT+CIUPDATE: Upgrade the firmware through Wi-Fi.
- AT+CIPDINFO: Set “+IPD” message mode.
- AT+CIPSSLCCONF: Query/Set SSL clients.
- AT+CIPSSLCCN: Query/Set the Common Name of the SSL client.
- AT+CIPSSLCSNI: Query/Set SSL client Server Name Indication (SNI).
- AT+CIPSSLCALPN: Query/Set SSL client Application Layer Protocol Negotiation (ALPN).
- AT+CIPSSLCPSK: Query/Set SSL client Pre-shared Key (PSK).
- AT+CIPRECONNINTV: Query/Set the TCP/UDP/SSL reconnection interval for the Wi-Fi passthrough mode.
- AT+CIPRECVMODE: Query/Set socket receiving mode.
- AT+CIPRECVDATA: Obtain socket data in passive receiving mode.
- AT+CIPRECVLEN: Obtain socket data length in passive receiving mode.
- AT+PING: Ping the remote host.
- AT+CIPDNS: Query/Set DNS server information.
- AT+CIPTCPOPT: Query/Set the socket options.
Bluetooth® Low Energy AT Commands (ESP32C2-4MB only)
- AT+BLUFI: Start or Stop BluFi.
- AT+BLUFINAME: Query/Set BluFi device name.
- AT+BLUFISEND: Send user-customized data over BluFi.
MQTT AT Commands
- AT+MQTTUSERCFG: Set MQTT user configuration
- AT+MQTTLONGCLIENTID: Set MQTT client ID
- AT+MQTTLONGUSERNAME: Set MQTT username
- AT+MQTTLONGPASSWORD: Set MQTT password
- AT+MQTTCONNCFG: Set configuration of MQTT connection
- AT+MQTTALPN: Set MQTT Application Layer Protocol Negotiation (ALPN)
- AT+MQTTCONN: Connect to MQTT Brokers
- AT+MQTTPUB: Publish MQTT Messages in string
- AT+MQTTPUBRAW: Publish MQTT messages in binary
- AT+MQTTSUB: Subscribe to MQTT topics
- AT+MQTTUNSUB: Unsubscribe from MQTT topics
- AT+MQTTCLEAN: Close MQTT connections
HTTP AT Commands (ESP32C2-4MB only)
- AT+HTTPCLIENT: Send HTTP Client Request
- AT+HTTPGETSIZE: Get HTTP Resource Size
- AT+HTTPCGET: Get HTTP Resource
- AT+HTTPCPOST: Post HTTP data of specified length
- AT+HTTPCPUT: Put HTTP data of specified length
- AT+HTTPURLCFG: Set/Get long HTTP URL
User AT Commands
- AT+USERRAM: Operate user’s free RAM.
- AT+USEROTA: Upgrade the firmware according to the specified URL.
- AT+USERWKMCUCFG: Configure how AT wakes up MCU.
- AT+USERMCUSLEEP: MCU indicates its sleep state.
- AT+USERDOCS: Query the ESP-AT user guide for current firmware.
v2.4.2.0
v2.4.2.0 Release Notes
v2.4.2.0 is released for ESP32-C3. The changes since the v2.4.1.0 are as follows.
ESP32C3-AT
Documentation for Release v2.4.2.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v2.4.0.0/esp32c3/index.html.
ESP32C3-AT v2.4.2.0 is a minor update for ESP32C3-AT v2.4.1.0.
The firmware:
ESP32-C3-MINI-1_AT_Bin_V2.4.2.0.zip
This is the list of changes since release v2.4.1.0:
Known Issue
If ESP-AT works as a TCP client and SO_LINGER option is set, AT+CIPCLOSE may trigger a module to restart due to the LwIP SO_LINGER issue in some cases.
Bugfix
- Fixed that Wi-Fi mode was changed after deep sleep
- Disabled the external 32 KHz oscillator as a workaround to avoid unstable Bluetooth LE connection
v2.4.1.0
v2.4.1.0 Release Notes
v2.4.1.0 is released for ESP32-C3. The changes since the previous version are as follows.
ESP32C3-AT
Documentation for Release v2.4.1.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v2.4.0.0/esp32c3/index.html.
ESP32C3-AT v2.4.1.0 is a minor update for ESP32C3-AT v2.4.0.0.
This is the list of changes since release v2.4.0.0:
Bugfix
- Fixed that
espblufi
APP could not scan the esp device due to the lost device name in advertisement packets. - Fixed the WDT crash when BLE advertisement was started with invalid parameters.
v2.4.0.0
v2.4.0.0 Release Notes
v2.4.0.0 is released for ESP32 and ESP32-C3. The changes since the previous version are as follows.
ESP32-AT
Documentation for Release v2.4.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v2.4.0.0/esp32/index.html
ESP32-AT v2.4.0.0 is a major update for ESP32-AT v2.2.0.0.
This is the list of changes since release v2.2.0.0:
Breaking Changes
esp-idf
version updated to release v4.3 (588436db)BT A2DP
: modified default I2S_DATA_PIN fromGPIO33
toGPIO25
(due to pin conflicts with 32 kHz crystal oscillator when using BLE light sleep)AT+CWJAP
: default <pmf> parameter is modified from 0 to 1 to improve Wi-Fi security as much as possibleAT+RFPOWER
: default BLE tx power parameters are modified from 0 to 2
Known Issue
- Sometimes a crash occurs before restarting when implementing
AT+RST
andAT+RESTORE
command - The power consumption in Deep-sleep mode is larger than the previous version in the default firmware. (You can revert it by disabling CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS, if you do not use BLE light sleep)
1. Feature
1.1 Wi-Fi
- Added
AT+CWSTATE
command to query Wi-Fi state AT+CWSTARTSMART
: added support for ESP-TouchAT+CWLAP
: added support for WAPI authmode- Support multiple phy data (use different RF parameters according to the country code you set)
1.2 TCP/IP
- Enlarged send size of
AT+CIPSEND
command to 8 KiB - Added
AT+CIPSTATE
command to query connection state - Added
AT+CIPSENDL
andAT+CIPSENDLCFG
commands to support long data send - Support for passthrough mode when AT works as a server with only one connection
- Enabled Mbed TLS memory alloc from external RAM for ESP32-WROVER module
AT+CIPTCPOPT
: Added the <keep-alive> parameterAT+CIPSSLCCONF
: Support more than 5 sets of ca certificates
1.3 Application Layer
- Added
AT+MQTTALPN
command to support MQTT ALPN - Added
AT+HTTPURLCFG
command to configure long URL - Added
AT+HTTPCGET
command to support HTTP GET request AT+HTTPCLIENT
: <content-type> parameter can be omitted- Added
AT+CIPSNTPINTV
command to configure SNTP sync interval - Added
AT+USEROTA
command to support the upgrade of custom URL - Added fallback DNS server. AT has two DNS servers ("208.67.222.222" and "8.8.8.8") by default.
- Added
AT+USERDOCS
command to query the ESP-AT user guide for the running firmware.
1.4 System
- Added
AT+SLEEP
query command - Enabled external 32 kHz crystal to support BLE light sleep by default
- AT+RFPOWER: Wi-Fi tx power parameter can be omitted now
- Support ESP32 SDIO module
1.5 Bluetooth
- Support disabling BLE SPP auto-conn mode
- Support setting BLE HID name
- Support filtering scan result
1.6 Documentation
- Support choosing different docs depends on different targets
- Moved FAQ documents from ESP-FAQ to ESP-AT-FAQ
- Moved CSDN documentd about AT to ESP-AT
- Added more documents and improve document quality
2. Bugfix
2.1 Wi-Fi
- Fixed that AT+CWLAP returned ERROR sometimes.
- Fixed that AT+CWJAP returned wrong errno sometimes.
- Fixed an issue of auto connecting to WPA2 Enterprise AP. Users should always use AT+CWJEAP to connect to an WPA2 Enterprise AP.
- Fixed a potential crash when the length of SSID is 32 bytes or password is 64 bytes.
2.2 TCP/IP
- Fixed that AT+CIPSERVER=0,1 should only close clients connected to ESP TCP server.
- Fixed active write TCP data in passive mode.
- Fixed occasional crash in passthrough mode due to socket close.
- Fixed that
OK
and>
responses were interrupted by other data. - Fixed that AT+CIPSERVER=5 returned "Have 255 Connections".
- Fixed that AT+CIPTCPOPT send timeout parameter could not work sometimes.
- Fixed potential illegal assignment of AT+CIPTCPOPT command in multiple connection.
- AT+CIUPDATE: fixed the failure to do non-blocking OTA due to omitted parameters.
- Fixed that AT+CIPSTO did not reset the timer when data was sent
- Fixed that ssl connection was disconnected after receiving some data in passive read mode
- Fixed that AT+CIPSSLCPSK command could not work
- Fixed that AT+CIPSSLCCN and AT+CIPSSLCSNI maximum parameter length cannot be set to 64
2.3 Application Layer
- AT+HTTPCPOST: Fixed that the new content-type did not take effect becasue the default content-type was set incorrectly.
- Removed extra space in AT+HTTPCLIENT HEAD response.
- Fixed that AT+CIPDNS query command returned wrong config.
- Fixed the crash caused by setting wrong URLs in AT+HTTPCLIENT.
2.4 System
- Fixed a potential "busy p" issue.
- Fixed the issue of high power consumption after power on when set
AT+CWMODE=0
. - Fixed the crash caused by setting the invalid GPIO wakeup config
- Fixed UART data blocks when the UART event notify is missing
- Fixed that socket interface of AT always returned
busy p
- Fixed that UART1 printed extra chars during light sleep
2.5 Bluetooth
- Fixed BLE service discovery failure
- Fixed Classic Bluetooth build failure
- Fixed the failure to initiate BLE connection
- Fixed the format of response returned by AT+BLEENCDEV
- Fixed send indication failure
- Fixed the crash caused by BLE connection failure
- Fixed losing data over BLE SPP
- Fixed BT SPP memory leak
2.6 Tools
- Added utility tool
at.py
to modify the parameter configuration of factory firmware
3. Optimization
- Simplified esp-at build. Now, you can use
./build.py install
to install all environments, and use./build.py build
to build the project. - Added parameter check for AT+WPS command.
- Added parameter check for AT+CIPSERVER command.
- Added parameter check for AT+CIPTCPOPT command.
- Reduced potential NVS write at startup when NVS read the dirty data.
ESP32C3-AT
Documentation for Release v2.4.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v2.4.0.0/esp32c3/index.html
ESP32C3-AT v2.4.0.0 is a major update for ESP32C3-AT v2.3.0.0.
This is the list of changes since release v2.3.0.0:
Breaking Changes
esp-idf
version updated to release v4.3 (588436db)AT+CWJAP
: default <pmf> parameter is modified from 0 to 1 to improve Wi-Fi security as much as possibleAT+RFPOWER
: default BLE tx power parameters are modified from 0 to 2- The
AT+BLEADVPARAM
command must be set before theAT+BLEADVDATA
command (previous version does not have such a limit)
Known Issue
- The power consumption in Deep-sleep mode is larger than the previous version in the default firmware. (You can revert it by disabling CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS, if you do not use BLE light sleep.)
1. Feature
1.1 Wi-Fi
- Support multiple phy data (use different RF parameters according to the country code you set)
1.2 TCP/IP
AT+CIPTCPOPT
: Added the <keep-alive> parameterAT+CIPSSLCCONF
: Support more than 5 sets of ca certificates
1.3 Application Layer
- Added AT+USERDOCS command to query the ESP-AT user guide for the running firmware.
1.4 System
- AT+RFPOWER: Wi-Fi tx power parameter can be omitted now
- Support ESP32-C3 SPI module
1.5 Bluetooth
- Support disabling BLE SPP auto-conn mode
- Support setting BLE HID name
- Support filtering scan result
- Support BLE 5.0 features
1.6 Documentation
- Support choosing different docs depends on different targets
- Moved the FAQ document from ESP-FAQ to ESP-AT-FAQ
- Moved CSDN documents about AT to ESP-AT
- Added more documents and improve document quality
2. Bugfix
2.1 Wi-Fi
- No bugfix
2.2 TCP/IP
- Fixed that AT+CIPSTO did not reset the timer when data was sent
- Fixed occasional failure when AT+CIPSERVERMAXCONN=5 was set
- Fixed that ssl connection was disconnected after receiving some data in passive read mode
- Fixed that AT+CIPSSLCPSK command could not work
- Fixed occasional print of
0,CONNECT
in passthrough mode - Fixed potential illegal assignment of AT+CIPTCPOPT command in multiple connection
- Fixed that extra data output if tcp client reconnected when esp-at works as a tcp server in passthrough mode
- Fixed that AT+CIPSSLCCN and AT+CIPSSLCSNI maximum parameter length cannot be set to 64
2.3 Application Layer
- No bugfix
2.4 System
- Fixed the crash caused by setting the invalid GPIO wakeup config
- Fixed that socket interface of AT always returned
busy p
- Fixed the crash when an invalid parameter was set for AT+DRVADV command
- Fixed that UART1 printed extra chars during light sleep
2.5 Bluetooth
- Fixed BLE service discovery failure
- Fixed the failure to initiate BLE connection
- Fixed the format of response returned by AT+BLEENCDEV command
- Fixed send indication failure
- Fixed the crash caused by BLE connection failure
- Fixed losing data over BLE SPP
2.6 Tools
- Added utility tool
at.py
to modify the parameter configuration of factory firmware
3. Optimization
- Simplified esp-at build. Now, you can use
./build.py install
to install all environments and use./build.py build
to build the project. - Added the coexistence check for AT+CIPMODE, AT+CIPSTART, and AT+CIPSERVER command.