Skip to content

update 25062022 #27

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 72 commits into from
Jun 25, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
8c5ac76
Support extern Ethernet (#60)
Jason2866 Feb 22, 2022
b8c68f6
Revert "Support extern Ethernet (#60)" (#61)
Jason2866 Feb 23, 2022
3931f52
Fix missing BLE 4.2 from ESP32-S3
me-no-dev Feb 23, 2022
cd5d3b2
Allow selecting Arduino branch based on the current lib-builder branch
me-no-dev Feb 24, 2022
0180326
For CI builds get branch from env
me-no-dev Feb 24, 2022
6864671
dump env
me-no-dev Feb 24, 2022
ef3302c
Update update-components.sh
me-no-dev Feb 24, 2022
b1fe3e0
Update update-components.sh
me-no-dev Feb 24, 2022
78b3992
Add support for CPP exceptions for C3
me-no-dev Feb 24, 2022
79f7b0e
Script improvements, rainmaker and esp-sr
me-no-dev Mar 10, 2022
3327376
Optimized for Tasmota
Jason2866 Mar 20, 2022
847cf99
Update build.sh
Jason2866 Mar 20, 2022
bafa5cc
Update config.sh
Jason2866 Mar 20, 2022
df7a561
Update install-esp-idf.sh
Jason2866 Mar 20, 2022
57692da
AR_BRANCH="master"
Jason2866 Mar 28, 2022
e424b54
Update push.yml
Jason2866 Mar 28, 2022
13ab415
Update defconfig.esp32s3
Jason2866 Mar 28, 2022
c8b869b
Update defconfig.esp32s2
Jason2866 Mar 28, 2022
a2e711c
space in path fix
Jason2866 Mar 28, 2022
71ebefa
fix space in path
Jason2866 Mar 28, 2022
154d709
Update install-esp-idf.sh
Jason2866 Mar 29, 2022
119c3ef
Update README.md
Jason2866 Mar 29, 2022
875cc05
esp littlesfs broken going back to commit 4ee58815
Jason2866 Mar 30, 2022
ae1ce2f
lfn
Jason2866 Mar 30, 2022
db1c15a
lfn
Jason2866 Mar 30, 2022
32bb429
lfn
Jason2866 Mar 30, 2022
9ce1ed3
lfn
Jason2866 Mar 30, 2022
69793e0
use actual littlefs
Jason2866 Mar 30, 2022
50affd5
esp_littlefs commit 4ee58815093
Jason2866 Mar 31, 2022
7b73ef6
Update config.sh
Jason2866 Mar 31, 2022
59f0724
use latest littlefs
Jason2866 Mar 31, 2022
071c4e1
AR_BRANCH="work"
Jason2866 Mar 31, 2022
e625996
IDF branch v4.4_work
Jason2866 Apr 8, 2022
e50faaf
Update push.yml
Jason2866 Apr 8, 2022
6e0355a
Update defconfig.esp32
Jason2866 Apr 21, 2022
c87f9cd
Update fb_gfx.h
Jason2866 Apr 21, 2022
71fe54f
Update fb_gfx.c
Jason2866 Apr 21, 2022
f14e558
IDF_BRANCH="v4.4.1"
Jason2866 Apr 28, 2022
6d75d18
Update push.yml
Jason2866 Apr 28, 2022
b126dd4
remove CONFIG_SPI_FLASH_ROM_IMPL
Jason2866 May 10, 2022
74e9908
remove CONFIG_SPI_FLASH_ROM_IMPL
Jason2866 May 10, 2022
5a43a8a
remove CONFIG_SPI_FLASH_ROM_IMPL
Jason2866 May 10, 2022
0485cd5
remove CONFIG_SPI_FLASH_ROM_IMPL
Jason2866 May 10, 2022
5e7cf0c
Update README.md
Jason2866 May 11, 2022
25eec08
Update README.md
Jason2866 May 11, 2022
129b542
IDF_BRANCH="v4.4_dev"
Jason2866 May 12, 2022
61d65b0
2.0.4dev
Jason2866 May 12, 2022
7f34ca1
Update README.md
Jason2866 May 18, 2022
7e8b419
Update README.md
Jason2866 May 18, 2022
8172d48
Update README.md
Jason2866 May 18, 2022
bcd389b
Update README.md
Jason2866 May 18, 2022
4e0e436
Update Kconfig.projbuild
Jason2866 May 22, 2022
508b2a4
Do not append digest to the bootloader bin
Jason2866 May 26, 2022
326e144
Update .gitignore
Jason2866 May 26, 2022
58aca29
Update copy-libs.sh
Jason2866 May 31, 2022
15ac4d5
--non-interactive
Jason2866 Jun 13, 2022
8ef48f8
Update install-esp-idf.sh
Jason2866 Jun 13, 2022
0e023fd
CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000
Jason2866 Jun 14, 2022
f4b9bc1
CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000
Jason2866 Jun 14, 2022
980a58c
CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000
Jason2866 Jun 14, 2022
704e26a
CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000
Jason2866 Jun 14, 2022
e6a57c2
Improve support for hand-written asm source files in PIO
Jason2866 Jun 14, 2022
2f71835
Improve support for hand-written asm source files in PIO
Jason2866 Jun 14, 2022
e3d9c9a
CONFIG_LWIP_IPV6_AUTOCONFIG=y
Jason2866 Jun 14, 2022
99f76d6
CONFIG_LWIP_IPV6_AUTOCONFIG=y
Jason2866 Jun 14, 2022
6aa1bc2
CONFIG_LWIP_IPV6_AUTOCONFIG=y
Jason2866 Jun 14, 2022
9f85d2d
CONFIG_LWIP_IPV6_AUTOCONFIG=y
Jason2866 Jun 14, 2022
19e35bd
Update CMakeLists.txt
Jason2866 Jun 25, 2022
34d4c78
Update builds.json
Jason2866 Jun 25, 2022
8dc5e7e
Update copy-libs.sh
Jason2866 Jun 25, 2022
cae2256
Update copy-mem-variant.sh
Jason2866 Jun 25, 2022
e462cc2
Merge branch 'solo1_idf441' into tmp
Jason2866 Jun 25, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ idf_build_get_property(elf EXECUTABLE GENERATOR_EXPRESSION)

add_custom_command(
OUTPUT "idf_libs"
COMMAND ${CMAKE_SOURCE_DIR}/tools/copy-libs.sh ${IDF_TARGET} "${CONFIG_ESPTOOLPY_OCT_FLASH}" "${CONFIG_SPIRAM_MODE_OCT}" "${CONFIG_IDF_TARGET_ARCH_XTENSA}"
COMMAND ${CMAKE_SOURCE_DIR}/tools/copy-libs.sh ${IDF_TARGET} "${CONFIG_LIB_BUILDER_FLASHMODE}" "${CONFIG_SPIRAM_MODE_OCT}" "${CONFIG_IDF_TARGET_ARCH_XTENSA}"
DEPENDS ${elf}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
VERBATIM
Expand All @@ -29,7 +29,7 @@ add_custom_target(copy-bootloader DEPENDS "copy_bootloader")

add_custom_command(
OUTPUT "mem_variant"
COMMAND ${CMAKE_SOURCE_DIR}/tools/copy-mem-variant.sh ${IDF_TARGET} "${CONFIG_ESPTOOLPY_OCT_FLASH}" "${CONFIG_SPIRAM_MODE_OCT}"
COMMAND ${CMAKE_SOURCE_DIR}/tools/copy-mem-variant.sh ${IDF_TARGET} "${CONFIG_LIB_BUILDER_FLASHMODE}" "${CONFIG_SPIRAM_MODE_OCT}"
DEPENDS ${elf}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
VERBATIM
Expand Down
26 changes: 21 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,30 @@
# Tasmota ESP32 Arduino Lib Builder [![Build Status](https://travis-ci.org/espressif/esp32-arduino-lib-builder.svg?branch=master)](https://travis-ci.org/espressif/esp32-arduino-lib-builder)

This repository contains the scripts that produce the libraries included with esp32-arduino.
# Tasmota ESP32 Arduino Lib Builder [![ESP32 builder](https://github.com/Jason2866/esp32-arduino-lib-builder/actions/workflows/push.yml/badge.svg)](https://github.com/Jason2866/esp32-arduino-lib-builder/actions/workflows/push.yml)

Tested on Ubuntu (32 and 64 bit), Raspberry Pi and MacOS.
This repository contains the scripts that produce the libraries included with Tasmota esp32-arduino.

### Build on Ubuntu and Raspberry Pi
### Build on Ubuntu
```bash
sudo apt-get install git wget curl libssl-dev libncurses-dev flex bison gperf python python-pip python-setuptools python-serial python-click python-cryptography python-future python-pyparsing python-pyelftools cmake ninja-build ccache
sudo pip install --upgrade pip
git clone https://github.com/espressif/esp32-arduino-lib-builder
git clone https://github.com/Jason2866/esp32-arduino-lib-builder
cd esp32-arduino-lib-builder
./build.sh
```
### Development builds
Look in release and download a version. The day of build is using the commits of this day of IDF / Arduino.

### Stable Release
are based on Arduino Core 2.0.3 and can be used with Platformio for the ESP32, ESP32C3, ESP32S2 and ESP32S3
```
[platformio]
platform = https://github.com/tasmota/platform-espressif32/releases/download/v.2.0.3/platform-espressif32-v.2.0.3.zip
framework = arduino, espidf
```
and for the ESP32solo1 with
```
[platformio]
platform = https://github.com/tasmota/platform-espressif32/releases/download/v.2.0.3/platform-espressif32-solo1-v.2.0.3.zip
framework = arduino, espidf
```
The frameworks are here [https://github.com/tasmota/arduino-esp32/releases](https://github.com/tasmota/arduino-esp32/releases)
58 changes: 39 additions & 19 deletions configs/builds.json
Original file line number Diff line number Diff line change
@@ -1,34 +1,40 @@
{
"mem_variants_files":[
{
"file":"libbootloader_support.a",
"src":"build/esp-idf/bootloader_support/libbootloader_support.a",
"out":"lib/libbootloader_support.a"
},
{
"file":"libesp_hw_support.a",
"src":"build/esp-idf/esp_hw_support/libesp_hw_support.a",
"out":"lib/libesp_hw_support.a"
},
{
"file":"libspi_flash.a",
"src":"build/esp-idf/spi_flash/libspi_flash.a",
"out":"lib/libspi_flash.a"
"out":"lib/libspi_flash.a",
"targets":["esp32","esp32c3","esp32s2","esp32s3"]
},
{
"file":"libesp_system.a",
"src":"build/esp-idf/esp_system/libesp_system.a",
"out":"lib/libesp_system.a",
"targets":["esp32s3"]
},
{
"file":"libfreertos.a",
"src":"build/esp-idf/freertos/libfreertos.a",
"out":"lib/libfreertos.a"
"out":"lib/libfreertos.a",
"targets":["esp32s3"]
},
{
"file":"libesp_system.a",
"src":"build/esp-idf/esp_system/libesp_system.a",
"out":"lib/libesp_system.a"
"file":"libbootloader_support.a",
"src":"build/esp-idf/bootloader_support/libbootloader_support.a",
"out":"lib/libbootloader_support.a",
"targets":["esp32s3"]
},
{
"file":"libesp_hw_support.a",
"src":"build/esp-idf/esp_hw_support/libesp_hw_support.a",
"out":"lib/libesp_hw_support.a",
"targets":["esp32s3"]
},
{
"file":"sections.ld",
"src":"build/esp-idf/esp_system/ld/sections.ld",
"out":"ld/sections.ld"
"out":"ld/sections.ld",
"targets":["esp32s3"]
}
],
"targets":[
Expand All @@ -44,6 +50,8 @@
],
"mem_variants":[
["qio","80m","opi_ram"],
["dio","80m","qio_ram"],
["dio","80m","opi_ram"],
["opi","80m","opi_ram"],
["opi","80m","qio_ram"]
]
Expand All @@ -62,7 +70,11 @@
["dio","40m"],
["dout","40m"]
],
"mem_variants":[]
"mem_variants":[
["qout","80m"],
["dio","80m"],
["qio","80m"]
]
},
{
"target": "esp32c3",
Expand All @@ -78,7 +90,11 @@
["dio","40m"],
["dout","40m"]
],
"mem_variants":[]
"mem_variants":[
["qout","80m"],
["dio","80m"],
["qio","80m"]
]
},
{
"target": "esp32",
Expand All @@ -94,7 +110,11 @@
["dio","40m"],
["dout","40m"]
],
"mem_variants":[]
"mem_variants":[
["qout","80m"],
["dio","80m"],
["qio","80m"]
]
}
]
}
6 changes: 5 additions & 1 deletion configs/defconfig.esp32c3
Original file line number Diff line number Diff line change
Expand Up @@ -52,16 +52,20 @@ CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=2304
CONFIG_HAL_ASSERTION_DISABLE=y
CONFIG_LOG_DEFAULT_LEVEL_NONE=y
# CONFIG_LOG_COLORS is not set
CONFIG_LWIP_IPV6_AUTOCONFIG=y
CONFIG_LWIP_LOCAL_HOSTNAME="tasmota"
CONFIG_LWIP_MAX_SOCKETS=16
CONFIG_LWIP_SO_RCVBUF=y
CONFIG_LWIP_IP_FORWARD=y
CONFIG_LWIP_IPV4_NAPT=y
CONFIG_LWIP_DHCP_OPTIONS_LEN=128
CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000
CONFIG_MBEDTLS_PSK_MODES=y
CONFIG_MBEDTLS_KEY_EXCHANGE_PSK=y
CONFIG_NEWLIB_NANO_FORMAT=y
CONFIG_MBEDTLS_PSK_MODES=y
CONFIG_MBEDTLS_KEY_EXCHANGE_PSK=y
CONFIG_NEWLIB_NANO_FORMAT=y
CONFIG_SPI_FLASH_ROM_IMPL=y
CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED=y
# CONFIG_UNITY_ENABLE_FLOAT is not set
# CONFIG_UNITY_ENABLE_DOUBLE is not set
Expand Down
3 changes: 2 additions & 1 deletion configs/defconfig.esp32s2
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ CONFIG_SPIRAM_IGNORE_NOTFOUND=y
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=4096
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=0
CONFIG_LWIP_IPV6_AUTOCONFIG=y
CONFIG_ESP32S2_KEEP_USB_ALIVE=y
CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH=y
CONFIG_HTTPD_WS_SUPPORT=y
Expand Down Expand Up @@ -59,6 +60,7 @@ CONFIG_LWIP_IPV4_NAPT=y
# CONFIG_LWIP_DHCP_DOES_ARP_CHECK is not set
CONFIG_LWIP_DHCP_RESTORE_LAST_IP=y
CONFIG_LWIP_DHCP_OPTIONS_LEN=128
CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000
CONFIG_LWIP_TCP_SYNMAXRTX=6
CONFIG_LWIP_TCP_MSS=1436
CONFIG_LWIP_TCP_RTO_TIME=3000
Expand All @@ -71,7 +73,6 @@ CONFIG_MBEDTLS_KEY_EXCHANGE_PSK=y
CONFIG_NEWLIB_NANO_FORMAT=y
CONFIG_OPENSSL_ASSERT_DO_NOTHING=y
CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=2048
CONFIG_SPI_FLASH_ROM_IMPL=y
CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED=y
CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=10
CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=2
Expand Down
3 changes: 2 additions & 1 deletion configs/defconfig.esp32s3
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ CONFIG_SPIRAM_IGNORE_NOTFOUND=y
CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=4096
CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y
CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=0
CONFIG_LWIP_IPV6_AUTOCONFIG=y
CONFIG_ESP32S3_RTC_CLK_CAL_CYCLES=576
CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH=y
CONFIG_HTTPD_WS_SUPPORT=y
Expand Down Expand Up @@ -86,6 +87,7 @@ CONFIG_LWIP_IPV4_NAPT=y
# CONFIG_LWIP_DHCP_DOES_ARP_CHECK is not set
CONFIG_LWIP_DHCP_RESTORE_LAST_IP=y
CONFIG_LWIP_DHCP_OPTIONS_LEN=128
CONFIG_LWIP_SNTP_UPDATE_DELAY=10800000
CONFIG_LWIP_TCP_SYNMAXRTX=6
CONFIG_LWIP_TCP_MSS=1436
CONFIG_LWIP_TCP_RTO_TIME=3000
Expand All @@ -97,7 +99,6 @@ CONFIG_MBEDTLS_KEY_EXCHANGE_PSK=y
CONFIG_NEWLIB_NANO_FORMAT=y
CONFIG_OPENSSL_ASSERT_DO_NOTHING=y
CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=2048
CONFIG_SPI_FLASH_ROM_IMPL=y
CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED=y
CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=10
CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=2
Expand Down
23 changes: 14 additions & 9 deletions tools/copy-libs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,9 @@

