Skip to content

Commit 83e90f2

Browse files
authored
Merge pull request #283 from brentru/merge-bins-esp32
Fix and merge binaries for ESP32 Web Tool
2 parents c03b22a + 64122e1 commit 83e90f2

File tree

3 files changed

+91
-6
lines changed

3 files changed

+91
-6
lines changed

.github/workflows/build-clang-doxy.yml

Lines changed: 89 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,13 @@ jobs:
6060
wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.uf2
6161
wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.bin
6262
63-
build-esp32:
64-
name: Build WipperSnapper ESP32
63+
build-esp32-4M:
64+
name: Build WipperSnapper ESP32 4M
6565
runs-on: ubuntu-latest
6666
strategy:
6767
fail-fast: false
6868
matrix:
69-
arduino-platform: ["feather_esp32", "feather_esp32_v2", "qtpy_esp32"]
69+
arduino-platform: ["feather_esp32"]
7070
steps:
7171
- uses: actions/setup-python@v1
7272
with:
@@ -86,6 +86,82 @@ jobs:
8686
- name: Install extra Arduino libraries
8787
run: |
8888
git clone --quiet https://github.com/brentru/Adafruit_MQTT_Library.git /home/runner/Arduino/libraries/Adafruit_MQTT_Library
89+
- name: Install Dependencies
90+
run: |
91+
pip3 install esptool
92+
- name: build ESP32 platforms
93+
run: python3 ci/build_platform.py ${{ matrix.arduino-platform }}
94+
- name: Rename build artifacts to reflect the platform name
95+
run: |
96+
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bin
97+
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.elf wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.elf
98+
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.map wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.map
99+
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.bootloader.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin
100+
mv examples/Wippersnapper_demo/build/*/Wippersnapper_demo.ino.partitions.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin
101+
102+
- name: Check boot_app0 file existence (esp32 built from core, not-source)
103+
id: check_files
104+
uses: andstor/file-existence-action@v1
105+
with:
106+
files: "/home/runner/.arduino15/packages/esp32/hardware/esp32/*/tools/partitions/boot_app0.bin"
107+
108+
- name: boot_app0 file from arduino-cli core
109+
if: steps.check_files.outputs.files_exists == 'true'
110+
run: mv /home/runner/.arduino15/packages/esp32/hardware/esp32/*/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin
111+
112+
- name: boot_app0 file from esp32 source bsp
113+
if: steps.check_files.outputs.files_exists == 'false'
114+
run: mv /home/runner/Arduino/hardware/espressif/esp32/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin
115+
116+
- name: Create combined binary using Esptool merge_bin
117+
run: |
118+
python3 -m esptool --chip esp32 merge_bin --flash_mode dio --flash_freq 80m --flash_size 4MB \
119+
-o wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.combined.bin \
120+
0x1000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin \
121+
0x8000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin \
122+
0xe000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin \
123+
0x10000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bin
124+
125+
- name: Zip build artifacts
126+
run: |
127+
zip -r wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.zip wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.*
128+
- name: upload build artifacts zip
129+
uses: actions/upload-artifact@v2
130+
with:
131+
name: build-files
132+
path: |
133+
wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.zip
134+
135+
136+
build-esp32-8M:
137+
name: Build WipperSnapper ESP32 8M
138+
runs-on: ubuntu-latest
139+
strategy:
140+
fail-fast: false
141+
matrix:
142+
arduino-platform: ["feather_esp32_v2", "qtpy_esp32"]
143+
steps:
144+
- uses: actions/setup-python@v1
145+
with:
146+
python-version: '3.x'
147+
- uses: actions/checkout@v2
148+
- name: Get WipperSnapper version
149+
run: |
150+
git fetch --prune --unshallow --tags
151+
git describe --dirty --tags
152+
echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
153+
- uses: actions/checkout@v2
154+
with:
155+
repository: adafruit/ci-arduino
156+
path: ci
157+
- name: Install CI-Arduino
158+
run: bash ci/actions_install.sh
159+
- name: Install extra Arduino libraries
160+
run: |
161+
git clone --quiet https://github.com/brentru/Adafruit_MQTT_Library.git /home/runner/Arduino/libraries/Adafruit_MQTT_Library
162+
- name: Install Dependencies
163+
run: |
164+
pip3 install esptool
89165
- name: build ESP32 platforms
90166
run: python3 ci/build_platform.py ${{ matrix.arduino-platform }}
91167
- name: Rename build artifacts to reflect the platform name
@@ -110,6 +186,15 @@ jobs:
110186
if: steps.check_files.outputs.files_exists == 'false'
111187
run: mv /home/runner/Arduino/hardware/espressif/esp32/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin
112188

189+
- name: Create combined binary using Esptool merge_bin
190+
run: |
191+
python3 -m esptool --chip esp32 merge_bin --flash_mode dio --flash_freq 80m --flash_size 8MB \
192+
-o wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.combined.bin \
193+
0x1000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin \
194+
0x8000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin \
195+
0xe000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin \
196+
0x10000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bin
197+
113198
- name: Zip build artifacts
114199
run: |
115200
zip -r wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.zip wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.*
@@ -317,7 +402,7 @@ jobs:
317402
318403
clang_and_doxy:
319404
runs-on: ubuntu-latest
320-
needs: [build-samd, build-esp32, build-esp32c3, build-esp32sx, build-esp8266, build-samd-non-fs]
405+
needs: [build-samd, build-esp32-4M, build-esp32-8M, build-esp32c3, build-esp32sx, build-esp8266, build-samd-non-fs]
321406
steps:
322407
- uses: actions/setup-python@v1
323408
with:

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name=Adafruit WipperSnapper
2-
version=1.0.0-beta.39
2+
version=1.0.0-beta.40
33
author=Adafruit
44
maintainer=Adafruit <adafruitio@adafruit.com>
55
sentence=Arduino client for Adafruit.io WipperSnapper

src/Wippersnapper.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@
6060
#endif
6161

6262
#define WS_VERSION \
63-
"1.0.0-beta.39" ///< WipperSnapper app. version (semver-formatted)
63+
"1.0.0-beta.40" ///< WipperSnapper app. version (semver-formatted)
6464

6565
// Reserved Adafruit IO MQTT topics
6666
#define TOPIC_IO_THROTTLE "/throttle" ///< Adafruit IO Throttle MQTT Topic

0 commit comments

Comments
 (0)