Skip to content

Commit bdd9207

Browse files
committed
Allow ovverride of stm32_variant
1 parent 7b83d25 commit bdd9207

File tree

5 files changed

+178
-167
lines changed

5 files changed

+178
-167
lines changed

ini/stm32-common.ini

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
####################################
1111

1212
# For Compatibility. Should be set to version that is last known to work across all boards.
13-
[common_stm32]
13+
[common_stm32_stable]
1414
platform = ststm32@~12.1
1515
board_build.core = stm32
1616
build_flags = ${common.build_flags} -std=gnu++14
@@ -41,18 +41,29 @@ build_flags = ${common_stm32.build_flags}
4141
build_unflags = -std=gnu++14
4242

4343
#
44-
# STM32 board based on a variant.
44+
# STM32 boards based on variants (copied from buildroot/share/PlatformIO/variants)
4545
#
46-
[stm32_variant]
47-
extends = common_stm32
48-
extra_scripts = ${common_stm32.extra_scripts}
46+
[stm32_variant_stable]
47+
extends = common_stm32_stable
48+
extra_scripts = ${common_stm32_stable.extra_scripts}
4949
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
5050
buildroot/share/PlatformIO/scripts/offset_and_rename.py
5151

5252
[stm32_variant_latest]
5353
extends = common_stm32_latest
5454
extra_scripts = ${stm32_variant.extra_scripts}
5555

56+
#
57+
# Change 'extends' here to use the stable or latest STM32 platform
58+
#
59+
[common_stm32]
60+
extends = common_stm32_stable
61+
#extends = common_stm32_latest
62+
63+
[stm32_variant]
64+
extends = stm32_variant_stable
65+
#extends = stm32_variant_latest
66+
5667
#
5768
# USB Flash Drive mix-ins for STM32
5869
#

ini/stm32f0.ini

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,29 +23,29 @@
2323
# Malyan M200 v2 (STM32F070RB)
2424
#
2525
[env:STM32F070RB_malyan]
26-
extends = common_stm32_latest
26+
extends = common_stm32
2727
board = marlin_malyanM200v2
28-
build_flags = ${common_stm32_latest.build_flags} -DHAL_PCD_MODULE_ENABLED
28+
build_flags = ${common_stm32.build_flags} -DHAL_PCD_MODULE_ENABLED
2929
-O2 -ffreestanding -fsigned-char -fno-move-loop-invariants
3030
-fno-strict-aliasing -DCUSTOM_STARTUP_FILE
3131

3232
#
3333
# Malyan M200 v2 (STM32F070CB)
3434
#
3535
[env:STM32F070CB_malyan]
36-
extends = common_stm32_latest
36+
extends = common_stm32
3737
board = malyanm200_f070cb
38-
build_flags = ${common_stm32_latest.build_flags}
38+
build_flags = ${common_stm32.build_flags}
3939
-DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB
4040
-DHAL_UART_MODULE_ENABLED -DCUSTOM_STARTUP_FILE
4141

4242
#
4343
# Malyan M300 (STM32F070CB)
4444
#
4545
[env:malyan_M300]
46-
extends = common_stm32_latest
46+
extends = common_stm32
4747
board = malyanm300_f070cb
48-
build_flags = ${common_stm32_latest.build_flags}
48+
build_flags = ${common_stm32.build_flags}
4949
-DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB
5050
-DHAL_UART_MODULE_ENABLED
5151
build_src_filter = ${common.default_src_filter} +<src/HAL/STM32> -<src/HAL/STM32/tft>

ini/stm32f1.ini

Lines changed: 51 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -20,33 +20,33 @@
2020
#################################
2121

2222
[common_STM32F103RC_variant]
23-
extends = stm32_variant_latest
23+
extends = stm32_variant
2424
board = genericSTM32F103RC
25-
build_flags = ${stm32_variant_latest.build_flags}
25+
build_flags = ${stm32_variant.build_flags}
2626
-DDEBUG_LEVEL=0 -D_STM32_PLATDEFS=MARLIN_F103Rx
2727
monitor_speed = 115200
2828

