esp_iot_sdk_v1.5.1_16_01_08 Release Note
----------------------------------------
Resolved Issues (Bugs listed below apply to Bug Bounty Program):
1.espconn_abort may cause system crash.
Optimization:
1.Optimize the data receiving process under TCP connection.
2.Optimize low MAC and increase stability of the software.
3.Optimize watchdog feeding process.
4.Optimize softAP working mode so that some stations can be easily connected.
5.Optimize station working mode, enabling connection even when the SSID of the AP has changed.
6.Optimize station working mode, and increase router’s compatibility during the connection process.
7.Optimize SSL shakehand.
8.Optimize espconn internal timer.
9.Optimize UDP transmission.
10.Improve the flash writing process.
11.Strenthen WPA2 security protocols.
12.Improve data sending ability.
13.Straighten the control capability of GPIO16 under light sleep mode.
14.boot.bin is upgrade to version 1.5, resolving boot failure when firmware is upgraded over the air (OTA).
AT release note:
1.Optimize the process of establishing TCP server via AT command.
2.Optimize UART-WiFi transparent transmission mode via AT command.
Please be noted that with the release of NONOS SDK Version 1.5.0 (ESP8266_NONOS_SDK_V1.5.0), the space that AT commands occupies has increased to more than 4Mbit. Therefore, flash with 512Kbit capacity is no longer supported. Please choose flash with at least 8Mbit capacity.
Please be noted that firmware upgrade over-the-air process is changed a bit. We will upgrade the latest firmware to Espressif Cloud server only after it has been tested and the overall performance is guaranteed. Users may not be able to download firmware encapsulated in ESP8266_NONOS_SDK_V1.5.0 and other more advanced versions.
- free up some memory by getting rid of intermediate buffer
- libaxtls: update to 6830d98
- allocate plaintext buffer in two stages: 4*MSS initially, grow to 16k after handshake
- free certificate data after handshake is complete
- preallocate some structures to reduce memory fragmentation
randomization is good in cases where the previous port is not yet
released by the OS or the server hangs
On OS X it's very noticeable if you need to OTA twice in a short time.
- use new AutoInterruptLock
- add delay to give the RTOS some time to handle TCP
WiFiClient.cpp
- add stopAllexcepted to cancel all TCP excepted one
ClientContext.h
- add getLocalPort()
ESP8266HTTPUpdate.cpp
- close all not needed TCP and UDP
osapi.h
- missing commit from SDK
----------------------------------------
Here is a patch based on esp_iot_sdk_v1.3.0 (non-OS SDK) resolved issue that if there are 2 connections, one is normal TCP connection, the other is SSL connection, it may cause memory leak.
Download and unzip the attachment, replace the lib in esp_iot_sdk/lib folder.
Please do not set the same priority for two different tasks when using system_os_task.
Sorry for the inconvenience.