SDKs & Demos

  • Collapse all
  • Expand all
Title Body Platform Version Release Datesort ascending Download
ESP32 IDF

Espressif IoT Development Framework. Official development framework for ESP32.

RTOS SDK V2.0 RC1 2017.01.20
ESP8266 RTOS SDK V1.5.0

Added features

1. SPI flash erase protection mechanism (With this mechanism, boot.bin and current running user.bin cannot be erased.)

2. user_rf_cal_sector_set, an interface the user program MUST have

3. MemLeak debugging feature

4. SNTP support

5. Vendor IE support

6. Weak function wifi_set_backup_mac for setting user MAC

7. mbedTLS support

Improved features

1. Updated SmartConfig to v2.5.4

2. Updated open freedom to support sending beacon packets

3. Updated libphy.a to v1055

4. Updated secondary bootloader to v1.6

5. Updated esp_init_data_default.bin

6. Optimized socket mechanism

7. Optimized sleep strategy

Fixed problems

1. lwIP problem

2. PWM problem

3. SPI overlap problem

4. DNS problem with some routers

5. The maximum value of os_timer_arm

6. Exceptional RF failure after external reset;

7. Huawei X4’s failure to connect to Soft-AP

8. A problem in libpp.a that causes system assert

9. System crash when setting opmode from Station to Soft-AP in scan done callback

10. Status error by calling wifi_station_get_connect_status when the password is wrong

11. Disconnect event is prevented from entering twice when calling wifi_station_disconnect.

12. The SPI flash erase / write processes are modified. Before erasing or writing SPI flash, write-protected status will be cleared if need be.

13. Some cases where the RF_Init_data system parameter sector could be corrupted are fixed.

14. Fixed the problem of corrupted system parameter sector due to frequent power-on / power-off.

15. Other bugs.

RTOS SDK V1.5.0 2016.11.11
ESP8266 NONOS SDK V2.0.0 20160810

ESP8266_NONOS_SDK_V2.0.0_16_08_10 Release Notes

1. Changed the license of some source files to espressif MIT.
2. Updated libphy.a to 1055, fixed an issue of large current in Light-sleep.
3. Updated AT+ to 1.3.0:
   3.1 Added Light-sleep wakeup command, AT+WAKEUPGPIO;
   3.2 Fixed abnormal AT+CWDHCPS IP allocation;
   3.3 Added at_sdio demo under example directory.
4. Fixed probable system default when calling cur and def interfaces.
5. Fixed the issue of high current in Deep-sleep mode without disabling SPI first.
6. Fixed an issue where the SDK would crash when switching from AP to Station mode by calling wifi_set_phy_mode.
7. Updated secondary boot loader to v1.6:
   7.1 Supports AT + based on SDIO;
   7.2 Supports entering testing mode through GPIO.
8. Added support for MXIC Flash QIO mode.
9. Fixed exception caused during TCP handshake and retransmission.
10. Fixed issues in ESP-NOW.
11. Added ESP-PAIR (Simple-Pair) feature, for APIs please refer to ESP8266 SDK API Guide.
12. wpa2-enterprise time function derivation and time check disable can be set by users.
13. Support for PEAP/TTLS in wpa2-enterprise, for APIs please refer to ESP8266 SDK API Guide.
14. Added mqtt demos under examples directory.
15. Other issue fixes.
16. Resolved an issue that RF_Init_data sector may be broken in stress test. Provided a function user_rf_cal_sector_set which has to be added in application by software developer. More details about user_rf_cal_sector_set refer to documentation "2C-ESP8266__SDK__API Guide". (Resolved in ESP8266_NONOS_SDK_V1.5.4.1) 
17. Fix a potential risk that will cause rf not work after external reset. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1)
18. Add SDIO AT support. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1)
19. Fix a potential bug in espconn. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1)
_________________________________________________________________________________________________________________________________________________________________________________________________________

ESP8266_NONOS_SDK Notes:

1. esp_init_data.bin has to be downloaded into flash at least once.

2. Download blank.bin to initialize the sector stored RF_CAL parameter (set by user_rf_cal_sector_set), and download esp_init_data.bin into flash, when the system needs to be initialized, or RF needs to be calibrated again.


AT Notes:

1. Since the release of ESP8266_NONOS_SDK_V1.5.0, AT firmware is too large to use 4Mbit flash. Please choose flash with at least 8Mbit capacity. 

2. Firmware upgrade over-the-air process is changed a bit. We will upgrade the latest AT firmware to Espressif Cloud server only after it has been tested and the overall performance is guaranteed.Users may not be able to use AT+CIUPDATE in ESP8266_NONOS_SDK_V1.5.0 and other more advanced versions.

NON-OS SDK V2.0.0 2016.08.10
ESP8266 NONOS SDK V2.0.0 patch 20160809

ESP8266_NONOS_SDK_V2.0.0_patch release notes

This patch is based on ESP8266_NONOS_SDK_V2.0.0. While using it, users should use .a file in the package to overwrite the corresponding files subject to SDK/lib directory.
The updates are as follows:
1. Slow connection problems in some cases have been solved.
2. Provided an interface to enable automatic calibration of frequency offset: void system_phy_freq_trace_enable(bool enable); By default, the automatic calibration of frequency offset is off. To enable it, this function should be called in user_rf_pre_init(). Its parameter is true.
Note: Users should confirm that only when ambient temperature is higher than the normal operating temperature range that crystal oscillator requires does this function need to be enabled. In general,  this function is not recommended to be enabled if ambient temperature is lower than 80 ℃.
NON-OS SDK 2016.08.08
ESP8266 NONOS SDK MBEDTLS 20160718

1. Features

1.1. Supports TLS 1.0, TLS 1.1, TLS 1.2, doesn’t support SSL 3.0.
1.2. TLS cache of 2048 to 8192 bytes.
1.3. Supports  AES-128 and AES-256 encryption algorithm, and CBC mode.
1.4. Supports SHA-1, SHA-256, SHA-384 and SHA-512 hash algorithm.
1.5. Supports RSA-512, RSA-1024, RSA-2048 algorithm.
1.6. Supports certificates in PEM format and DER format.
1.7. Supports both unidirectional authentication and bidirectional authentication.
1.8. Supports three-tier certificate chain parsing.
1.9. Doesn’t support verify three-tier certificate chain with root certificate.

2. Usage

2.1. For ESP8266_NONOS_SDK versions older than 2.0.0, copy include, ld and lib folders in the directory of ESP8266_NONOS_SDK_EMBEDTLS to SDK root directory. For version 2.0.0 and later, only the lib folder needs to be copied.
2.2. “-lssl” in Makefile of user’s project directory should be modified into “-lmbedtls” if the user has utilized libssl.a before. There is no need to modify any user code.
2.3. mbedtls_demo includes source code of mbedtls, espconn_secure_xxxx APIs and a simple example.
2.3.1. Copy the entire folder of mbedtls_demoto the SDK root directory.
    2.3.2. Find and run "./make_lib.sh mbedtls" in mbedtls_demo directory. Source code of mbedtls will be automatically compiled and generate libmbedtls.a which will be copied to SDK/lib directory.
    2.3.3. Test firmware of mbedtls_demo can be generated via ./gen_misc.sh.
NON-OS SDK MBEDTLS 2016.07.17
ESP Mesh Demo

1. Initial flow of mesh and setup mesh application

2. Guide to build mesh packet and response packet

3. Guide to implement general packet parser for user

4. Guide to get and parse topology packet

NON-OS v1.2.0 2016.07.04
ESP8266 NONOS SDK V1.5.3.3 Patch_20160704

ESP8266_NONOS_SDK_V1.5.3.3_ Patch is based on the ESP8266_NONOS_SDK_V1.5.3 and contains all changes updated within ESP8266_NONOS_SDK_V1.5.3.1 and ESP8266_NONOS_SDK_V1.5.3.2. When this patch is used, .a files in this patch shall replace corresponding files under the SDK/lib Folder.

  1. Resolved the issue that API system_adc_read may return wrong value. (Resolved in 1.5.3.1)
  2. Resolved the issue that the current in light sleep mode is too high. (Resolved in 1.5.3.1)
  3. Optimised igmp to resolve the issue that ESP8266 maybe reset if connected to a special router. (Resolved in 1.5.3.1)
  4. Resolved an issue that RF_Init_data sector may be broken in stress test. Provided a function “user_rf_cal_sector_set” which has to be added in application by software developer. More details about user_rf_cal_sector_set refer to documentation “2C-ESP8266__SDK__API Guide”.(Resolved in ESP8266_NONOS_SDK_V1.5.3.2) 
  5. Fix a potential risk that will cause rf not work after external reset.(Resolved in ESP8266_NONOS_SDK_V1.5.3.3)
  6. Modify 112 byte of esp_init_data_default.bin, 0x03->0x00, turn off auto freq correction.(Resolved in ESP8266_NONOS_SDK_V1.5.3.3)

