Esp At Versions Save

AT application for ESP32/ESP32-C2/ESP32-C3/ESP32-C6/ESP8266

v4.0.0.0

4 months ago

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 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.

v3.2.0.0

9 months ago

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:

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 through AT+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, use AT+SYSMFG command to read/write parameters.
    • Upgrade to v3.2.0.0 firmware using AT+USEROTA or AT+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.
  • AT+RFPOWER: The default value of ble tx power changed from 2 to 0

1. Feature

1.1 Wi-Fi

  • AT+CWSTAPROTO and AT+CWAPPROTO commands added WIFI_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 function
  • AT+CIPSNTPCFG: Added timezone query and timezone set when SNTP was disabled

1.4 System

  • Added the AT+SYSMSGFILTER and AT+SYSMSGFILTERCFG commands to filter system messages
  • Added the AT+USERWKMCUCFG and AT+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 data
  • AT+BLEWL: Added ble whitelist command
  • AT+BLUFINAME: Modified maximum length of BluFi name to 29 bytes
  • AT+SAVETRANSLINK: Support Bluetooth LE passthrough mode
  • AT+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 the EAP-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 and SO_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 in AT+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 target
  • build.py: Used the python of esp-idf environment instead of external deprecated python
  • at.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 to dl.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 through AT+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, use AT+SYSMFG command to read/write parameters.
    • Upgrade to v3.2.0.0 firmware using AT+USEROTA or AT+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.
  • AT+RFPOWER: The default value of ble tx power changed from 10 to 11

1. Feature

1.1 Wi-Fi

  • AT+CWSTAPROTO and AT+CWAPPROTO commands added WIFI_PROTOCOL_LR support
  • Added the AT+CWINIT command to init or deinit Wi-Fi
  • AT+WEBSERVER: Wi-Fi provisioning supports the special character in SSID and password

1.2 TCP/IP

  • 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+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 function
  • AT+CIPSNTPCFG: Added timezone query and timezone set when SNTP was disabled
  • Added RainMaker AT Commands and Firmware

1.4 System

  • Added the AT+SYSMSGFILTER and AT+SYSMSGFILTERCFG commands to filter system messages
  • Added the AT+RST setup command to set the chip to enter normal running mode or firmware downloading mode

1.5 Bluetooth

  • AT+BLUFI: BluFi supports getting AP lists and sending custom data
  • AT+BLEWL: Added Bluetooth LE whitelist command
  • AT+BLUFINAME: Modified maximum length of Blu-Fi name to 29 bytes
  • AT+SAVETRANSLINK: Support Bluetooth LE passthrough mode
  • AT+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 AT+CWQIF fails to disconnect the station if connected by multiple stations
  • Fixed that AT+CWJAP returned the wrong reason code sometimes
  • Fixed a crash caused by frequently enabling and disabling web server (AT+WEBSERVER)
  • Fixed that Wi-Fi stopped reconnection if sent AT+BLUFI command
  • 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 cannot work if powered down when saving the SoftAP configurations
  • AT+CWJEAP: Fixed the issue that the EAP-TLS method does not work due to the last byte of PKI not NULL terminated
  • Fixed that AT+RFPOWER command cannot set ble tx power when Wi-Fi mode is 0

2.2 TCP/IP

  • Added a workaround that AT+CIPCLOSE might block forever if ESP-AT works as a TCP client and SO_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 hostname length is bigger than 64 bytes in AT+CIPSTART command
  • AT+CIPSEND: Fixed a data sent issue due to changed link_id
  • Fixed that AT+CIUPDATE returns ERROR if the OTA server returned too many ota versions
  • Fixed that AT+CIPSTART cannot 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+HTTPCPOST response returns the wrong command name if appended more post data
  • Fixed an issue of AT blocking when the MQTT broker actively closes MQTT client connection
  • Fixed a memory leak issue when using AT+MQTTLONGCLIENTID, AT+MQTTLONGUSERNAME, or AT+MQTTLONGPASSWORD command

2.4 System

  • Fixed that busy p issue if established an SSL connection and read data in a weak network
  • 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 the second BluFi net config failed if BluFi net config failed the first time
  • Fixed the ble tx power set fail issue