IDF_TARGET=$1
IS_XTENSA=$4
OCT_FLASH=
OCT_FLASH="$2"
OCT_PSRAM=
if [ "$2" = "y" ]; then
OCT_FLASH="opi"
else
OCT_FLASH="qspi"
fi

if [ "$3" = "y" ]; then
OCT_PSRAM="opi"
else
Expand Down Expand Up @@ -514,9 +510,18 @@ done
mkdir -p "$AR_SDK/$MEMCONF/include"
mv "$PWD/build/config/sdkconfig.h" "$AR_SDK/$MEMCONF/include/sdkconfig.h"
for mem_variant in `jq -c '.mem_variants_files[]' configs/builds.json`; do
file=$(echo "$mem_variant" | jq -c '.file' | tr -d '"')
out=$(echo "$mem_variant" | jq -c '.out' | tr -d '"')
mv "$AR_SDK/$out" "$AR_SDK/$MEMCONF/$file"
skip_file=1
for file_target in $(echo "$mem_variant" | jq -c '.targets[]' | tr -d '"'); do
if [ "$file_target" == "$IDF_TARGET" ]; then
skip_file=0
break
fi
done
if [ $skip_file -eq 0 ]; then
file=$(echo "$mem_variant" | jq -c '.file' | tr -d '"')
out=$(echo "$mem_variant" | jq -c '.out' | tr -d '"')
mv "$AR_SDK/$out" "$AR_SDK/$MEMCONF/$file"
fi
done;

