@@ -59,12 +59,24 @@ def _get_board_memory_type(env):
59
59
)
60
60
61
61
62
- def _get_board_f_flash (env ):
63
- frequency = env .subst ("$BOARD_F_FLASH" )
62
+ def _normalize_frequency (frequency ):
64
63
frequency = str (frequency ).replace ("L" , "" )
65
64
return str (int (int (frequency ) / 1000000 )) + "m"
66
65
67
66
67
+ def _get_board_f_flash (env ):
68
+ frequency = env .subst ("$BOARD_F_FLASH" )
69
+ return _normalize_frequency (frequency )
70
+
71
+
72
+ def _get_board_f_image (env ):
73
+ board_config = env .BoardConfig ()
74
+ if "build.f_image" in board_config :
75
+ return _normalize_frequency (board_config .get ("build.f_image" ))
76
+
77
+ return _get_board_f_flash (env )
78
+
79
+
68
80
def _get_board_flash_mode (env ):
69
81
if ["arduino" ] == env .get ("PIOFRAMEWORK" ) and _get_board_memory_type (env ) in (
70
82
"opi_opi" ,
@@ -225,6 +237,7 @@ def __fetch_fs_size(target, source, env):
225
237
env .Replace (
226
238
__get_board_boot_mode = _get_board_boot_mode ,
227
239
__get_board_f_flash = _get_board_f_flash ,
240
+ __get_board_f_image = _get_board_f_image ,
228
241
__get_board_flash_mode = _get_board_flash_mode ,
229
242
__get_board_memory_type = _get_board_memory_type ,
230
243
@@ -296,7 +309,7 @@ def __fetch_fs_size(target, source, env):
296
309
'"$PYTHONEXE" "$OBJCOPY"' ,
297
310
"--chip" , mcu , "elf2image" ,
298
311
"--flash_mode" , "${__get_board_flash_mode(__env__)}" ,
299
- "--flash_freq" , "${__get_board_f_flash (__env__)}" ,
312
+ "--flash_freq" , "${__get_board_f_image (__env__)}" ,
300
313
"--flash_size" , board .get ("upload.flash_size" , "4MB" ),
301
314
"-o" , "$TARGET" , "$SOURCES"
302
315
]), "Building $TARGET" ),
@@ -432,7 +445,7 @@ def __fetch_fs_size(target, source, env):
432
445
"--after" , board .get ("upload.after_reset" , "hard_reset" ),
433
446
"write_flash" , "-z" ,
434
447
"--flash_mode" , "${__get_board_flash_mode(__env__)}" ,
435
- "--flash_freq" , "${__get_board_f_flash (__env__)}" ,
448
+ "--flash_freq" , "${__get_board_f_image (__env__)}" ,
436
449
"--flash_size" , board .get ("upload.flash_size" , "detect" )
437
450
],
438
451
UPLOADCMD = '"$PYTHONEXE" "$UPLOADER" $UPLOADERFLAGS $ESP32_APP_OFFSET $SOURCE'
@@ -450,7 +463,7 @@ def __fetch_fs_size(target, source, env):
450
463
"--after" , board .get ("upload.after_reset" , "hard_reset" ),
451
464
"write_flash" , "-z" ,
452
465
"--flash_mode" , "${__get_board_flash_mode(__env__)}" ,
453
- "--flash_freq" , "${__get_board_f_flash (__env__)}" ,
466
+ "--flash_freq" , "${__get_board_f_image (__env__)}" ,
454
467
"--flash_size" , board .get ("upload.flash_size" , "detect" ),
455
468
"$FS_START"
456
469
],
0 commit comments