2929
#
3030
# STM32F103RE
3131
#
3232
[env:STM32F103RE]
33-
extends = common_stm32_latest
33+
extends = common_stm32
3434
board = genericSTM32F103RE
3535
monitor_speed = 115200
3636

3737
#
3838
# STM32F103VE
3939
#
4040
[env:STM32F103VE]
41-
extends = common_stm32_latest
41+
extends = common_stm32
4242
board = genericSTM32F103VE
4343
monitor_speed = 115200
4444

4545
#
4646
# STM32F103ZE
4747
#
4848
[env:STM32F103ZE]
49-
extends = common_stm32_latest
49+
extends = common_stm32
5050
board = genericSTM32F103ZE
5151
monitor_speed = 115200
5252

@@ -91,15 +91,15 @@ lib_deps = markyue/[email protected]
9191
# Uses HAL STM32 to support Marlin UI for TFT screen with optional touch panel
9292
#
9393
[env:mks_robin]
94-
extends = stm32_variant_latest
94+
extends = stm32_variant
9595
board = genericSTM32F103ZE
9696
board_build.encrypt_mks = Robin.bin
9797
board_build.offset = 0x7000
9898
board_build.offset_address = 0x08007000
99-
build_flags = ${stm32_variant_latest.build_flags}
99+
build_flags = ${stm32_variant.build_flags}
100100
-DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
101101
-D_STM32_PLATDEFS=MARLIN_F103Zx
102-
build_unflags = ${stm32_variant_latest.build_unflags}
102+
build_unflags = ${stm32_variant.build_unflags}
103103
-DUSBCON -DUSBD_USE_CDC
104104

105105
#
@@ -120,16 +120,16 @@ debug_tool = stlink
120120
# Creality (STM32F103Rx)
121121
#
122122
[STM32F103Rx_creality]
123-
extends = stm32_variant_latest
123+
extends = stm32_variant
124124
board_build.offset = 0x7000
125125
board_upload.offset_address = 0x08007000
126126
board_build.rename = firmware-{date}-{time}.bin
127-
build_flags = ${stm32_variant_latest.build_flags}
127+
build_flags = ${stm32_variant.build_flags}
128128
-DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED
129129
-DSS_TIMER=4 -DTIMER_SERVO=TIM5
130130
-DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8
131131
-D_STM32_PLATDEFS=MARLIN_F103Rx
132-
build_unflags = ${stm32_variant_latest.build_unflags}
132+
build_unflags = ${stm32_variant.build_unflags}
133133
-DUSBCON -DUSBD_USE_CDC
134134
monitor_speed = 115200
135135
debug_tool = jlink
@@ -212,11 +212,11 @@ build_flags = ${STM32F103Rx_creality.build_flags}
212212
# STM32F103RE_btt_USB ......... RET6 with USB Media Share Support
213213
#
214214
[env:STM32F103RE_btt]
215-
extends = stm32_variant_latest
215+
extends = stm32_variant
216216
board = genericSTM32F103RE
217217
board_build.offset = 0x7000
218218
board_upload.offset_address = 0x08007000
219-
build_flags = ${stm32_variant_latest.build_flags}
219+
build_flags = ${stm32_variant.build_flags}
220220
-DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED
221221
-DSS_TIMER=4 -DTIMER_SERVO=TIM5
222222
-DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8
@@ -243,47 +243,47 @@ board_build.encrypt_mks = elegoo.bin
243243
# Mingda MPX_ARM_MINI
244244
#
245245
[env:mingda_mpx_arm_mini]
246-
extends = stm32_variant_latest
246+
extends = stm32_variant
247247
board = genericSTM32F103ZE
248248
board_build.offset = 0x10000
249249
board_build.offset_address = 0x08010000
250-
build_flags = ${stm32_variant_latest.build_flags}
250+
build_flags = ${stm32_variant.build_flags}
251251
-DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
252252
-D_STM32_PLATDEFS=MARLIN_F103Zx
253-
build_unflags = ${stm32_variant_latest.build_unflags}
253+
build_unflags = ${stm32_variant.build_unflags}
254254
-DUSBCON -DUSBD_USE_CDC
255255

