From 5959d7a39a0f9c46389d80f30c0270a7dc388e29 Mon Sep 17 00:00:00 2001 From: Song Guo Date: Tue, 28 Apr 2020 15:54:03 +0800 Subject: [PATCH] Support ESP-IDF 3.3 - A few more components is required for esp-idf 3.3 - Need 6144B stack to avoid stackoverflow - The partition table requires 2.1M flash - Update travis CI to use ESP-IDF 3.3.2 Change-Id: Icc8e84d08f05996bbb309373f373e7540f833959 --- .travis/prepare.sh | 7 ++++++- Makefile | 5 +++++ sdkconfig.defaults | 10 ++++++++-- third_party/lwip | 2 +- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/.travis/prepare.sh b/.travis/prepare.sh index 40f791e..b4260af 100755 --- a/.travis/prepare.sh +++ b/.travis/prepare.sh @@ -47,7 +47,7 @@ HASH_CMD="shasum -a 256" # Install dependencies # -------------------------------------------------------------------------------- -ESP_IDF_VERSION=v3.0.4 +ESP_IDF_VERSION=release/v3.3 if test "${TRAVIS_OS_NAME}" = "linux"; then XTENSA_TOOL_CHAIN_URL=https://dl.espressif.com/dl/xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0.tar.gz XTENSA_TOOL_CHAIN_HASH=3fe96c151d46c1d4e5edc6ed690851b8e53634041114bad04729bc16b0445156 @@ -97,6 +97,11 @@ git -C ${TRAVIS_BUILD_DIR} submodule update || exit 1 set +x +# -------------------------------------------------------------------------------- +# Prepare python +# -------------------------------------------------------------------------------- +python -m pip install --user -r ${TRAVIS_BUILD_DIR}/esp-idf/requirements.txt + # -------------------------------------------------------------------------------- # Log build information. diff --git a/Makefile b/Makefile index ad05dcf..bfee2b8 100644 --- a/Makefile +++ b/Makefile @@ -53,8 +53,12 @@ COMPONENTS := app_trace \ console \ cxx \ driver \ + efuse \ esp32 \ esp_adc_cal \ + esp_event \ + esp_ringbuf \ + espcoredump \ esptool_py \ ethernet \ expat \ @@ -73,6 +77,7 @@ COMPONENTS := app_trace \ pthread \ QRCode \ sdmmc \ + smartconfig_ack \ soc \ spidriver \ spi_flash \ diff --git a/sdkconfig.defaults b/sdkconfig.defaults index 22a18dd..f9b6a46 100644 --- a/sdkconfig.defaults +++ b/sdkconfig.defaults @@ -17,8 +17,11 @@ CONFIG_PARTITION_TABLE_FILENAME="partitions.csv" CONFIG_APP_OFFSET=0x10000 # Bump the stack size of the Weave task to accommodate extra stack useage due to -# debugging. -CONFIG_WEAVE_TASK_STACK_SIZE=5120 +# debugging. When using ESP-IDF3.3, there exists a callpath that when reached +# DataManagement_Current::PrettyPrintWDM, ~4400B stack space is used (default +# stack size is 4608B). And then vsnprintf called by PerttyPrintWDM will cost +# another 1KB, a 5120B stack space in previous versions will overflow. +CONFIG_WEAVE_TASK_STACK_SIZE=6144 # Default to 921600 baud when flashing and monitoring device CONFIG_ESPTOOLPY_BAUD_921600B=y @@ -46,3 +49,6 @@ CONFIG_LOG_PROVISIONING_HASH=y # purposes. CONFIG_DEFAULT_INCOMING_CONNECTION_IDLE_TIMEOUT=0 +# According to partitions.csv, we need 4MB or larger flash +CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y +CONFIG_ESPTOOLPY_FLASHSIZE="4MB" diff --git a/third_party/lwip b/third_party/lwip index 8f66bf2..5eb7efc 160000 --- a/third_party/lwip +++ b/third_party/lwip @@ -1 +1 @@ -Subproject commit 8f66bf243577d0dc3d29d76ffb3fa8c4393bc51f +Subproject commit 5eb7efc149a3b341d90ad1cd84b57e65f58948cd