Skip to content

Commit f320ca2

Browse files
authored
Phase out of Tasmota espressif32 frameworks solo1 and ITEAD (#22315)
* Step 1 of phase out of special frameworks solo1 and ITEAD
1 parent 813dc27 commit f320ca2

7 files changed

+21
-40
lines changed

.github/workflows/build_all_the_things.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
fail-fast: true
2626
matrix:
2727
variant:
28-
- tasmota32solo1-safeboot
28+
- tasmota32-webcam
2929
steps:
3030
- uses: actions/checkout@v4
3131
- name: Set up Python
@@ -53,7 +53,7 @@ jobs:
5353
fail-fast: true
5454
matrix:
5555
variant:
56-
- tasmota32-webcam
56+
- tasmota32solo1-safeboot
5757
steps:
5858
- uses: actions/checkout@v4
5959
- name: Set up Python
File renamed without changes.

pio-tools/post_esp32.py

+5-27
Original file line numberDiff line numberDiff line change
@@ -43,30 +43,14 @@
4343
sections = env.subst(env.get("FLASH_EXTRA_IMAGES"))
4444
chip = env.get("BOARD_MCU")
4545
mcu_build_variant = env.BoardConfig().get("build.variant", "").lower()
46+
FRAMEWORK_DIR = platform.get_package_dir("framework-arduinoespressif32")
4647

4748
# Copy safeboots firmwares in place when running in Github
4849
github_actions = os.getenv('GITHUB_ACTIONS')
49-
extra_flags = ''.join([element.replace("-D", " ") for element in env.BoardConfig().get("build.extra_flags", "")])
50-
build_flags = ''.join([element.replace("-D", " ") for element in env.GetProjectOption("build_flags")])
51-
52-
if "CORE32SOLO1" in extra_flags or "FRAMEWORK_ARDUINO_SOLO1" in build_flags:
53-
FRAMEWORK_DIR = platform.get_package_dir("framework-arduino-solo1")
54-
if github_actions and os.path.exists("./firmware/firmware"):
55-
shutil.copytree("./firmware/firmware", "/home/runner/.platformio/packages/framework-arduino-solo1/variants/tasmota")
56-
if variants_dir:
57-
shutil.copytree("./firmware/firmware", variants_dir, dirs_exist_ok=True)
58-
elif "CORE32ITEAD" in extra_flags or "FRAMEWORK_ARDUINO_ITEAD" in build_flags:
59-
FRAMEWORK_DIR = platform.get_package_dir("framework-arduino-ITEAD")
60-
if github_actions and os.path.exists("./firmware/firmware"):
61-
shutil.copytree("./firmware/firmware", "/home/runner/.platformio/packages/framework-arduino-ITEAD/variants/tasmota")
62-
if variants_dir:
63-
shutil.copytree("./firmware/firmware", variants_dir, dirs_exist_ok=True)
64-
else:
65-
FRAMEWORK_DIR = platform.get_package_dir("framework-arduinoespressif32")
66-
if github_actions and os.path.exists("./firmware/firmware"):
67-
shutil.copytree("./firmware/firmware", "/home/runner/.platformio/packages/framework-arduinoespressif32/variants/tasmota")
68-
if variants_dir:
69-
shutil.copytree("./firmware/firmware", variants_dir, dirs_exist_ok=True)
50+
if github_actions and os.path.exists("./firmware/firmware"):
51+
shutil.copytree("./firmware/firmware", "/home/runner/.platformio/packages/framework-arduinoespressif32/variants/tasmota", dirs_exist_ok=True)
52+
if variants_dir:
53+
shutil.copytree("./firmware/firmware", variants_dir, dirs_exist_ok=True)
7054

7155
# Copy pins_arduino.h to variants folder
7256
if variants_dir:
@@ -129,12 +113,6 @@ def patch_partitions_bin(size_string):
129113
def esp32_create_chip_string(chip):
130114
tasmota_platform_org = env.subst("$BUILD_DIR").split(os.path.sep)[-1]
131115
tasmota_platform = tasmota_platform_org.split('-')[0]
132-
if ("CORE32SOLO1" in extra_flags or "FRAMEWORK_ARDUINO_SOLO1" in build_flags) and "tasmota32-safeboot" not in tasmota_platform_org and "tasmota32solo1" not in tasmota_platform_org:
133-
print(Fore.YELLOW + "Unexpected naming convention in this build environment:" + Fore.RED, tasmota_platform_org)
134-
print(Fore.YELLOW + "Expected build environment name like " + Fore.GREEN + "'tasmota32solo1-whatever-you-want'")
135-
print(Fore.YELLOW + "Please correct your actual build environment, to avoid undefined behavior in build process!!")
136-
tasmota_platform = "tasmota32solo1"
137-
return tasmota_platform
138116
if "tasmota" + chip[3:] not in tasmota_platform: # check + fix for a valid name like 'tasmota' + '32c3'
139117
tasmota_platform = "tasmota" + chip[3:]
140118
if "-DUSE_USB_CDC_CONSOLE" not in env.BoardConfig().get("build.extra_flags"):

pio-tools/strip-flags.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
try:
99
link_flags.pop(link_flags.index("-Wl,--wrap=panicHandler"))
1010
except:
11-
do_nothing=""
11+
pass
1212
try:
1313
link_flags.pop(link_flags.index("-Wl,--wrap=xt_unhandled_exception"))
1414
except:
15-
do_nothing=""
15+
pass

platformio_override_sample.ini

-2
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,6 @@ lib_extra_dirs = ${library.lib_extra_dirs}
8080
;platform = https://github.com/Jason2866/platform-espressif32/releases/download/2024.07.22/platform-espressif32.zip
8181

8282
;platform_packages = framework-arduinoespressif32 @
83-
; framework-arduino-solo1 @
84-
; framework-arduino-ITEAD @
8583
;build_unflags = ${esp32_defaults.build_unflags}
8684
;build_flags = ${esp32_defaults.build_flags}
8785
;board = esp32

platformio_tasmota_cenv_sample.ini

+2-1
Original file line numberDiff line numberDiff line change
@@ -177,13 +177,14 @@ build_flags = ${env:tasmota32_base.build_flags}
177177
[env:tasmota32solo1-ocd]
178178
build_type = debug
179179
extends = env:tasmota32solo1
180-
board = esp32_solo1
180+
board = esp32-solo1
181181
debug_tool = esp-prog
182182
upload_protocol = esp-prog
183183
debug_init_break = tbreak setup
184184
build_unflags = ${env:tasmota32_base.build_unflags}
185185
build_flags = ${env:tasmota32_base.build_flags}
186186
-DOTA_URL='""'
187+
custom_sdkconfig = CONFIG_FREERTOS_UNICORE=y
187188

188189
[env:tasmota32s2-ocd]
189190
build_type = debug

platformio_tasmota_env32.ini

+10-6
Original file line numberDiff line numberDiff line change
@@ -28,24 +28,25 @@ custom_files_upload = no_files
2828

2929
[env:tasmota32-safeboot]
3030
extends = env:tasmota32_base
31-
board = esp32_solo1
31+
board = esp32-solo1
3232
board_build.app_partition_name = safeboot
3333
build_flags = ${env:tasmota32_base.build_flags}
34-
-DFRAMEWORK_ARDUINO_SOLO1
3534
-DFIRMWARE_SAFEBOOT
3635
-DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-safeboot.bin"'
3736
lib_extra_dirs = lib/lib_ssl, lib/libesp32
3837
lib_ignore = ${safeboot_flags.lib_ignore}
38+
custom_sdkconfig = CONFIG_FREERTOS_UNICORE=y
3939

4040
[env:tasmota32solo1-safeboot]
4141
extends = env:tasmota32_base
42-
board = esp32_solo1
42+
board = esp32-solo1
4343
board_build.app_partition_name = safeboot
4444
build_flags = ${env:tasmota32_base.build_flags}
4545
-DFIRMWARE_SAFEBOOT
4646
-DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32solo1-safeboot.bin"'
4747
lib_extra_dirs = lib/lib_ssl, lib/libesp32
4848
lib_ignore = ${safeboot_flags.lib_ignore}
49+
custom_sdkconfig = CONFIG_FREERTOS_UNICORE=y
4950

5051
[env:tasmota32s2-safeboot]
5152
extends = env:tasmota32_base
@@ -145,14 +146,15 @@ build_flags = ${env:tasmota32_base.build_flags}
145146

146147
[env:tasmota32solo1]
147148
extends = env:tasmota32_base
148-
board = esp32_solo1
149+
board = esp32-solo1
149150
build_flags = ${env:tasmota32_base.build_flags}
150151
-DFIRMWARE_TASMOTA32
151152
-DCODE_IMAGE_STR='"solo1"'
152153
-DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32solo1.bin"'
153154
lib_ignore = ${env:tasmota32_base.lib_ignore}
154155
Micro-RTSP
155156
epdiy
157+
custom_sdkconfig = CONFIG_FREERTOS_UNICORE=y
156158

157159
[env:tasmota32s2]
158160
extends = env:tasmota32_base
@@ -262,21 +264,23 @@ board_build.partitions = partitions/esp32_partition_app1856k_fs1344k.csv
262264
build_flags = ${env:tasmota32_base.build_flags}
263265
-DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-zbbrdgpro.bin"'
264266
-DFIRMWARE_ZBBRDGPRO
265-
-DFRAMEWORK_ARDUINO_ITEAD
266267
custom_files_upload = ${env:tasmota32_base.custom_files_upload}
267268
tools/fw_SonoffZigbeeBridgePro_cc2652/Sonoff_ZBPro.autoconf
268269
tasmota/berry/zigbee/cc2652_flasher.be
269270
tasmota/berry/zigbee/intelhex.be
270271
tasmota/berry/zigbee/sonoff_zb_pro_flasher.be
271272
tools/fw_SonoffZigbeeBridgePro_cc2652/SonoffZBPro_coord_20220219.hex
272273
lib_extra_dirs = lib/lib_basic, lib/lib_ssl, lib/libesp32
274+
custom_sdkconfig = CONFIG_D0WD_PSRAM_CLK_IO=5
275+
CONFIG_D0WD_PSRAM_CS_IO=18
273276

274277
[env:tasmota32-nspanel]
275278
extends = env:tasmota32_base
276279
build_flags = ${env:tasmota32_base.build_flags}
277280
-DFIRMWARE_NSPANEL
278-
-DFRAMEWORK_ARDUINO_ITEAD
279281
-DOTA_URL='"http://ota.tasmota.com/tasmota32/release/tasmota32-nspanel.bin"'
282+
custom_sdkconfig = CONFIG_D0WD_PSRAM_CLK_IO=5
283+
CONFIG_D0WD_PSRAM_CS_IO=18
280284

281285
[env:tasmota32-AD]
282286
extends = env:tasmota32_base

0 commit comments

Comments
 (0)