256256
#
257257
# Malyan M200 (STM32F103CB)
258258
#
259259
[env:STM32F103CB_malyan]
260-
extends = common_stm32_latest
260+
extends = common_stm32
261261
board = malyanm200_f103cb
262-
build_flags = ${common_stm32_latest.build_flags}
262+
build_flags = ${common_stm32.build_flags}
263263
-DHAL_PCD_MODULE_ENABLED -DDISABLE_GENERIC_SERIALUSB
264264
-DHAL_UART_MODULE_ENABLED
265-
build_src_filter = ${common_stm32_latest.build_src_filter} +<src/HAL/STM32> -<src/HAL/STM32/tft>
265+
build_src_filter = ${common_stm32.build_src_filter} +<src/HAL/STM32> -<src/HAL/STM32/tft>
266266

267267
#
268268
# FLYmaker FLY Mini (STM32F103RCT6)
269269
#
270270
[env:FLY_MINI]
271-
extends = stm32_variant_latest
271+
extends = stm32_variant
272272
board = genericSTM32F103RC
273273
board_build.offset = 0x5000
274274
board_upload.offset_address = 0x08005000
275-
build_flags = ${stm32_variant_latest.build_flags} -DSS_TIMER=4 -DSTM32_FLASH_SIZE=256 -D_STM32_PLATDEFS=MARLIN_F103Rx
275+
build_flags = ${stm32_variant.build_flags} -DSS_TIMER=4 -DSTM32_FLASH_SIZE=256 -D_STM32_PLATDEFS=MARLIN_F103Rx
276276

277277
#
278278
# (STM32F103VE_robin)
279279
#
280280
[STM32F103VE_robin]
281-
extends = stm32_variant_latest
281+
extends = stm32_variant
282282
board = genericSTM32F103VE
283283
board_build.variant = MARLIN_F103Vx
284284
board_build.offset = 0x7000
285285
board_upload.offset_address = 0x08007000
286-
build_flags = ${stm32_variant_latest.build_flags} -DMCU_STM32F103VE -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 -DSS_TIMER=4
286+
build_flags = ${stm32_variant.build_flags} -DMCU_STM32F103VE -DTIMER_TONE=TIM3 -DTIMER_SERVO=TIM2 -DSS_TIMER=4
287287
-D_STM32_PLATDEFS=MARLIN_F103Vx
288288

289289
[mks_robin_nano_v1v2_common]
@@ -339,12 +339,12 @@ build_unflags = ${STM32F103VE_robin.build_unflags} -DUSBCON -DUSBD
339339
# MKS Robin Lite/Lite2 (STM32F103RCT6)
340340
#
341341
[env:mks_robin_lite]
342-
extends = stm32_variant_latest
342+
extends = stm32_variant
343343
board = genericSTM32F103RC
344344
board_build.encrypt_mks = mksLite.bin
345345
board_build.offset = 0x5000
346346
board_upload.offset_address = 0x08005000
347-
build_flags = ${stm32_variant_latest.build_flags}
347+
build_flags = ${stm32_variant.build_flags}
348348
-D_STM32_PLATDEFS=MARLIN_F103Rx
349349