# Add IDF versions to sdkconfig
Expand Down
23 changes: 13 additions & 10 deletions tools/copy-mem-variant.sh
Original file line number Diff line number Diff line change
@@ -1,14 +1,8 @@
#!/bin/bash
IDF_TARGET=$1
OCT_FLASH=
OCT_FLASH="$2"
OCT_PSRAM=

if [ "$2" = "y" ]; then
OCT_FLASH="opi"
else
OCT_FLASH="qspi"
fi

if [ "$3" = "y" ]; then
OCT_PSRAM="opi"
else
Expand All @@ -30,7 +24,16 @@ rm -rf "$AR_SDK/$MEMCONF"
mkdir -p "$AR_SDK/$MEMCONF/include"
mv "build/config/sdkconfig.h" "$AR_SDK/$MEMCONF/include/sdkconfig.h"
for mem_variant in `jq -c '.mem_variants_files[]' configs/builds.json`; do
file=$(echo "$mem_variant" | jq -c '.file' | tr -d '"')
src=$(echo "$mem_variant" | jq -c '.src' | tr -d '"')
cp "$src" "$AR_SDK/$MEMCONF/$file"
skip_file=1
for file_target in $(echo "$mem_variant" | jq -c '.targets[]' | tr -d '"'); do
if [ "$file_target" == "$IDF_TARGET" ]; then
skip_file=0
break
fi
done
if [ $skip_file -eq 0 ]; then
file=$(echo "$mem_variant" | jq -c '.file' | tr -d '"')
src=$(echo "$mem_variant" | jq -c '.src' | tr -d '"')
cp "$src" "$AR_SDK/$MEMCONF/$file"
fi
done;