Attention: Please refer to “user_main.c” in the zip for “user_rf_cal_sector_set” sample code.

ESP8266_NONOS_SDK Note:

  1. esp_init_data.bin has to be downloaded into flash at least once.
  2. Download blank.bin to initialize the sector stored RF_CAL parameter (set by user_rf_cal_sector_set), and download esp_init_data.bin into flash, when the system needs to be initialized, or RF needs to be calibrated again.

NON-OS SDK V1.5.3.3 2016.07.03
ESP8266 NONOS SDK V1.5.2.1 Patch_20160704

This patch is based on the ESP8266_NONOS_SDK_V1.5.2. When this patch is used, .a files in this patch shall replace corresponding files under the SDK/lib Folder.

  1. Resolved an issue that RF_Init_data sector may be broken in stress test. Provided a function “user_rf_cal_sector_set” which has to be added in application by software developer. More details about user_rf_cal_sector_set refer to documentation “2C-ESP8266__SDK__API Guide”.(Resolved in ESP8266_NONOS_SDK_V1.5.2.1) 
  2. Fix a potential risk that will cause rf not work after external reset.(Resolved in ESP8266_NONOS_SDK_V1.5.2.1)
  3. Modify 112 byte of esp_init_data_default.bin, 0x03->0x00, turn off auto freq correction.(Resolved in ESP8266_NONOS_SDK_V1.5.2.1)

Attention: Please refer to “user_main.c” in the zip for “user_rf_cal_sector_set” sample code.

ESP8266_NONOS_SDK Note:

  1. esp_init_data.bin has to be downloaded into flash at least once.
  2. Download blank.bin to initialize the sector stored RF_CAL parameter (set by user_rf_cal_sector_set), and download esp_init_data.bin into flash, when the system needs to be initialized, or RF needs to be calibrated again.
NON-OS SDK V1.5.2.1 2016.07.03
ESP8266 NONOS SDK V1.5.4.1 Patch_20160704

This patch is based on the ESP8266_NONOS_SDK_V1.5.4. When this patch is used, .a files in this patch shall replace corresponding files under the SDK/lib Folder.

  1. Resolved an issue that RF_Init_data sector may be broken in stress test. Provided a function “user_rf_cal_sector_set” which has to be added in application by software developer. More details about user_rf_cal_sector_set refer to documentation “2C-ESP8266__SDK__API Guide”. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1) 
  2. Fix a potential risk that will cause rf not work after external reset. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1)
  3. Fix system state mismatch when call some cur and def APIs. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1)
  4. Add SDIO AT support. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1)
  5. Fix a potential bug in espconn. (Resolved in ESP8266_NONOS_SDK_V1.5.4.1)
  6. Modify 112 byte of esp_init_data_default.bin, 0x03->0x00, turn off auto freq correction.(Resolved in ESP8266_NONOS_SDK_V1.5.4.1)

Attention: Please refer to “user_main.c” in the zip for “user_rf_cal_sector_set” sample code.

ESP8266_NONOS_SDK Note:

  1. esp_init_data.bin has to be downloaded into flash at least once.
  2. Download blank.bin to initialize the sector stored RF_CAL parameter (set by user_rf_cal_sector_set), and download esp_init_data.bin into flash, when the system needs to be initialized, or RF needs to be calibrated again.
NON-OS SDK V1.5.4.1 2016.07.03
ESP8266 RTOS SDK v1.3.3 Patch_20160704