350350
#
@@ -365,16 +365,16 @@ board_build.encrypt_mks = Robin_pro.bin
365365
# JGAurora A5S A1 (STM32F103ZET6)
366366
#
367367
[env:jgaurora_a5s_a1]
368-
extends = stm32_variant_latest
368+
extends = stm32_variant
369369
board = genericSTM32F103ZE
370370
board_build.offset = 0xA000
371371
board_upload.offset_address = 0x0800A000
372-
build_flags = ${stm32_variant_latest.build_flags}
372+
build_flags = ${stm32_variant.build_flags}
373373
-DSTM32F1xx -DSTM32_XL_DENSITY
374374
-D_STM32_PLATDEFS=MARLIN_F103Zx
375-
build_unflags = ${stm32_variant_latest.build_unflags}
375+
build_unflags = ${stm32_variant.build_unflags}
376376
-DUSBCON -DUSBD_USE_CDC
377-
extra_scripts = ${stm32_variant_latest.extra_scripts}
377+
extra_scripts = ${stm32_variant.extra_scripts}
378378
buildroot/share/PlatformIO/scripts/jgaurora_a5s_a1_with_bootloader.py
379379

380380
#
@@ -393,67 +393,67 @@ upload_protocol = serial
393393
# Longer 3D board in Alfawise U20 (STM32F103VET6)
394394
#
395395
[env:STM32F103VE_longer]
396-
extends = stm32_variant_latest
396+
extends = stm32_variant
397397
lib_deps = ${common.lib_deps}
398398
https://github.com/tpruvot/STM32_Servo_OpenDrain/archive/2.0.zip
399399
board = genericSTM32F103VE
400400
board_build.rename = project.bin
401401
board_build.offset = 0x10000
402402
board_upload.offset_address = 0x08010000
403-
build_flags = ${stm32_variant_latest.build_flags}
403+
build_flags = ${stm32_variant.build_flags}
404404
-DMCU_STM32F103VE -DU20 -DTS_V12
405405
-D_STM32_PLATDEFS=MARLIN_F103VE_LONGER
406-
build_unflags = ${stm32_variant_latest.build_unflags} -DUSBCON -DUSBD_USE_CDC -DHAL_PCD_MODULE_ENABLED
407-
extra_scripts = ${stm32_variant_latest.extra_scripts}
406+
build_unflags = ${stm32_variant.build_unflags} -DUSBCON -DUSBD_USE_CDC -DHAL_PCD_MODULE_ENABLED
407+
extra_scripts = ${stm32_variant.extra_scripts}
408408
monitor_speed = 250000
409409
debug_tool = stlink
410410

411411
#
412412
# TRIGORILLA PRO (STM32F103ZET6)
413413
#
414414
[env:trigorilla_pro]
415-
extends = stm32_variant_latest
415+
extends = stm32_variant
416416
board = genericSTM32F103ZE
417417
board_build.variant = MARLIN_F103Zx
418-
build_flags = ${stm32_variant_latest.build_flags}
418+
build_flags = ${stm32_variant.build_flags}
419419
-DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5 -DSTM32_FLASH_SIZE=512
420420
-D_STM32_PLATDEFS=MARLIN_F103Zx
421-
build_unflags = ${stm32_variant_latest.build_unflags}
421+
build_unflags = ${stm32_variant.build_unflags}
422422
-DUSBCON -DUSBD_USE_CDC
423423

424424
#
425425
# TRIGORILLA PRO DISK BASED (STM32F103ZET6)
426426
# Builds for Trigorilla to update from SD
427427
#
428428
[env:trigorilla_pro_disk]
429-
extends = stm32_variant_latest
429+
extends = stm32_variant
430430
board = genericSTM32F103ZE
431431
board_build.crypt_chitu = update.zw
432432
board_build.offset = 0x8800
433433
board_build.offset_address = 0x08008800
434-
build_flags = ${stm32_variant_latest.build_flags}
434+
build_flags = ${stm32_variant.build_flags}
435435
-DENABLE_HWSERIAL3 -DTIMER_SERIAL=TIM5
436436
-D_STM32_PLATDEFS=MARLIN_F103Zx
437-
build_unflags = ${stm32_variant_latest.build_unflags}
437+
build_unflags = ${stm32_variant.build_unflags}
438438
-DUSBCON -DUSBD_USE_CDC
439-
extra_scripts = ${stm32_variant_latest.extra_scripts}
439+
extra_scripts = ${stm32_variant.extra_scripts}
440440
buildroot/share/PlatformIO/scripts/chitu_crypt.py
441441

