Skip to content

Commit 4ef80a8

Browse files
me-no-devsanketwadekarpillo79valeros
authored
Release/v5.1 (espressif#115)
* Rework the lib-builder for ESP-IDF v5.1 * Update package json with tolls matching the ESP-IDF version * fix: rainmaker examples crashing on s3 due to low stack memory. (espressif#106) (espressif#107) * Update scripts with the latest requirements * Update configs + SR Support * Add esp-elf-gdp to the list of packages * Fix RainMaker builds and new sr models path * Temporary force arduino branch for CI to work * fix target branch * Delete esp-dl component manifest for requiring IDF 4.4.x * Temporary changes to allow Cron CI to run * Support builds based on ESP-IDF tag * Push to esp32-arduino-libs * Update repository_dispatch.sh * Rework scripts to allow build when either dst needs it * Github complains when pushing to the libs repo * Authenticate to the libs repo * Attempt at splitting SDK from Arduino * Archive only the result and reorder deploy commands * Update cron.sh * Fix script and zip paths * Fix download URL and json merger * Change sdk folder structure and fix json generation * Switch output folder from sdk to esp32-arduino-libs * arduino_tinyusb: compile support for DFU mode (espressif#116) * Update PlatformIO build script templates (espressif#118) Adds support for new package with precompiled SDK libraries * Autogenerate PlatformIO manifest file for prebuilt SDK libs (espressif#119) * Autogenerate PlatformIO manifest file for prebuilt SDK libs - Add a special Python script that generates "package.json" with IDF revision from the "version.txt" according to SemVer * Tidy up * Refactor manifest generator Now IDF version and commit hash are passed directly from Git client instead of reading from a pregenerated "version.txt" file * Move IDF definitions to be available with any build * Use more components from registry and add mp3 decoder * esp-sr component requires clearing before each build * revert ESP_SR from component manager * Build ESP_SR only for ESP32-S3 for now * [TinyUSB] Update esp32sx dcd and add dwc2 option * Workaround for recent change in ESP-Insights * Add initial support for ESP32-C6 * Run build tests on ESP32-C6 * Remove -mlongcalls for non-xtensa chips * Temp fix for ESP-Insights on C6 * Add support for ESP32H2 * Added tflite-micro component (espressif#128) * Update build badge in README.md * Added tflite-micro component --------- Co-authored-by: Me No Dev <[email protected]> * Make cron rebuild the libs if they need to be pushed to Arduino For when we change something in the lib-builder, but no new updates are available in ESP-IDF * Update build actions * Fix permissions * Do not build for obsolete Flash modes * Try separate detect for cron builds * Add permissions to github api * Try more basic commit detection * another try to pass vars and get commit * Update push.yml * Update config.sh * Enable builds again * Update build.sh * Combine the artifacts from all jobs * fix and test deploy check * Update push.yml * Disable Memprot to allow loading external elfs * Fix archive name * Disable coredump to flash * Enable SPI ETH KSZ8851SNL * Add temporary support for Arduino SPI Ethernet * Add a temporary fix for relative include in BT lib * Enable Classic BT HID Host and Device for ESP32 * Revert "Enable Classic BT HID Host and Device for ESP32" This reverts commit aa0040ad271d00ac507fd2b478ee143b6c118615. * C6 was added to ESP-SR * Update Ethernet and remove SR workaround * Pin RainMaker version * Update target branch * Add back cron.sh --------- Co-authored-by: Sanket Wadekar <[email protected]> Co-authored-by: Luca Burelli <[email protected]> Co-authored-by: Valerii Koval <[email protected]>
1 parent 45a4845 commit 4ef80a8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+3960
-410
lines changed

Diff for: .github/workflows/cron.yml

+99-3
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ on:
1313
# * * * * *
1414
- cron: '0 */6 * * *'
1515

16+
defaults:
17+
run:
18+
shell: bash
19+
1620
jobs:
1721
run:
1822
name: Build with IDF ${{ matrix.idf_branch }}
@@ -22,7 +26,7 @@ jobs:
2226
matrix:
2327
idf_branch: [release/v5.1, release/v4.4] #, release/v3.3]
2428
steps:
25-
- uses: actions/checkout@v1
29+
- uses: actions/checkout@v3
2630
- name: Install dependencies
2731
run: bash ./tools/prepare-ci.sh
2832
- name: Build
@@ -31,9 +35,101 @@ jobs:
3135
GIT_AUTHOR_EMAIL: ${{ secrets.PUSH_EMAIL }}
3236
GIT_COMMITTER_EMAIL: ${{ secrets.PUSH_EMAIL }}
3337
IDF_BRANCH: ${{ matrix.idf_branch }}
34-
run: bash ./tools/cron.sh
38+
run: |
39+
git checkout ${{ matrix.idf_branch }}
40+
bash ./tools/cron.sh
3541
- name: Upload archive
36-
uses: actions/upload-artifact@v1
42+
uses: actions/upload-artifact@v3
3743
with:
3844
name: artifacts
3945
path: dist
46+
47+
48+
# check:
49+
# name: Check if result should be deployed
50+
# runs-on: ubuntu-latest
51+
# strategy:
52+
# matrix:
53+
# branch: [release/v5.1, release/v4.4] #, release/v3.3]
54+
# outputs:
55+
# idf_branch: ${{ steps.check.outputs.idf_branch }}
56+
# idf_commit: ${{ steps.check.outputs.idf_commit }}
57+
# ar_branch: ${{ steps.check.outputs.ar_branch }}
58+
# ar_new_commit_message: ${{ steps.check.outputs.ar_new_commit_message }}
59+
# ar_new_branch_name: ${{ steps.check.outputs.ar_new_branch_name }}
60+
# ar_new_pr_title: ${{ steps.check.outputs.ar_new_pr_title }}
61+
# ar_has_commit: ${{ steps.check.outputs.ar_has_commit }}
62+
# ar_has_branch: ${{ steps.check.outputs.ar_has_branch }}
63+
# ar_has_pr: ${{ steps.check.outputs.ar_has_pr }}
64+
# libs_version: ${{ steps.check.outputs.libs_version }}
65+
# libs_has_commit: ${{ steps.check.outputs.libs_has_commit }}
66+
# libs_has_branch: ${{ steps.check.outputs.libs_has_branch }}
67+
# steps:
68+
# - uses: actions/checkout@v3
69+
# - id: check
70+
# env:
71+
# GITHUB_TOKEN: ${{ secrets.PUSH_TOKEN }}
72+
# GIT_AUTHOR_EMAIL: ${{ secrets.PUSH_EMAIL }}
73+
# GIT_COMMITTER_EMAIL: ${{ secrets.PUSH_EMAIL }}
74+
# IDF_BRANCH: ${{ matrix.idf_branch }}
75+
# run: bash ./tools/check-deploy-needed.sh
76+
77+
# build:
78+
# name: Build Libs for ${{ matrix.target }}
79+
# runs-on: ubuntu-latest
80+
# needs: check
81+
# if: needs.check.outputs.libs_has_commit == '0' || needs.check.outputs.ar_has_commit == '0'
82+
# strategy:
83+
# matrix:
84+
# target: [esp32, esp32s2, esp32s3, esp32c3, esp32c6, esp32h2]
85+
# fail-fast: false
86+
# steps:
87+
# - uses: actions/checkout@v3
88+
# # - name: Install dependencies
89+
# # run: bash ./tools/prepare-ci.sh
90+
# - shell: bash
91+
# name: Build Libs for ${{ matrix.target }}
92+
# run: echo ${{ matrix.target }}
93+
# # run: bash ./build.sh -t ${{ matrix.target }}
94+
# # - name: Upload archive
95+
# # uses: actions/upload-artifact@v3
96+
# # with:
97+
# # name: artifacts
98+
# # path: dist
99+
100+
# deploy:
101+
# name: Deploy build
102+
# runs-on: ubuntu-latest
103+
# needs: [check, build]
104+
# steps:
105+
# - uses: actions/checkout@v3
106+
# - shell: bash
107+
# env:
108+
# GITHUB_TOKEN: ${{ secrets.PUSH_TOKEN }}
109+
# GIT_AUTHOR_EMAIL: ${{ secrets.PUSH_EMAIL }}
110+
# GIT_COMMITTER_EMAIL: ${{ secrets.PUSH_EMAIL }}
111+
# IDF_BRANCH: ${{ needs.check.outputs.idf_branch }}
112+
# IDF_COMMIT: ${{ needs.check.outputs.idf_commit }}
113+
# AR_BRANCH: ${{ needs.check.outputs.ar_branch }}
114+
# AR_NEW_COMMIT_MESSAGE: ${{ needs.check.outputs.ar_new_commit_message }}
115+
# AR_NEW_BRANCH_NAME: ${{ needs.check.outputs.ar_new_branch_name }}
116+
# AR_NEW_PR_TITLE: ${{ needs.check.outputs.ar_new_pr_title }}
117+
# AR_HAS_COMMIT: ${{ needs.check.outputs.ar_has_commit }}
118+
# AR_HAS_BRANCH: ${{ needs.check.outputs.ar_has_branch }}
119+
# AR_HAS_PR: ${{ needs.check.outputs.ar_has_pr }}
120+
# LIBS_VERSION: ${{ needs.check.outputs.libs_version }}
121+
# LIBS_HAS_COMMIT: ${{ needs.check.outputs.libs_has_commit }}
122+
# LIBS_HAS_BRANCH: ${{ needs.check.outputs.libs_has_branch }}
123+
# run: |
124+
# echo "IDF_COMMIT: $IDF_COMMIT"
125+
# echo "AR_BRANCH: $AR_BRANCH"
126+
# echo "AR_NEW_COMMIT_MESSAGE: $AR_NEW_COMMIT_MESSAGE"
127+
# echo "AR_NEW_BRANCH_NAME: $AR_NEW_BRANCH_NAME"
128+
# echo "AR_NEW_PR_TITLE: $AR_NEW_PR_TITLE"
129+
# echo "AR_HAS_COMMIT: $AR_HAS_COMMIT"
130+
# echo "AR_HAS_BRANCH: $AR_HAS_BRANCH"
131+
# echo "AR_HAS_PR: $AR_HAS_PR"
132+
# echo "LIBS_VERSION: $LIBS_VERSION"
133+
# echo "LIBS_HAS_COMMIT: $LIBS_HAS_COMMIT"
134+
# echo "LIBS_HAS_BRANCH: $LIBS_HAS_BRANCH"
135+

Diff for: .github/workflows/push.yml

+33-4
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,50 @@ concurrency:
1111
cancel-in-progress: true
1212

1313
jobs:
14+
1415
build-libs:
1516
name: Build Libs for ${{ matrix.target }}
1617
runs-on: ubuntu-latest
1718
strategy:
1819
matrix:
19-
target: [esp32, esp32s2, esp32s3, esp32c3]
20+
target: [esp32, esp32s2, esp32s3, esp32c3, esp32c6, esp32h2]
2021
fail-fast: false
2122
steps:
2223
- uses: actions/checkout@v3
2324
- name: Install dependencies
2425
run: bash ./tools/prepare-ci.sh
2526
- name: Build Libs for ${{ matrix.target }}
26-
run: bash ./build.sh -t ${{ matrix.target }}
27+
run: bash ./build.sh -e -t ${{ matrix.target }}
2728
- name: Upload archive
28-
uses: actions/upload-artifact@v1
29+
uses: actions/upload-artifact@v3
2930
with:
30-
name: artifacts-${{ matrix.target }}
31+
name: artifacts
3132
path: dist
33+
34+
combine-artifacts:
35+
name: Combine artifacts
36+
needs: build-libs
37+
runs-on: ubuntu-latest
38+
steps:
39+
- name: Download artifacts
40+
uses: actions/download-artifact@v3
41+
with:
42+
name: artifacts
43+
path: dist
44+
- shell: bash
45+
run: |
46+
mkdir -p out
47+
find dist -name 'arduino-esp32-libs-esp*.tar.gz' -exec tar zxvf {} -C out \;
48+
cd out/tools/esp32-arduino-libs && tar zcf ../../../dist/esp32-arduino-libs.tar.gz * && cd ../../..
49+
cp out/package_esp32_index.template.json dist/package_esp32_index.template.json
50+
- name: Upload full esp32-arduino-libs archive
51+
uses: actions/upload-artifact@v3
52+
with:
53+
name: esp32-arduino-libs
54+
path: dist/esp32-arduino-libs.tar.gz
55+
- name: Upload package_esp32_index.template.json
56+
uses: actions/upload-artifact@v3
57+
with:
58+
name: package-esp32-index-json
59+
path: dist/package_esp32_index.template.json
60+

Diff for: .github/workflows/repository_dispatch.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
name: Dispatch Event
88
runs-on: ubuntu-latest
99
steps:
10-
- uses: actions/checkout@v1
10+
- uses: actions/checkout@v3
1111
- name: Install dependencies
1212
run: bash ./tools/prepare-ci.sh
1313
- name: Handle Event
@@ -17,7 +17,7 @@ jobs:
1717
GIT_COMMITTER_EMAIL: ${{ secrets.PUSH_EMAIL }}
1818
run: bash ./tools/repository_dispatch.sh
1919
- name: Upload archive
20-
uses: actions/upload-artifact@v1
20+
uses: actions/upload-artifact@v3
2121
with:
2222
name: artifacts
2323
path: dist

Diff for: .gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ components/esp-rainmaker/
1010
components/espressif__esp-dsp/
1111
components/esp-insights/
1212
components/arduino_tinyusb/tinyusb/
13+
components/tflite-micro/
1314
esp-idf/
1415
out/
1516
build/
@@ -19,3 +20,5 @@ sdkconfig
1920
sdkconfig.old
2021
version.txt
2122
dependencies.lock
23+
managed_components/
24+
target/

Diff for: CMakeLists.txt

+5-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@
33
cmake_minimum_required(VERSION 3.5)
44

55
set(RMAKER_PATH ${CMAKE_SOURCE_DIR}/components/esp-rainmaker)
6-
set(EXTRA_COMPONENT_DIRS ${RMAKER_PATH}/components/esp-insights/components ${RMAKER_PATH}/components ${CMAKE_SOURCE_DIR}/components/esp-insights/components)
6+
set(INSIGHTS_PATH ${RMAKER_PATH}/components/esp-insights)
7+
set(TFLITE_PATH ${CMAKE_SOURCE_DIR}/components/tflite-micro)
8+
9+
set(EXTRA_COMPONENT_DIRS ${INSIGHTS_PATH}/components ${RMAKER_PATH}/components ${TFLITE_PATH}/components)
710

811
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
912
project(arduino-lib-builder)
@@ -13,7 +16,7 @@ idf_build_get_property(elf EXECUTABLE GENERATOR_EXPRESSION)
1316
add_custom_command(
1417
OUTPUT "idf_libs"
1518
COMMAND ${CMAKE_SOURCE_DIR}/tools/copy-libs.sh ${IDF_TARGET} "${CONFIG_LIB_BUILDER_FLASHMODE}" "${CONFIG_SPIRAM_MODE_OCT}" "${CONFIG_IDF_TARGET_ARCH_XTENSA}"
16-
DEPENDS ${elf}
19+
DEPENDS all
1720
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
1821
VERBATIM
1922
)

0 commit comments

Comments
 (0)