This patch is based on the ESP8266_RTOS_SDK_V1.3.0(68c9e7b4) and contains all changes updated within ESP8266_RTOS_SDK_V1.3.1(095c975c) and ESP8266_RTOS_SDK_V1.3.2(86e315aa). When this patch is used, .a files in this patch shall replace corresponding files under the SDK/lib Folder.

  1. Fix station leave issue in softap mode.(Resolved in ESP8266_RTOS_SDK_V1.3.1)
  2. Resolved an issue that RF_Init_data sector may be broken in stress test. Provided a function “user_rf_cal_sector_set” which has to be added in application by software developer. More details about user_rf_cal_sector_set refer to documentation “2C-ESP8266__SDK__API Guide”.(Resolved in ESP8266_RTOS_SDK_V1.3.2) 
  3.  Fix a potential risk that will cause rf not work after external reset.(Resolved in ESP8266_RTOS_SDK_V1.3.3)
  4.  Modify 112 byte of esp_init_data_default.bin, 0x03->0x00, turn off auto freq correction.(Resolved in ESP8266_RTOS_SDK_V1.3.3)

Attention: Please refer to “user_main.c” in the zip for “user_rf_cal_sector_set” sample code.

ESP8266_RTOS_SDK Note:

  1. esp_init_data.bin has to be downloaded into flash at least once.
  2. Download blank.bin to initialize the sector stored RF_CAL parameter (set by user_rf_cal_sector_set), and download esp_init_data.bin into flash, when the system needs to be initialized, or RF needs to be calibrated again.
RTOS SDK V1.3.3 2016.07.03
ESP8266 RTOS SDK v1.4.2 Patch_20160704

This patch is based on the ESP8266_RTOS_SDK_V1.4.0(cb4060d9) and contains all changes updated within ESP8266_RTOS_SDK_V1.4.1(5377c409). When this patch is used, .a files in this patch shall replace corresponding files under the SDK/lib Folder.

  1. Resolved an issue that RF_Init_data sector may be broken in stress test. Provided a function “user_rf_cal_sector_set” which has to be added in application by software developer. More details about user_rf_cal_sector_set refer to documentation “2C-ESP8266__SDK__API Guide”.(Resolved in ESP8266_RTOS_SDK_V1.4.1)
  2. Fix a potential risk that will cause rf not work after external reset.(Resolved in ESP8266_RTOS_SDK_V1.4.2)
  3. Modify 112 byte of esp_init_data_default.bin, 0x03->0x00, turn off auto freq correction.(Resolved in ESP8266_RTOS_SDK_V1.4.2)

Attention: Please refer to “user_main.c” in the zip for “user_rf_cal_sector_set” sample code.

ESP8266_RTOS_SDK Note:

  1. esp_init_data.bin has to be downloaded into flash at least once.
  2. Download blank.bin to initialize the sector stored RF_CAL parameter (set by user_rf_cal_sector_set), and download esp_init_data.bin into flash, when the system needs to be initialized, or RF needs to be calibrated again.
RTOS SDK V1.4.2 2016.07.03
ESP8266 NONOS SDK V1.5.4

1. Updated libphy.a to version 972.

2. Updated libpp.a to version 10.1.

3. Optimized IGMP function.

4. Optimized DNS function.

5. Optimized WPS function.

6. Optimized DHCP server function.

NON-OS SDK V1.5.4 2016.05.20
ESP8266 NONOS SDK V1.5.3

1. Supported ISSI flash.

2. SmartConfig updated to version 2.5.4, solved the issue that AirKiss may fail in certain cases.

3. AT updated to version 1.00.

4. Added lwip_open_src_template_proj in ESP8266_NONOS_SDK\examples for open source LWIP.

5. Added SPI driver, refer to ESP8266_NONOS_SDK\driver_lib\driver\spi_interface.c.

6. Removed the limitation of freedom sending unencrypted beacon/probe req/probe resp.

NON-OS SDK V1.5.3 2016.04.18
ESP8266 RTOS SDK v1.4.0

 1. Update boot.bin to v1.5;

 2. Add wifi_station_set/get_hostname API;

 3. Update SmartConfig to version 2.5.3;

 4. Support GPIO wakeup;

 5. Enable IGMP in LWIP;

 6. Add espconn_init in espconn.h;

 7. Update esp_init_data_default.bin;

 8. IROM start address changed to 0x20000;

RTOS SDK V1.4.0 2016.02.26
ESP8266 IOT Platform

A demo that should be run with ESP8266 RTOS SDK. Initial version.

RTOS V1.0 2015.09.18