442442

443443
#
444444
# Chitu boards like Tronxy X5s (STM32F103ZET6)
445445
#
446446
[env:chitu_f103]
447-
extends = stm32_variant_latest
447+
extends = stm32_variant
448448
board = genericSTM32F103ZE
449449
board_build.crypt_chitu = update.cbd
450450
board_build.offset = 0x8800
451451
board_build.offset_address = 0x08008800
452-
build_flags = ${stm32_variant_latest.build_flags}
452+
build_flags = ${stm32_variant.build_flags}
453453
-DSTM32F1xx -DSTM32_FLASH_SIZE=512
454454
-D_STM32_PLATDEFS=MARLIN_F103Zx
455-
build_unflags = ${stm32_variant_latest.build_unflags}
456-
extra_scripts = ${stm32_variant_latest.extra_scripts}
455+
build_unflags = ${stm32_variant.build_unflags}
456+
extra_scripts = ${stm32_variant.extra_scripts}
457457
buildroot/share/PlatformIO/scripts/chitu_crypt.py
458458

459459
#
@@ -472,13 +472,13 @@ build_flags = ${env:chitu_f103.build_flags} -DCHITU_V5_Z_MIN_BUGFIX
472472
# STM32F103VE_ZM3E4V2_USB ......... VET6 with 512K
473473
#
474474
[ZONESTAR_ZM3E]
475-
extends = stm32_variant_latest
475+
extends = stm32_variant
476476
platform_packages = ${stm_flash_drive.platform_packages}
477477
board_build.offset = 0x5000
478478
board_upload.offset_address = 0x08005000
479479
board_upload.maximum_size = 237568
480-
extra_scripts = ${stm32_variant_latest.extra_scripts}
481-
build_flags = ${stm32_variant_latest.build_flags} ${USBD_CDC_MSC.build_flags}
480+
extra_scripts = ${stm32_variant.extra_scripts}
481+
build_flags = ${stm32_variant.build_flags} ${USBD_CDC_MSC.build_flags}
482482
-DSS_TIMER=4 -DTIMER_SERVO=TIM5
483483
build_unflags = ${stm32_variant.build_unflags} ${USBD_CDC_MSC.build_unflags}
484484

@@ -508,21 +508,21 @@ board_upload.maximum_size = 499712
508508
# Mingda D2 DZ301 V1.0 (STM32F103ZE)
509509
#
510510
[env:mingda_d301]
511-
extends = stm32_variant_latest
511+
extends = stm32_variant
512512
board = genericSTM32F103ZE
513513
board_build.variant = MARLIN_F103Zx
514514
board_build.offset = 0x7000
515515
board_upload.offset_address = 0x08007000
516-
build_flags = ${stm32_variant_latest.build_flags} -DSTM32F1xx -DSTM32_FLASH_SIZE=512
516+
build_flags = ${stm32_variant.build_flags} -DSTM32F1xx -DSTM32_FLASH_SIZE=512
517517

518518
#
519519
# ORCA 3D SPRINGER Modular Controller (STM32F103VCT6)
520520
#
521521
[env:STM32F103VC_orca3d]
522-
extends = stm32_variant_latest
522+
extends = stm32_variant
523523
board = genericSTM32F103VC
524524
board_build.variant = MARLIN_F103Vx
525-
build_flags = ${stm32_variant_latest.build_flags} -DDEBUG_LEVEL=0
525+
build_flags = ${stm32_variant.build_flags} -DDEBUG_LEVEL=0
526526
monitor_speed = 115200
527527
board_build.offset = 0x8000
528528
board_upload.offset_address = 0x08008000

0 commit comments

Comments
 (0)