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