Skip to content

v2.4.0.0

Compare
Choose a tag to compare
@xcguang xcguang released this 20 May 12:14
· 40 commits to release/v2.4.0.0 since this release

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.