2.6 Tools

  • build.py: Installed compilation environment depends on the target
  • build.py: Used the python of esp-idf environment instead of external deprecated python
  • at.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
  • 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 to dl.espressif.com server
  • Disabled the JTAG function to support flashing the firmware by USB
  • Enhanced the documentation with the addition of more and detailed descriptions and addressed some document errors.

v3.1.0.0

11 months ago

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

The firmwares: ESP32-C2-4MB-V3.1.0.0.zip ESP32-C2-2MB-V3.1.0.0.zip

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 through AT+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.

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

1 year ago

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

1 year ago

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

1 year ago

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.

The firmware:

ESP32-C3-MINI-1_AT_Bin_V2.4.1.0.zip

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

1 year ago

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.

The firmwares: ESP32-WROOM-32_AT_Bin_V2.4.0.0.zip ESP32-WROVER_AT_Bin_V2.4.0.0.zip ESP32-SOLO_AT_Bin_V2.4.0.0.zip ESP32-PICO-D4_AT_Bin_V2.4.0.0.zip ESP32-MINI-1_AT_Bin_V2.4.0.0.zip

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 from GPIO33 to GPIO25 (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 possible
  • AT+RFPOWER: default BLE tx power parameters are modified from 0 to 2

Known Issue

  • Sometimes a crash occurs before restarting when implementing AT+RST and AT+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-Touch
  • AT+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 and AT+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> parameter
  • AT+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.

The firmwares: ESP32-C3-MINI-1_AT_Bin_V2.4.0.0.zip

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 possible
  • AT+RFPOWER: default BLE tx power parameters are modified from 0 to 2
  • The AT+BLEADVPARAM command must be set before the AT+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> parameter
  • AT+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.

v2.3.0.0_esp32c3

2 years ago

ESP32-C3 AT Release v2.3.0.0

Documentation for Release v2.3.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v2.3.0.0_esp32c3/

ESP32-C3 AT v2.3.0.0 is a major update for ESP32-C3 AT v2.2.0.0.

The firmwares: ESP32-C3-MINI-1_AT_Bin_V2.3.0.0.zip

Changelog

This is the list of changes since release v2.2.0.0:

Breaking Changes

  • esp-idf version updated to release v4.3 (98d34e5).

Known Issue

  • AT+WPS=1 cannot join the AP if you press the WPS button first and then set the AT+WPS=1 command.

1. Feature

1.1 Wi-Fi

  • Added AT+CWSTATE command to query Wi-Fi state
  • AT+CWSTARTSMART: Added ESP-Touch v2 support

1.2 TCP/IP

  • Enlarged AT+CIPSEND command send size to 8 KiB
  • Added AT+CIPSTATE command to query connection state
  • Added AT+CIPSENDL and AT+CIPSENDLCFG command to support long data send
  • Added passthrough mode support when AT as server but only have one connection

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

1.4 System

  • Added AT+SLEEP query command
  • Configured external 32 KHz crystal to support light sleep
  • Modified ESP32-C3 partition for silence mode to accommodate larger firmware

1.6 Bluetooth

Added the following Bluetooth® Low Energy AT Commands. If you upgraded to v2.3.0.0 from v2.2.0.0, please update ble_data partition according the guide before you use Bluetooth LE.

  • AT+RFPOWER command added BLE power set.
  • 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+BLEGATTSSRVCRE: Generic Attributes Server (GATTS) creates services.
  • AT+BLEGATTSSRVSTART: GATTS starts services.
  • AT+BLEGATTSSRVSTOP: GATTS Stops Services.
  • 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+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+BLEHIDINIT: Bluetooth LE Human Interface Device (HID) profile initialization.
  • AT+BLEHIDKB: Send Bluetooth LE HID keyboard information.
  • AT+BLEHIDMUS: Send Bluetooth LE HID mouse information.
  • AT+BLEHIDCONSUMER: Send Bluetooth LE HID consumer information.
  • AT+BLUFI: Start or Stop BluFi.
  • AT+BLUFINAME: Query/Set BluFi device name.

2. Bugfix

2.1 Wi-Fi

  • Fixed that AT+CWLAP returned ERROR sometimes.
  • Fixed that AT+CWJAP returned wrong error sometimes.
  • Fixed an issue of auto connecting to WPA2 Enterprise AP. Users should always use AT+CWJEAP to connect to a 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 that active write TCP data in passive mode.
  • Fixed occasional crash in passthrough mode due to socket close.
  • Fixed that OK and > responses are interrupted by other data.
  • Fixed that setup AT+CIPSERVER=5 returned "Have 255 Connections".
  • Fixed that AT+CIPTCPOPT send timeout parameter cannot work sometimes.
  • AT+CIUPDATE: Fixed the failure to do non-blocking OTA due to omitted parameters.

2.3 Application Layer

  • AT+HTTPCPOST: Fixed that the new content-type did not take effect due to 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.

2.5 Tools

  • Fixed the GitHub Actions compilation failure due to required python packages.

3. Optimization

  • Added parameters check for AT+WPS command.
  • Added parameters check for AT+CIPSERVER command.
  • Added parameters check for AT+CIPTCPOPT command.
  • Reduced potential NVS write at startup when NVS read the dirty data.
  • Use esp-netif and esp-event to layer instead of tcpip adapter.

v2.2.1.0_esp8266

2 years ago

ESP8266 AT Release v2.2.1.0

Documentation for v2.2.1.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v2.2.0.0_esp8266/ You can download the firmwares to use them, which support OTA from espressif‘s server.

ESP8266-IDF-AT_V2.2.1.0.zip

ESP-AT v2.2.1.0 is a minor update for ESP-AT v2.2.0.0.

Changelog

This is the list of changes since release v2.2.0.0:

Known Issue

  • AT+CWQIF: AT+CWQIF could not output "+STA_DISCONNECTED" prompt

1. Feature

  • ESP8266_RTOS_SDK version updated to release v3.4 (d92d00e)
  • Set flash mode to DOUT for ESP8266/ESP8285 1MB configuration based on compatibility

2. Bugfix

  • Fixed ./build.py menuconfig returned error
  • Fixed the issue that AT+HTTPCPOST set content-type request header did not take effect

v2.2.0.0_esp32

2 years ago

v2.2.0.0 [ESP32 AT]

ESP32-AT Release v2.2.0.0

Documentation for v2.2.0.0 is available at https://docs.espressif.com/projects/esp-at/en/release-v2.2.0.0_esp32/ You can download the firmwares to use them, which support OTA from espressif‘s server.

ESP32-WROOM_AT_V2.2.0.0.zip ESP32-WROVER_AT_V2.2.0.0.zip ESP32-SOLO_AT_V2.2.0.0.zip ESP32-PICO-D4_AT_V2.2.0.0.zip ESP32-MINI-1_AT_Bin_V2.2.0.0.zip

ESP32-AT v2.2.0.0 is a major update for ESP32-AT v2.1.0.0.

Changelog

This is the list of changes since release v2.1.0.0:

Breaking Changes

  • esp-idf version updated to release v4.2 (efa6eca)
  • Compiler upgraded from v5.2.0 to v8.4.0
  • AT+CIPDOMAIN: Double quotation marks are added to the string parameters in the response
  • AT+BLESCAN: Double quotation marks are added to the mac address parameter in the response
  • AT commands supports IPv6 network now

Known Issue

  • Before start the softAP, AT+DHCP=0,2 command cannot disable DHCP (please disable DHCP after the softAP started)
  • It may fail to create BT connection again after BT disconnect

1. Feature

1.1 Wi-Fi

  • AT+CWRECONNCFG: Support to configure Wi-Fi reconnect interval and maximum retry times
  • AT+CWLAPOPT: Support to filter the scanned result by rssi and authmode
  • AT+CWJAP: Limit the range of listen interval to [1, 100]
  • AT+WPS: Support authmode floor configuration
  • AT+CWSMARTSTART: Support authmode floor configuration
  • AT+CWLAP: Support the information of 802.11 b/g/n in the response
  • AT+CWJAP: Support to configure timeout and pmf, and connect the last recorded AP
  • AT+CWSTATE: New Command to query Wi-Fi state

1.2 TCP/IP

  • AT+SYSMSG: Extended BIT2 parameter for passthrough mode
  • AT+CIUPDATE: Support to upgrade custom partitions and asynchronous OTA
  • AT+PING: Added an error message TIMEOUT for incorrect DNS
  • Modified tcp mss and wnd to improve compatibility
    • Modified tcp wnd, from 5744 to 5760
    • Modified tcp snd buf, from 5744 to 5760
  • Disabled setting AT+CIPSSLCCN, AT+CIPSSLCSNI, AT+CIPSSLCALPN, AT+CIPSSLCPSK if the link is already connected
  • AT+CIPSERVER: Added close_all_clients parameter to close all connections with the server created by AT+CIPSERVER
  • The following AT commands supports IPv6 since v2.2.0.0
    • AT+CIPV6
    • AT+CIPSTATUS
    • AT+CIPDOMAIN
    • AT+CIPSTART
    • AT+CIPSTARTEX
    • AT+CIPSERVER
    • AT+SAVETRANSLINK
    • AT+PING
    • AT+CIPDNS
    • AT+CIPSTA
    • AT+CIPAP
    • AT+CIFSR

1.3 Application Layer

  • AT+CIPSNTPCFG: Support to configure half timezone offset
  • AT+MQTTCONNCFG, AT+MQTTPUB, AT+MQTTPUBRAW, AT+MQTTPUB, AT+MQTTUNSUB command supports 128 bytes topic
  • AT+WEBSERVER: New command to support Wi-Fi provisioning via SoftAP and Captive Portal
  • AT+HTTPCLIENT: Support chunked data
  • AT+HTTPCLIENT: content-type parameter can be omitted now
  • AT+HTTPCPOST: New command to support long data post
  • Added qcloud support

1.4 System

  • AT+CMD: New command to query the supported AT commands list
  • AT+USERRAM: New command to alloc ram for host mcu to use it
  • AT+SYSREG: New command to read and write registers
  • AT+SYSRAM: Support to query the minimum heap size
  • AT+GMR: Added chip platform information in the response
  • Added ESP32-D2WD, ESP32-MINI-1 module support

1.5 Driver

Added the following new commands:

  • AT+DRVADC: Read ADC channel value
  • AT+DRVPWMINIT: Initialize PWM driver
  • AT+DRVPWMDUTY: Set PWM duty
  • AT+DRVPWMFADE: Set PWM fade
  • AT+DRVI2CINIT: Initialize I2C master driver
  • AT+DRVI2CRD: Read I2C data
  • AT+DRVI2CWRDATA: Write I2C data
  • AT+DRVI2CWRBYTES: Write no more than 4 bytes I2C data
  • AT+DRVSPICONFGPIO: Configure SPI GPIO
  • AT+DRVSPIINIT: Initialize SPI master driver
  • AT+DRVSPIRD: Read SPI data
  • AT+DRVSPIWR: Write SPI data

1.6 Bluetooth

  • AT+BTPOWER: Support to set BT tx power
  • AT+BLUFI: Support authmode floor configuration
  • AT+SYSMSG: Extended BIT2 parameter to support BLE and BT SPP messages
  • GATT Server supports service discovery
  • GATT client supports to create a local service
  • BLE supports to send long length packets of notify and indicate

2. Bugfix

2.1 Wi-Fi

  • Fixed AT+CWLAP issues
    • Fixed AT+CWLAP returned ERROR when total active scan time was more than 15 seconds
    • Fixed AT+CWLAP did not return ap in the response sometimes
    • Fixed AT+CWLAP blocked more the 10 seconds sometimes
    • Fixed AT+CWLAP rssi filter parameter could not work sometimes
    • Fixed AT+CWLAP could not scan valid ap by ssid and bssid
  • Fixed the issue that AT+CWMODE=1,1 could not auto-connect to AP when Wi-Fi mode switched from WIFI_MODE_NULL
  • Fixed the issue that AT+CWJAP may return the wrong error number
  • Fixed AT+WPS failed on multiple ap credentials case
  • Fixed AT+CIPSTA/AT+CIPAP could set the wrong IP address due to the lack of rigorous address check

2.2 TCP/IP

  • Fixed wrong state of AT+CIPSTATUS command
  • Fixed data error in passthrough mode with 2Mbps baud rate
  • Fixed AT+CIPRECONNINTV did not work immediately
  • Fixed that the received data was incomplete if the data was too large in softAP mode
  • Fixed AT+CIPSENDEX data was truncated in advance
  • Fixed AT+CIPSEND returned ERROR sometimes
  • Fixed crash when link id < 0
  • Fixed AT+CIPMUX=0 set error when all connections closed
  • Fixed SSL link may not disconnect when IP address changed
  • Fixed potential blocking when hardware flow control enabled
  • Fixed an issue of mistakenly printing "CLOSED" or "+LINK_CONN"
  • Fixed tcp server could not work again if the link closed and opened repeatedly
  • Fixed AT+SAVETRANSLINK could not work sometimes
  • Fixed AT+CIPSERVER could set mode to 2
  • Fixed AT+CIPSTART SSL connect failed if disabled ALPN by AT+CIPSSLCALPN=1,0
  • Fixed tcp send data lost in passthrough mode
  • Fixed AT+CIUPDATE failed over SSL if the version parameter was specified

2.3 Application Layer

  • Fixed AT+MQTTCONN returned ERROR when checking common name
  • Fixed AT+MQTTUSERCFG? crash after MQTT connected
  • Fixed AT+CIPSSLCALPN query command caused to reboot due to memory coverage
  • Fixed AT+MQTTCONN may cause wdt reset when input some special hostname
  • Fixed the issue that AT+HTTPCLIENT url failed to be omitted

2.4 System

  • Fixed compile error if disable BT and BLE
  • Fixed compile error when only use BluFi
  • Fixed AT+GSLP did not return OK sometimes
  • Fixed AT+GSLP may return ERROR when setting a long deep sleep time
  • Fixed AT+GSLP crash on PICO-D4 module
  • Fixed wrong uart pins disabled before deep-sleep
  • Fixed AT+SLEEPWKCFG did not check GPIO configuration issue
  • Fixed the crash when sending command with one redundant character "" before "\r\n"
  • Fixed AT+SLEEP=2 returned OK in softap mode
  • Fixed AT+SLEEP=0 cause to crash
  • Fixed silence firmware crash sometimes
  • Fixed build fail when disable customized partition
  • Fixed sdio read data error when length bigger than sdio list
  • Fixed light sleep could not be woken up by GPIO due to DFS

2.5 Bluetooth

  • Fixed the failure to re-enter GATT server SPP mode
  • Fixed the failure to write characteristic value
  • Fixed that BLE connection timeout resulted in no new connection being created
  • Fixed that BT default device name was empty
  • Fixed that BT failed to output scan results sometimes
  • Fixed the failure to exit the BT SPP mode even after disconnection
  • Fixed that some MAC address information was missing quotes
  • Fixed that BT device name overlength issue
  • Fixed that BT & BLE deinit failed
  • Fixed that classic BT could not discover some device names
  • Fixed the failure to init BLE parameters: BLE device name, BLE advertising parameters, BLE scan parameters and response, and BLE connection parameters
  • Fixed the incorrect message of AT+BTSTARTDISC
  • Fixed the crash caused by deiniting A2DP profile
  • Fixed the failure to detect incorrect BLE address type
  • Added the message for A2DP connection failure
  • Fixed the blufi name overlength issue
  • Fixed the crash caused by multi-connection
  • Fixed the crash caused by BLE connection failure
  • Fixed the crash caused by disabling modem sleep
  • Fixed the crash caused by deiniting BLE stack

3. Optimization

  • Added build.py script to simplify the compilation process and supported windows OS compilation
  • Refactored application directory
  • Removed deprecated GNU make
  • Removed cmake warnings
  • Supported spi & sdio example cmake
  • Removed at_http_webserver example