Upgrade to SDK 2.1.0. (#1962)
This commit is contained in:
parent
3aef438aa0
commit
c4516f1a17
16
Makefile
16
Makefile
|
@ -3,7 +3,7 @@
|
||||||
.NOTPARALLEL:
|
.NOTPARALLEL:
|
||||||
|
|
||||||
# SDK version NodeMCU is locked to
|
# SDK version NodeMCU is locked to
|
||||||
SDK_VER:=2.0.0
|
SDK_VER:=2.1.0
|
||||||
|
|
||||||
# no patch: SDK_BASE_VER equals SDK_VER and sdk dir depends on sdk_extracted
|
# no patch: SDK_BASE_VER equals SDK_VER and sdk dir depends on sdk_extracted
|
||||||
SDK_BASE_VER:=$(SDK_VER)
|
SDK_BASE_VER:=$(SDK_VER)
|
||||||
|
@ -12,8 +12,8 @@ SDK_DIR_DEPENDS:=sdk_extracted
|
||||||
#SDK_BASE_VER:=1.5.4
|
#SDK_BASE_VER:=1.5.4
|
||||||
#SDK_DIR_DEPENDS:=sdk_patched
|
#SDK_DIR_DEPENDS:=sdk_patched
|
||||||
|
|
||||||
SDK_FILE_VER:=$(SDK_BASE_VER)_16_08_10
|
SDK_FILE_VER:=$(SDK_BASE_VER)
|
||||||
SDK_FILE_SHA1:=b0127a99b45b3778be4a752387ab8dc0f6dd7810
|
SDK_FILE_SHA1:=66a4272894dc1bcec19f5f8bf79fee80f60a021b
|
||||||
#SDK_PATCH_VER:=$(SDK_VER)_patch_20160704
|
#SDK_PATCH_VER:=$(SDK_VER)_patch_20160704
|
||||||
#SDK_PATCH_SHA1:=388d9e91df74e3b49fca126da482cf822cf1ebf1
|
#SDK_PATCH_SHA1:=388d9e91df74e3b49fca126da482cf822cf1ebf1
|
||||||
# Ensure we search "our" SDK before the tool-chain's SDK (if any)
|
# Ensure we search "our" SDK before the tool-chain's SDK (if any)
|
||||||
|
@ -203,10 +203,10 @@ all: $(SDK_DIR_DEPENDS) pre_build .subdirs $(OBJS) $(OLIBS) $(OIMAGES) $(OBINS)
|
||||||
sdk_extracted: $(TOP_DIR)/sdk/.extracted-$(SDK_BASE_VER)
|
sdk_extracted: $(TOP_DIR)/sdk/.extracted-$(SDK_BASE_VER)
|
||||||
sdk_patched: sdk_extracted $(TOP_DIR)/sdk/.patched-$(SDK_VER)
|
sdk_patched: sdk_extracted $(TOP_DIR)/sdk/.patched-$(SDK_VER)
|
||||||
|
|
||||||
$(TOP_DIR)/sdk/.extracted-$(SDK_BASE_VER): $(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_FILE_VER).zip
|
$(TOP_DIR)/sdk/.extracted-$(SDK_BASE_VER): $(TOP_DIR)/cache/v$(SDK_FILE_VER).zip
|
||||||
mkdir -p "$(dir $@)"
|
mkdir -p "$(dir $@)"
|
||||||
(cd "$(dir $@)" && rm -fr esp_iot_sdk_v$(SDK_VER) ESP8266_NONOS_SDK && unzip $(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_FILE_VER).zip ESP8266_NONOS_SDK/lib/* ESP8266_NONOS_SDK/ld/eagle.rom.addr.v6.ld ESP8266_NONOS_SDK/include/* ESP8266_NONOS_SDK/bin/esp_init_data_default.bin)
|
(cd "$(dir $@)" && rm -fr esp_iot_sdk_v$(SDK_VER) ESP8266_NONOS_SDK-$(SDK_VER) && unzip $(TOP_DIR)/cache/v$(SDK_FILE_VER).zip ESP8266_NONOS_SDK-$(SDK_VER)/lib/* ESP8266_NONOS_SDK-$(SDK_VER)/ld/eagle.rom.addr.v6.ld ESP8266_NONOS_SDK-$(SDK_VER)/include/* ESP8266_NONOS_SDK-$(SDK_VER)/bin/esp_init_data_default.bin)
|
||||||
mv $(dir $@)/ESP8266_NONOS_SDK $(dir $@)/esp_iot_sdk_v$(SDK_VER)
|
mv $(dir $@)/ESP8266_NONOS_SDK-$(SDK_VER) $(dir $@)/esp_iot_sdk_v$(SDK_VER)
|
||||||
rm -f $(SDK_DIR)/lib/liblwip.a
|
rm -f $(SDK_DIR)/lib/liblwip.a
|
||||||
touch $@
|
touch $@
|
||||||
|
|
||||||
|
@ -217,9 +217,9 @@ $(TOP_DIR)/sdk/.patched-$(SDK_VER): $(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_PATCH_VE
|
||||||
rm -f $(SDK_DIR)/lib/liblwip.a
|
rm -f $(SDK_DIR)/lib/liblwip.a
|
||||||
touch $@
|
touch $@
|
||||||
|
|
||||||
$(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_FILE_VER).zip:
|
$(TOP_DIR)/cache/v$(SDK_FILE_VER).zip:
|
||||||
mkdir -p "$(dir $@)"
|
mkdir -p "$(dir $@)"
|
||||||
wget --tries=10 --timeout=15 --waitretry=30 --read-timeout=20 --retry-connrefused http://espressif.com/sites/default/files/sdks/esp8266_nonos_sdk_v$(SDK_FILE_VER).zip -O $@ || { rm -f "$@"; exit 1; }
|
wget --tries=10 --timeout=15 --waitretry=30 --read-timeout=20 --retry-connrefused https://github.com/espressif/ESP8266_NONOS_SDK/archive/v$(SDK_FILE_VER).zip -O $@ || { rm -f "$@"; exit 1; }
|
||||||
(echo "$(SDK_FILE_SHA1) $@" | sha1sum -c -) || { rm -f "$@"; exit 1; }
|
(echo "$(SDK_FILE_SHA1) $@" | sha1sum -c -) || { rm -f "$@"; exit 1; }
|
||||||
|
|
||||||
$(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_PATCH_VER).zip:
|
$(TOP_DIR)/cache/esp_iot_sdk_v$(SDK_PATCH_VER).zip:
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# **NodeMCU 2.0.0** #
|
# **NodeMCU 2.1.0** #
|
||||||
|
|
||||||
[![Join the chat at https://gitter.im/nodemcu/nodemcu-firmware](https://img.shields.io/gitter/room/badges/shields.svg)](https://gitter.im/nodemcu/nodemcu-firmware?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
[![Join the chat at https://gitter.im/nodemcu/nodemcu-firmware](https://img.shields.io/gitter/room/badges/shields.svg)](https://gitter.im/nodemcu/nodemcu-firmware?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||||
[![Build Status](https://travis-ci.org/nodemcu/nodemcu-firmware.svg)](https://travis-ci.org/nodemcu/nodemcu-firmware)
|
[![Build Status](https://travis-ci.org/nodemcu/nodemcu-firmware.svg)](https://travis-ci.org/nodemcu/nodemcu-firmware)
|
||||||
|
@ -7,7 +7,7 @@
|
||||||
|
|
||||||
### A Lua based firmware for ESP8266 WiFi SOC
|
### A Lua based firmware for ESP8266 WiFi SOC
|
||||||
|
|
||||||
NodeMCU is an [eLua](http://www.eluaproject.net/) based firmware for the [ESP8266 WiFi SOC from Espressif](http://espressif.com/en/products/esp8266/). The firmware is based on the [Espressif NON-OS SDK 2.0.0](https://espressif.com/sites/default/files/sdks/esp8266_nonos_sdk_v2.0.0_16_08_10.zip) and uses a file system based on [spiffs](https://github.com/pellepl/spiffs). The code repository consists of 98.1% C-code that glues the thin Lua veneer to the SDK.
|
NodeMCU is an [eLua](http://www.eluaproject.net/) based firmware for the [ESP8266 WiFi SOC from Espressif](http://espressif.com/en/products/esp8266/). The firmware is based on the [Espressif NON-OS SDK 2.1.0](https://github.com/espressif/ESP8266_NONOS_SDK/releases/tag/v2.1.0) and uses a file system based on [spiffs](https://github.com/pellepl/spiffs). The code repository consists of 98.1% C-code that glues the thin Lua veneer to the SDK.
|
||||||
|
|
||||||
The NodeMCU *firmware* is a companion project to the popular [NodeMCU dev kits](https://github.com/nodemcu/nodemcu-devkit-v1.0), ready-made open source development boards with ESP8266-12E chips.
|
The NodeMCU *firmware* is a companion project to the popular [NodeMCU dev kits](https://github.com/nodemcu/nodemcu-devkit-v1.0), ready-made open source development boards with ESP8266-12E chips.
|
||||||
|
|
||||||
|
|
|
@ -46,7 +46,6 @@ extern void mem_init(void * start_addr);
|
||||||
|
|
||||||
// Interrupt Service Routine functions
|
// Interrupt Service Routine functions
|
||||||
typedef void (*ets_isr_fn) (void *arg);
|
typedef void (*ets_isr_fn) (void *arg);
|
||||||
extern int ets_isr_attach (unsigned int interrupt, ets_isr_fn, void *arg);
|
|
||||||
extern void ets_isr_mask (unsigned intr);
|
extern void ets_isr_mask (unsigned intr);
|
||||||
extern void ets_isr_unmask (unsigned intr);
|
extern void ets_isr_unmask (unsigned intr);
|
||||||
|
|
||||||
|
@ -119,14 +118,11 @@ void *ets_memset (void *dst, int c, size_t n);
|
||||||
int ets_memcmp (const void *s1, const void *s2, size_t n);
|
int ets_memcmp (const void *s1, const void *s2, size_t n);
|
||||||
|
|
||||||
char *ets_strcpy (char *dst, const char *src);
|
char *ets_strcpy (char *dst, const char *src);
|
||||||
size_t ets_strlen (const char *s);
|
|
||||||
int ets_strcmp (const char *s1, const char *s2);
|
int ets_strcmp (const char *s1, const char *s2);
|
||||||
int ets_strncmp (const char *s1, const char *s2, size_t n);
|
int ets_strncmp (const char *s1, const char *s2, size_t n);
|
||||||
char *ets_strncpy(char *dest, const char *src, size_t n);
|
char *ets_strncpy(char *dest, const char *src, size_t n);
|
||||||
char *ets_strstr(const char *haystack, const char *needle);
|
char *ets_strstr(const char *haystack, const char *needle);
|
||||||
|
|
||||||
void ets_delay_us (uint32_t us);
|
|
||||||
|
|
||||||
int ets_printf(const char *format, ...) __attribute__ ((format (printf, 1, 2)));
|
int ets_printf(const char *format, ...) __attribute__ ((format (printf, 1, 2)));
|
||||||
|
|
||||||
void ets_str2macaddr (uint8_t *dst, const char *str);
|
void ets_str2macaddr (uint8_t *dst, const char *str);
|
||||||
|
@ -140,13 +136,9 @@ void Cache_Read_Disable(void);
|
||||||
void ets_intr_lock(void);
|
void ets_intr_lock(void);
|
||||||
void ets_intr_unlock(void);
|
void ets_intr_unlock(void);
|
||||||
|
|
||||||
void ets_install_putc1(void *routine);
|
|
||||||
|
|
||||||
int rand(void);
|
int rand(void);
|
||||||
void srand(unsigned int);
|
void srand(unsigned int);
|
||||||
|
|
||||||
void uart_div_modify(int no, unsigned int freq);
|
|
||||||
|
|
||||||
/* Returns 0 on success, 1 on failure */
|
/* Returns 0 on success, 1 on failure */
|
||||||
uint8_t SPIRead(uint32_t src_addr, uint32_t *des_addr, uint32_t size);
|
uint8_t SPIRead(uint32_t src_addr, uint32_t *des_addr, uint32_t size);
|
||||||
uint8_t SPIWrite(uint32_t dst_addr, const uint32_t *src, uint32_t size);
|
uint8_t SPIWrite(uint32_t dst_addr, const uint32_t *src, uint32_t size);
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
#define __USER_VERSION_H__
|
#define __USER_VERSION_H__
|
||||||
|
|
||||||
#define NODE_VERSION_MAJOR 2U
|
#define NODE_VERSION_MAJOR 2U
|
||||||
#define NODE_VERSION_MINOR 0U
|
#define NODE_VERSION_MINOR 1U
|
||||||
#define NODE_VERSION_REVISION 0U
|
#define NODE_VERSION_REVISION 0U
|
||||||
#define NODE_VERSION_INTERNAL 0U
|
#define NODE_VERSION_INTERNAL 0U
|
||||||
|
|
||||||
#define NODE_VERSION "NodeMCU 2.0.0"
|
#define NODE_VERSION "NodeMCU 2.1.0"
|
||||||
#ifndef BUILD_DATE
|
#ifndef BUILD_DATE
|
||||||
#define BUILD_DATE "unspecified"
|
#define BUILD_DATE "unspecified"
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -128,9 +128,9 @@ static int tmr_delay( lua_State* L ){
|
||||||
sint32_t us = luaL_checkinteger(L, 1);
|
sint32_t us = luaL_checkinteger(L, 1);
|
||||||
if(us <= 0)
|
if(us <= 0)
|
||||||
return luaL_error(L, "wrong arg range");
|
return luaL_error(L, "wrong arg range");
|
||||||
while(us >= 1000000){
|
while(us >= 10000){
|
||||||
us -= 1000000;
|
us -= 10000;
|
||||||
os_delay_us(1000000);
|
os_delay_us(10000);
|
||||||
system_soft_wdt_feed ();
|
system_soft_wdt_feed ();
|
||||||
}
|
}
|
||||||
if(us>0){
|
if(us>0){
|
||||||
|
|
|
@ -76,6 +76,12 @@ static tsl2561Gain_t _tsl2561Gain = TSL2561_GAIN_1X;
|
||||||
static tsl2561Address_t tsl2561Address = TSL2561_ADDRESS_FLOAT;
|
static tsl2561Address_t tsl2561Address = TSL2561_ADDRESS_FLOAT;
|
||||||
static tsl2561Package_t tsl2561Package = TSL2561_PACKAGE_T_FN_CL;
|
static tsl2561Package_t tsl2561Package = TSL2561_PACKAGE_T_FN_CL;
|
||||||
|
|
||||||
|
static void delay_ms(uint16_t ms)
|
||||||
|
{
|
||||||
|
while (ms--)
|
||||||
|
os_delay_us(1000);
|
||||||
|
}
|
||||||
|
|
||||||
/**************************************************************************/
|
/**************************************************************************/
|
||||||
/*!
|
/*!
|
||||||
@brief Writes an 8 bit values over I2C
|
@brief Writes an 8 bit values over I2C
|
||||||
|
@ -230,13 +236,13 @@ tsl2561Error_t tsl2561GetLuminosity(uint16_t *broadband, uint16_t *ir) {
|
||||||
// Wait x ms for ADC to complete
|
// Wait x ms for ADC to complete
|
||||||
switch (_tsl2561IntegrationTime) {
|
switch (_tsl2561IntegrationTime) {
|
||||||
case TSL2561_INTEGRATIONTIME_13MS:
|
case TSL2561_INTEGRATIONTIME_13MS:
|
||||||
os_delay_us(14000); //systickDelay(14);
|
delay_ms(14); //systickDelay(14);
|
||||||
break;
|
break;
|
||||||
case TSL2561_INTEGRATIONTIME_101MS:
|
case TSL2561_INTEGRATIONTIME_101MS:
|
||||||
os_delay_us(102000); //systickDelay(102);
|
delay_ms(102); //systickDelay(102);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
os_delay_us(404000); //systickDelay(404);
|
delay_ms(404); //systickDelay(404);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,7 @@ make EXTRA_CCFLAGS="-DLUA_NUMBER_INTEGRAL ....
|
||||||
Identify your firmware builds by editing `app/include/user_version.h`
|
Identify your firmware builds by editing `app/include/user_version.h`
|
||||||
|
|
||||||
```c
|
```c
|
||||||
#define NODE_VERSION "NodeMCU 2.0.0+myname"
|
#define NODE_VERSION "NodeMCU 2.1.0+myname"
|
||||||
#ifndef BUILD_DATE
|
#ifndef BUILD_DATE
|
||||||
#define BUILD_DATE "YYYYMMDD"
|
#define BUILD_DATE "YYYYMMDD"
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -105,7 +105,7 @@ SECTIONS
|
||||||
|
|
||||||
/* SDK libraries that used in bootup process, interruption handling
|
/* SDK libraries that used in bootup process, interruption handling
|
||||||
* and other ways where flash cache (iROM) is unavailable: */
|
* and other ways where flash cache (iROM) is unavailable: */
|
||||||
*libmain.a:*(.literal .text)
|
*libmain.a:*(.literal .literal.* .text .text.*)
|
||||||
*libnet80211.a:*(.literal .text)
|
*libnet80211.a:*(.literal .text)
|
||||||
*libphy.a:*(.literal .text)
|
*libphy.a:*(.literal .text)
|
||||||
*libpp.a:*(.literal .text)
|
*libpp.a:*(.literal .text)
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
#define _SDK_OVERRIDE_OSAPI_H_
|
#define _SDK_OVERRIDE_OSAPI_H_
|
||||||
|
|
||||||
#include "rom.h"
|
#include "rom.h"
|
||||||
void ets_timer_arm_new (ETSTimer *a, int b, int c, int isMstimer);
|
|
||||||
|
|
||||||
int atoi(const char *nptr);
|
int atoi(const char *nptr);
|
||||||
int os_printf(const char *format, ...) __attribute__ ((format (printf, 1, 2)));
|
int os_printf(const char *format, ...) __attribute__ ((format (printf, 1, 2)));
|
||||||
|
|
|
@ -7,14 +7,10 @@ bool wifi_softap_deauth(uint8 mac[6]);
|
||||||
uint8 get_fpm_auto_sleep_flag(void);
|
uint8 get_fpm_auto_sleep_flag(void);
|
||||||
|
|
||||||
enum ext_flash_size_map {
|
enum ext_flash_size_map {
|
||||||
FLASH_SIZE_32M_MAP_2048_2048 = 7,
|
|
||||||
FLASH_SIZE_64M_MAP = 8,
|
FLASH_SIZE_64M_MAP = 8,
|
||||||
FLASH_SIZE_128M_MAP = 9
|
FLASH_SIZE_128M_MAP = 9
|
||||||
};
|
};
|
||||||
|
|
||||||
// Documented in section 4.5 of 9b-esp8266_low_power_solutions_en.pdf
|
|
||||||
void system_deep_sleep_instant(uint32 time_in_us);
|
|
||||||
|
|
||||||
//force sleep API
|
//force sleep API
|
||||||
#define FPM_SLEEP_MAX_TIME 268435455 //0xFFFFFFF
|
#define FPM_SLEEP_MAX_TIME 268435455 //0xFFFFFFF
|
||||||
void wifi_fpm_set_wakeup_cb(void (*fpm_wakeup_cb_func)(void));
|
void wifi_fpm_set_wakeup_cb(void (*fpm_wakeup_cb_func)(void));
|
||||||
|
|
Loading…
Reference in New Issue