From f60defc3d306152c13a20065aaa3d81ea17e690b Mon Sep 17 00:00:00 2001 From: david gauchard Date: Thu, 10 Feb 2022 18:25:18 +0100 Subject: [PATCH] flash-size agnostic builds (#6690) * flash: mapping definition by sketch at runtime depending on flash chip size and user configuration --- boards.txt | 641 ++++++------------ cores/esp8266/Arduino.h | 3 + cores/esp8266/Esp.cpp | 12 +- cores/esp8266/FlashMap.h | 59 ++ cores/esp8266/Updater.cpp | 17 +- cores/esp8266/core_esp8266_main.cpp | 9 + cores/esp8266/flash_hal.cpp | 10 + cores/esp8266/flash_hal.h | 64 +- doc/faq/readme.rst | 5 + doc/filesystem.rst | 73 +- libraries/EEPROM/EEPROM.cpp | 4 +- .../src/ESP8266HTTPUpdateServer-impl.h | 2 +- .../src/ESP8266httpUpdate.cpp | 10 +- platform.txt | 10 +- .../common/{flash_hal_mock.h => flash_hal.h} | 20 +- tests/host/common/flash_hal_mock.cpp | 2 + tests/host/common/littlefs_mock.cpp | 1 - tests/host/common/littlefs_mock.h | 2 +- tests/host/common/spiffs_mock.cpp | 2 - tests/host/common/spiffs_mock.h | 2 +- tools/boards.txt.py | 139 +++- tools/sdk/ld/eagle.flash.auto.ld | 11 + 22 files changed, 554 insertions(+), 544 deletions(-) create mode 100644 cores/esp8266/FlashMap.h rename tests/host/common/{flash_hal_mock.h => flash_hal.h} (54%) create mode 100644 tools/sdk/ld/eagle.flash.auto.ld diff --git a/boards.txt b/boards.txt index f1a6b718b3..7204ffdca5 100644 --- a/boards.txt +++ b/boards.txt @@ -90,7 +90,7 @@ generic.menu.ResetMethod.nodtr_nosync=no dtr, no_sync generic.menu.ResetMethod.nodtr_nosync.upload.resetmethod=--before no_reset_no_sync --after soft_reset generic.menu.CrystalFreq.26=26 MHz generic.menu.CrystalFreq.40=40 MHz -generic.menu.CrystalFreq.40.build.extra_flags=-DF_CRYSTAL=40000000 -DESP8266 +generic.menu.CrystalFreq.40.build.extra_flags=-DF_CRYSTAL=40000000 generic.menu.FlashFreq.40=40MHz generic.menu.FlashFreq.40.build.flash_freq=40 generic.menu.FlashFreq.80=80MHz @@ -113,251 +113,209 @@ generic.menu.FlashMode.qio.build.flash_mode=qio generic.menu.FlashMode.qio.build.flash_flags=-DFLASHMODE_QIO generic.menu.eesz.1M64=1MB (FS:64KB OTA:~470KB) generic.menu.eesz.1M64.build.flash_size=1M -generic.menu.eesz.1M64.build.flash_size_bytes=0x100000 generic.menu.eesz.1M64.build.flash_ld=eagle.flash.1m64.ld generic.menu.eesz.1M64.build.spiffs_pagesize=256 -generic.menu.eesz.1M64.upload.maximum_size=958448 generic.menu.eesz.1M64.build.rfcal_addr=0xFC000 generic.menu.eesz.1M64.build.spiffs_start=0xEB000 generic.menu.eesz.1M64.build.spiffs_end=0xFB000 generic.menu.eesz.1M64.build.spiffs_blocksize=4096 generic.menu.eesz.1M128=1MB (FS:128KB OTA:~438KB) generic.menu.eesz.1M128.build.flash_size=1M -generic.menu.eesz.1M128.build.flash_size_bytes=0x100000 generic.menu.eesz.1M128.build.flash_ld=eagle.flash.1m128.ld generic.menu.eesz.1M128.build.spiffs_pagesize=256 -generic.menu.eesz.1M128.upload.maximum_size=892912 generic.menu.eesz.1M128.build.rfcal_addr=0xFC000 generic.menu.eesz.1M128.build.spiffs_start=0xDB000 generic.menu.eesz.1M128.build.spiffs_end=0xFB000 generic.menu.eesz.1M128.build.spiffs_blocksize=4096 generic.menu.eesz.1M144=1MB (FS:144KB OTA:~430KB) generic.menu.eesz.1M144.build.flash_size=1M -generic.menu.eesz.1M144.build.flash_size_bytes=0x100000 generic.menu.eesz.1M144.build.flash_ld=eagle.flash.1m144.ld generic.menu.eesz.1M144.build.spiffs_pagesize=256 -generic.menu.eesz.1M144.upload.maximum_size=876528 generic.menu.eesz.1M144.build.rfcal_addr=0xFC000 generic.menu.eesz.1M144.build.spiffs_start=0xD7000 generic.menu.eesz.1M144.build.spiffs_end=0xFB000 generic.menu.eesz.1M144.build.spiffs_blocksize=4096 generic.menu.eesz.1M160=1MB (FS:160KB OTA:~422KB) generic.menu.eesz.1M160.build.flash_size=1M -generic.menu.eesz.1M160.build.flash_size_bytes=0x100000 generic.menu.eesz.1M160.build.flash_ld=eagle.flash.1m160.ld generic.menu.eesz.1M160.build.spiffs_pagesize=256 -generic.menu.eesz.1M160.upload.maximum_size=860144 generic.menu.eesz.1M160.build.rfcal_addr=0xFC000 generic.menu.eesz.1M160.build.spiffs_start=0xD3000 generic.menu.eesz.1M160.build.spiffs_end=0xFB000 generic.menu.eesz.1M160.build.spiffs_blocksize=4096 generic.menu.eesz.1M192=1MB (FS:192KB OTA:~406KB) generic.menu.eesz.1M192.build.flash_size=1M -generic.menu.eesz.1M192.build.flash_size_bytes=0x100000 generic.menu.eesz.1M192.build.flash_ld=eagle.flash.1m192.ld generic.menu.eesz.1M192.build.spiffs_pagesize=256 -generic.menu.eesz.1M192.upload.maximum_size=827376 generic.menu.eesz.1M192.build.rfcal_addr=0xFC000 generic.menu.eesz.1M192.build.spiffs_start=0xCB000 generic.menu.eesz.1M192.build.spiffs_end=0xFB000 generic.menu.eesz.1M192.build.spiffs_blocksize=4096 generic.menu.eesz.1M256=1MB (FS:256KB OTA:~374KB) generic.menu.eesz.1M256.build.flash_size=1M -generic.menu.eesz.1M256.build.flash_size_bytes=0x100000 generic.menu.eesz.1M256.build.flash_ld=eagle.flash.1m256.ld generic.menu.eesz.1M256.build.spiffs_pagesize=256 -generic.menu.eesz.1M256.upload.maximum_size=761840 generic.menu.eesz.1M256.build.rfcal_addr=0xFC000 generic.menu.eesz.1M256.build.spiffs_start=0xBB000 generic.menu.eesz.1M256.build.spiffs_end=0xFB000 generic.menu.eesz.1M256.build.spiffs_blocksize=4096 generic.menu.eesz.1M512=1MB (FS:512KB OTA:~246KB) generic.menu.eesz.1M512.build.flash_size=1M -generic.menu.eesz.1M512.build.flash_size_bytes=0x100000 generic.menu.eesz.1M512.build.flash_ld=eagle.flash.1m512.ld generic.menu.eesz.1M512.build.spiffs_pagesize=256 -generic.menu.eesz.1M512.upload.maximum_size=499696 generic.menu.eesz.1M512.build.rfcal_addr=0xFC000 generic.menu.eesz.1M512.build.spiffs_start=0x7B000 generic.menu.eesz.1M512.build.spiffs_end=0xFB000 generic.menu.eesz.1M512.build.spiffs_blocksize=8192 generic.menu.eesz.1M=1MB (FS:none OTA:~502KB) generic.menu.eesz.1M.build.flash_size=1M -generic.menu.eesz.1M.build.flash_size_bytes=0x100000 generic.menu.eesz.1M.build.flash_ld=eagle.flash.1m.ld generic.menu.eesz.1M.build.spiffs_pagesize=256 -generic.menu.eesz.1M.upload.maximum_size=1023984 generic.menu.eesz.1M.build.rfcal_addr=0xFC000 generic.menu.eesz.2M64=2MB (FS:64KB OTA:~992KB) generic.menu.eesz.2M64.build.flash_size=2M -generic.menu.eesz.2M64.build.flash_size_bytes=0x200000 generic.menu.eesz.2M64.build.flash_ld=eagle.flash.2m64.ld generic.menu.eesz.2M64.build.spiffs_pagesize=256 -generic.menu.eesz.2M64.upload.maximum_size=1044464 generic.menu.eesz.2M64.build.rfcal_addr=0x1FC000 generic.menu.eesz.2M64.build.spiffs_start=0x1F0000 generic.menu.eesz.2M64.build.spiffs_end=0x1FB000 generic.menu.eesz.2M64.build.spiffs_blocksize=4096 generic.menu.eesz.2M128=2MB (FS:128KB OTA:~960KB) generic.menu.eesz.2M128.build.flash_size=2M -generic.menu.eesz.2M128.build.flash_size_bytes=0x200000 generic.menu.eesz.2M128.build.flash_ld=eagle.flash.2m128.ld generic.menu.eesz.2M128.build.spiffs_pagesize=256 -generic.menu.eesz.2M128.upload.maximum_size=1044464 generic.menu.eesz.2M128.build.rfcal_addr=0x1FC000 generic.menu.eesz.2M128.build.spiffs_start=0x1E0000 generic.menu.eesz.2M128.build.spiffs_end=0x1FB000 generic.menu.eesz.2M128.build.spiffs_blocksize=4096 generic.menu.eesz.2M256=2MB (FS:256KB OTA:~896KB) generic.menu.eesz.2M256.build.flash_size=2M -generic.menu.eesz.2M256.build.flash_size_bytes=0x200000 generic.menu.eesz.2M256.build.flash_ld=eagle.flash.2m256.ld generic.menu.eesz.2M256.build.spiffs_pagesize=256 -generic.menu.eesz.2M256.upload.maximum_size=1044464 generic.menu.eesz.2M256.build.rfcal_addr=0x1FC000 generic.menu.eesz.2M256.build.spiffs_start=0x1C0000 generic.menu.eesz.2M256.build.spiffs_end=0x1FB000 generic.menu.eesz.2M256.build.spiffs_blocksize=4096 generic.menu.eesz.2M512=2MB (FS:512KB OTA:~768KB) generic.menu.eesz.2M512.build.flash_size=2M -generic.menu.eesz.2M512.build.flash_size_bytes=0x200000 generic.menu.eesz.2M512.build.flash_ld=eagle.flash.2m512.ld generic.menu.eesz.2M512.build.spiffs_pagesize=256 -generic.menu.eesz.2M512.upload.maximum_size=1044464 generic.menu.eesz.2M512.build.rfcal_addr=0x1FC000 generic.menu.eesz.2M512.build.spiffs_start=0x180000 generic.menu.eesz.2M512.build.spiffs_end=0x1FA000 generic.menu.eesz.2M512.build.spiffs_blocksize=8192 generic.menu.eesz.2M1M=2MB (FS:1MB OTA:~512KB) generic.menu.eesz.2M1M.build.flash_size=2M -generic.menu.eesz.2M1M.build.flash_size_bytes=0x200000 generic.menu.eesz.2M1M.build.flash_ld=eagle.flash.2m1m.ld generic.menu.eesz.2M1M.build.spiffs_pagesize=256 -generic.menu.eesz.2M1M.upload.maximum_size=1044464 generic.menu.eesz.2M1M.build.rfcal_addr=0x1FC000 generic.menu.eesz.2M1M.build.spiffs_start=0x100000 generic.menu.eesz.2M1M.build.spiffs_end=0x1FA000 generic.menu.eesz.2M1M.build.spiffs_blocksize=8192 generic.menu.eesz.2M=2MB (FS:none OTA:~1019KB) generic.menu.eesz.2M.build.flash_size=2M -generic.menu.eesz.2M.build.flash_size_bytes=0x200000 generic.menu.eesz.2M.build.flash_ld=eagle.flash.2m.ld generic.menu.eesz.2M.build.spiffs_pagesize=256 -generic.menu.eesz.2M.upload.maximum_size=1044464 generic.menu.eesz.2M.build.rfcal_addr=0x1FC000 generic.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) generic.menu.eesz.4M2M.build.flash_size=4M -generic.menu.eesz.4M2M.build.flash_size_bytes=0x400000 generic.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld generic.menu.eesz.4M2M.build.spiffs_pagesize=256 -generic.menu.eesz.4M2M.upload.maximum_size=1044464 generic.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 generic.menu.eesz.4M2M.build.spiffs_start=0x200000 generic.menu.eesz.4M2M.build.spiffs_end=0x3FA000 generic.menu.eesz.4M2M.build.spiffs_blocksize=8192 generic.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) generic.menu.eesz.4M3M.build.flash_size=4M -generic.menu.eesz.4M3M.build.flash_size_bytes=0x400000 generic.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld generic.menu.eesz.4M3M.build.spiffs_pagesize=256 -generic.menu.eesz.4M3M.upload.maximum_size=1044464 generic.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 generic.menu.eesz.4M3M.build.spiffs_start=0x100000 generic.menu.eesz.4M3M.build.spiffs_end=0x3FA000 generic.menu.eesz.4M3M.build.spiffs_blocksize=8192 generic.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) generic.menu.eesz.4M1M.build.flash_size=4M -generic.menu.eesz.4M1M.build.flash_size_bytes=0x400000 generic.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld generic.menu.eesz.4M1M.build.spiffs_pagesize=256 -generic.menu.eesz.4M1M.upload.maximum_size=1044464 generic.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 generic.menu.eesz.4M1M.build.spiffs_start=0x300000 generic.menu.eesz.4M1M.build.spiffs_end=0x3FA000 generic.menu.eesz.4M1M.build.spiffs_blocksize=8192 generic.menu.eesz.4M=4MB (FS:none OTA:~1019KB) generic.menu.eesz.4M.build.flash_size=4M -generic.menu.eesz.4M.build.flash_size_bytes=0x400000 generic.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld generic.menu.eesz.4M.build.spiffs_pagesize=256 -generic.menu.eesz.4M.upload.maximum_size=1044464 generic.menu.eesz.4M.build.rfcal_addr=0x3FC000 generic.menu.eesz.8M6M=8MB (FS:6MB OTA:~1019KB) generic.menu.eesz.8M6M.build.flash_size=8M -generic.menu.eesz.8M6M.build.flash_size_bytes=0x800000 generic.menu.eesz.8M6M.build.flash_ld=eagle.flash.8m6m.ld generic.menu.eesz.8M6M.build.spiffs_pagesize=256 -generic.menu.eesz.8M6M.upload.maximum_size=1044464 generic.menu.eesz.8M6M.build.rfcal_addr=0x7FC000 generic.menu.eesz.8M6M.build.spiffs_start=0x200000 generic.menu.eesz.8M6M.build.spiffs_end=0x7FA000 generic.menu.eesz.8M6M.build.spiffs_blocksize=8192 generic.menu.eesz.8M7M=8MB (FS:7MB OTA:~512KB) generic.menu.eesz.8M7M.build.flash_size=8M -generic.menu.eesz.8M7M.build.flash_size_bytes=0x800000 generic.menu.eesz.8M7M.build.flash_ld=eagle.flash.8m7m.ld generic.menu.eesz.8M7M.build.spiffs_pagesize=256 -generic.menu.eesz.8M7M.upload.maximum_size=1044464 generic.menu.eesz.8M7M.build.rfcal_addr=0x7FC000 generic.menu.eesz.8M7M.build.spiffs_start=0x100000 generic.menu.eesz.8M7M.build.spiffs_end=0x7FA000 generic.menu.eesz.8M7M.build.spiffs_blocksize=8192 +generic.menu.eesz.8M=8MB (FS:none OTA:~1019KB) +generic.menu.eesz.8M.build.flash_size=8M +generic.menu.eesz.8M.build.flash_ld=eagle.flash.8m.ld +generic.menu.eesz.8M.build.spiffs_pagesize=256 +generic.menu.eesz.8M.build.rfcal_addr=0x7FC000 generic.menu.eesz.16M14M=16MB (FS:14MB OTA:~1019KB) generic.menu.eesz.16M14M.build.flash_size=16M -generic.menu.eesz.16M14M.build.flash_size_bytes=0x1000000 generic.menu.eesz.16M14M.build.flash_ld=eagle.flash.16m14m.ld generic.menu.eesz.16M14M.build.spiffs_pagesize=256 -generic.menu.eesz.16M14M.upload.maximum_size=1044464 generic.menu.eesz.16M14M.build.rfcal_addr=0xFFC000 generic.menu.eesz.16M14M.build.spiffs_start=0x200000 generic.menu.eesz.16M14M.build.spiffs_end=0xFFA000 generic.menu.eesz.16M14M.build.spiffs_blocksize=8192 generic.menu.eesz.16M15M=16MB (FS:15MB OTA:~512KB) generic.menu.eesz.16M15M.build.flash_size=16M -generic.menu.eesz.16M15M.build.flash_size_bytes=0x1000000 generic.menu.eesz.16M15M.build.flash_ld=eagle.flash.16m15m.ld generic.menu.eesz.16M15M.build.spiffs_pagesize=256 -generic.menu.eesz.16M15M.upload.maximum_size=1044464 generic.menu.eesz.16M15M.build.rfcal_addr=0xFFC000 generic.menu.eesz.16M15M.build.spiffs_start=0x100000 generic.menu.eesz.16M15M.build.spiffs_end=0xFFA000 generic.menu.eesz.16M15M.build.spiffs_blocksize=8192 +generic.menu.eesz.16M=16MB (FS:none OTA:~1019KB) +generic.menu.eesz.16M.build.flash_size=16M +generic.menu.eesz.16M.build.flash_ld=eagle.flash.16m.ld +generic.menu.eesz.16M.build.spiffs_pagesize=256 +generic.menu.eesz.16M.build.rfcal_addr=0xFFC000 generic.menu.eesz.512K32=512KB (FS:32KB OTA:~230KB) generic.menu.eesz.512K32.build.flash_size=512K -generic.menu.eesz.512K32.build.flash_size_bytes=0x80000 generic.menu.eesz.512K32.build.flash_ld=eagle.flash.512k32.ld generic.menu.eesz.512K32.build.spiffs_pagesize=256 -generic.menu.eesz.512K32.upload.maximum_size=466928 generic.menu.eesz.512K32.build.rfcal_addr=0x7C000 generic.menu.eesz.512K32.build.spiffs_start=0x73000 generic.menu.eesz.512K32.build.spiffs_end=0x7B000 generic.menu.eesz.512K32.build.spiffs_blocksize=4096 generic.menu.eesz.512K64=512KB (FS:64KB OTA:~214KB) generic.menu.eesz.512K64.build.flash_size=512K -generic.menu.eesz.512K64.build.flash_size_bytes=0x80000 generic.menu.eesz.512K64.build.flash_ld=eagle.flash.512k64.ld generic.menu.eesz.512K64.build.spiffs_pagesize=256 -generic.menu.eesz.512K64.upload.maximum_size=434160 generic.menu.eesz.512K64.build.rfcal_addr=0x7C000 generic.menu.eesz.512K64.build.spiffs_start=0x6B000 generic.menu.eesz.512K64.build.spiffs_end=0x7B000 generic.menu.eesz.512K64.build.spiffs_blocksize=4096 generic.menu.eesz.512K128=512KB (FS:128KB OTA:~182KB) generic.menu.eesz.512K128.build.flash_size=512K -generic.menu.eesz.512K128.build.flash_size_bytes=0x80000 generic.menu.eesz.512K128.build.flash_ld=eagle.flash.512k128.ld generic.menu.eesz.512K128.build.spiffs_pagesize=256 -generic.menu.eesz.512K128.upload.maximum_size=368624 generic.menu.eesz.512K128.build.rfcal_addr=0x7C000 generic.menu.eesz.512K128.build.spiffs_start=0x5B000 generic.menu.eesz.512K128.build.spiffs_end=0x7B000 generic.menu.eesz.512K128.build.spiffs_blocksize=4096 generic.menu.eesz.512K=512KB (FS:none OTA:~246KB) generic.menu.eesz.512K.build.flash_size=512K -generic.menu.eesz.512K.build.flash_size_bytes=0x80000 generic.menu.eesz.512K.build.flash_ld=eagle.flash.512k.ld generic.menu.eesz.512K.build.spiffs_pagesize=256 -generic.menu.eesz.512K.upload.maximum_size=499696 generic.menu.eesz.512K.build.rfcal_addr=0x7C000 generic.menu.led.2=2 generic.menu.led.2.build.led=-DLED_BUILTIN=2 @@ -525,6 +483,11 @@ generic.menu.baud.921600=921600 generic.menu.baud.921600.upload.speed=921600 generic.menu.baud.3000000=3000000 generic.menu.baud.3000000.upload.speed=3000000 +generic.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +generic.menu.eesz.autoflash.build.flash_size=16M +generic.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +generic.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +generic.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## esp8285.name=Generic ESP8285 Module @@ -589,143 +552,115 @@ esp8285.menu.ResetMethod.nodtr_nosync=no dtr, no_sync esp8285.menu.ResetMethod.nodtr_nosync.upload.resetmethod=--before no_reset_no_sync --after soft_reset esp8285.menu.CrystalFreq.26=26 MHz esp8285.menu.CrystalFreq.40=40 MHz -esp8285.menu.CrystalFreq.40.build.extra_flags=-DF_CRYSTAL=40000000 -DESP8266 +esp8285.menu.CrystalFreq.40.build.extra_flags=-DF_CRYSTAL=40000000 esp8285.build.flash_mode=dout esp8285.build.flash_flags=-DFLASHMODE_DOUT esp8285.build.flash_freq=40 esp8285.menu.eesz.1M64=1MB (FS:64KB OTA:~470KB) esp8285.menu.eesz.1M64.build.flash_size=1M -esp8285.menu.eesz.1M64.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M64.build.flash_ld=eagle.flash.1m64.ld esp8285.menu.eesz.1M64.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M64.upload.maximum_size=958448 esp8285.menu.eesz.1M64.build.rfcal_addr=0xFC000 esp8285.menu.eesz.1M64.build.spiffs_start=0xEB000 esp8285.menu.eesz.1M64.build.spiffs_end=0xFB000 esp8285.menu.eesz.1M64.build.spiffs_blocksize=4096 esp8285.menu.eesz.1M128=1MB (FS:128KB OTA:~438KB) esp8285.menu.eesz.1M128.build.flash_size=1M -esp8285.menu.eesz.1M128.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M128.build.flash_ld=eagle.flash.1m128.ld esp8285.menu.eesz.1M128.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M128.upload.maximum_size=892912 esp8285.menu.eesz.1M128.build.rfcal_addr=0xFC000 esp8285.menu.eesz.1M128.build.spiffs_start=0xDB000 esp8285.menu.eesz.1M128.build.spiffs_end=0xFB000 esp8285.menu.eesz.1M128.build.spiffs_blocksize=4096 esp8285.menu.eesz.1M144=1MB (FS:144KB OTA:~430KB) esp8285.menu.eesz.1M144.build.flash_size=1M -esp8285.menu.eesz.1M144.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M144.build.flash_ld=eagle.flash.1m144.ld esp8285.menu.eesz.1M144.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M144.upload.maximum_size=876528 esp8285.menu.eesz.1M144.build.rfcal_addr=0xFC000 esp8285.menu.eesz.1M144.build.spiffs_start=0xD7000 esp8285.menu.eesz.1M144.build.spiffs_end=0xFB000 esp8285.menu.eesz.1M144.build.spiffs_blocksize=4096 esp8285.menu.eesz.1M160=1MB (FS:160KB OTA:~422KB) esp8285.menu.eesz.1M160.build.flash_size=1M -esp8285.menu.eesz.1M160.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M160.build.flash_ld=eagle.flash.1m160.ld esp8285.menu.eesz.1M160.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M160.upload.maximum_size=860144 esp8285.menu.eesz.1M160.build.rfcal_addr=0xFC000 esp8285.menu.eesz.1M160.build.spiffs_start=0xD3000 esp8285.menu.eesz.1M160.build.spiffs_end=0xFB000 esp8285.menu.eesz.1M160.build.spiffs_blocksize=4096 esp8285.menu.eesz.1M192=1MB (FS:192KB OTA:~406KB) esp8285.menu.eesz.1M192.build.flash_size=1M -esp8285.menu.eesz.1M192.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M192.build.flash_ld=eagle.flash.1m192.ld esp8285.menu.eesz.1M192.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M192.upload.maximum_size=827376 esp8285.menu.eesz.1M192.build.rfcal_addr=0xFC000 esp8285.menu.eesz.1M192.build.spiffs_start=0xCB000 esp8285.menu.eesz.1M192.build.spiffs_end=0xFB000 esp8285.menu.eesz.1M192.build.spiffs_blocksize=4096 esp8285.menu.eesz.1M256=1MB (FS:256KB OTA:~374KB) esp8285.menu.eesz.1M256.build.flash_size=1M -esp8285.menu.eesz.1M256.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M256.build.flash_ld=eagle.flash.1m256.ld esp8285.menu.eesz.1M256.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M256.upload.maximum_size=761840 esp8285.menu.eesz.1M256.build.rfcal_addr=0xFC000 esp8285.menu.eesz.1M256.build.spiffs_start=0xBB000 esp8285.menu.eesz.1M256.build.spiffs_end=0xFB000 esp8285.menu.eesz.1M256.build.spiffs_blocksize=4096 esp8285.menu.eesz.1M512=1MB (FS:512KB OTA:~246KB) esp8285.menu.eesz.1M512.build.flash_size=1M -esp8285.menu.eesz.1M512.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M512.build.flash_ld=eagle.flash.1m512.ld esp8285.menu.eesz.1M512.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M512.upload.maximum_size=499696 esp8285.menu.eesz.1M512.build.rfcal_addr=0xFC000 esp8285.menu.eesz.1M512.build.spiffs_start=0x7B000 esp8285.menu.eesz.1M512.build.spiffs_end=0xFB000 esp8285.menu.eesz.1M512.build.spiffs_blocksize=8192 esp8285.menu.eesz.1M=1MB (FS:none OTA:~502KB) esp8285.menu.eesz.1M.build.flash_size=1M -esp8285.menu.eesz.1M.build.flash_size_bytes=0x100000 esp8285.menu.eesz.1M.build.flash_ld=eagle.flash.1m.ld esp8285.menu.eesz.1M.build.spiffs_pagesize=256 -esp8285.menu.eesz.1M.upload.maximum_size=1023984 esp8285.menu.eesz.1M.build.rfcal_addr=0xFC000 esp8285.menu.eesz.2M64=2MB (FS:64KB OTA:~992KB) esp8285.menu.eesz.2M64.build.flash_size=2M -esp8285.menu.eesz.2M64.build.flash_size_bytes=0x200000 esp8285.menu.eesz.2M64.build.flash_ld=eagle.flash.2m64.ld esp8285.menu.eesz.2M64.build.spiffs_pagesize=256 -esp8285.menu.eesz.2M64.upload.maximum_size=1044464 esp8285.menu.eesz.2M64.build.rfcal_addr=0x1FC000 esp8285.menu.eesz.2M64.build.spiffs_start=0x1F0000 esp8285.menu.eesz.2M64.build.spiffs_end=0x1FB000 esp8285.menu.eesz.2M64.build.spiffs_blocksize=4096 esp8285.menu.eesz.2M128=2MB (FS:128KB OTA:~960KB) esp8285.menu.eesz.2M128.build.flash_size=2M -esp8285.menu.eesz.2M128.build.flash_size_bytes=0x200000 esp8285.menu.eesz.2M128.build.flash_ld=eagle.flash.2m128.ld esp8285.menu.eesz.2M128.build.spiffs_pagesize=256 -esp8285.menu.eesz.2M128.upload.maximum_size=1044464 esp8285.menu.eesz.2M128.build.rfcal_addr=0x1FC000 esp8285.menu.eesz.2M128.build.spiffs_start=0x1E0000 esp8285.menu.eesz.2M128.build.spiffs_end=0x1FB000 esp8285.menu.eesz.2M128.build.spiffs_blocksize=4096 esp8285.menu.eesz.2M256=2MB (FS:256KB OTA:~896KB) esp8285.menu.eesz.2M256.build.flash_size=2M -esp8285.menu.eesz.2M256.build.flash_size_bytes=0x200000 esp8285.menu.eesz.2M256.build.flash_ld=eagle.flash.2m256.ld esp8285.menu.eesz.2M256.build.spiffs_pagesize=256 -esp8285.menu.eesz.2M256.upload.maximum_size=1044464 esp8285.menu.eesz.2M256.build.rfcal_addr=0x1FC000 esp8285.menu.eesz.2M256.build.spiffs_start=0x1C0000 esp8285.menu.eesz.2M256.build.spiffs_end=0x1FB000 esp8285.menu.eesz.2M256.build.spiffs_blocksize=4096 esp8285.menu.eesz.2M512=2MB (FS:512KB OTA:~768KB) esp8285.menu.eesz.2M512.build.flash_size=2M -esp8285.menu.eesz.2M512.build.flash_size_bytes=0x200000 esp8285.menu.eesz.2M512.build.flash_ld=eagle.flash.2m512.ld esp8285.menu.eesz.2M512.build.spiffs_pagesize=256 -esp8285.menu.eesz.2M512.upload.maximum_size=1044464 esp8285.menu.eesz.2M512.build.rfcal_addr=0x1FC000 esp8285.menu.eesz.2M512.build.spiffs_start=0x180000 esp8285.menu.eesz.2M512.build.spiffs_end=0x1FA000 esp8285.menu.eesz.2M512.build.spiffs_blocksize=8192 esp8285.menu.eesz.2M1M=2MB (FS:1MB OTA:~512KB) esp8285.menu.eesz.2M1M.build.flash_size=2M -esp8285.menu.eesz.2M1M.build.flash_size_bytes=0x200000 esp8285.menu.eesz.2M1M.build.flash_ld=eagle.flash.2m1m.ld esp8285.menu.eesz.2M1M.build.spiffs_pagesize=256 -esp8285.menu.eesz.2M1M.upload.maximum_size=1044464 esp8285.menu.eesz.2M1M.build.rfcal_addr=0x1FC000 esp8285.menu.eesz.2M1M.build.spiffs_start=0x100000 esp8285.menu.eesz.2M1M.build.spiffs_end=0x1FA000 esp8285.menu.eesz.2M1M.build.spiffs_blocksize=8192 esp8285.menu.eesz.2M=2MB (FS:none OTA:~1019KB) esp8285.menu.eesz.2M.build.flash_size=2M -esp8285.menu.eesz.2M.build.flash_size_bytes=0x200000 esp8285.menu.eesz.2M.build.flash_ld=eagle.flash.2m.ld esp8285.menu.eesz.2M.build.spiffs_pagesize=256 -esp8285.menu.eesz.2M.upload.maximum_size=1044464 esp8285.menu.eesz.2M.build.rfcal_addr=0x1FC000 esp8285.menu.led.2=2 esp8285.menu.led.2.build.led=-DLED_BUILTIN=2 @@ -893,6 +828,11 @@ esp8285.menu.baud.921600=921600 esp8285.menu.baud.921600.upload.speed=921600 esp8285.menu.baud.3000000=3000000 esp8285.menu.baud.3000000.upload.speed=3000000 +esp8285.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +esp8285.menu.eesz.autoflash.build.flash_size=16M +esp8285.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +esp8285.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +esp8285.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## gen4iod.name=4D Systems gen4 IoD Range @@ -966,97 +906,77 @@ gen4iod.menu.FlashMode.qio.build.flash_flags=-DFLASHMODE_QIO gen4iod.build.flash_freq=80 gen4iod.menu.eesz.2M64=2MB (FS:64KB OTA:~992KB) gen4iod.menu.eesz.2M64.build.flash_size=2M -gen4iod.menu.eesz.2M64.build.flash_size_bytes=0x200000 gen4iod.menu.eesz.2M64.build.flash_ld=eagle.flash.2m64.ld gen4iod.menu.eesz.2M64.build.spiffs_pagesize=256 -gen4iod.menu.eesz.2M64.upload.maximum_size=1044464 gen4iod.menu.eesz.2M64.build.rfcal_addr=0x1FC000 gen4iod.menu.eesz.2M64.build.spiffs_start=0x1F0000 gen4iod.menu.eesz.2M64.build.spiffs_end=0x1FB000 gen4iod.menu.eesz.2M64.build.spiffs_blocksize=4096 gen4iod.menu.eesz.2M128=2MB (FS:128KB OTA:~960KB) gen4iod.menu.eesz.2M128.build.flash_size=2M -gen4iod.menu.eesz.2M128.build.flash_size_bytes=0x200000 gen4iod.menu.eesz.2M128.build.flash_ld=eagle.flash.2m128.ld gen4iod.menu.eesz.2M128.build.spiffs_pagesize=256 -gen4iod.menu.eesz.2M128.upload.maximum_size=1044464 gen4iod.menu.eesz.2M128.build.rfcal_addr=0x1FC000 gen4iod.menu.eesz.2M128.build.spiffs_start=0x1E0000 gen4iod.menu.eesz.2M128.build.spiffs_end=0x1FB000 gen4iod.menu.eesz.2M128.build.spiffs_blocksize=4096 gen4iod.menu.eesz.2M256=2MB (FS:256KB OTA:~896KB) gen4iod.menu.eesz.2M256.build.flash_size=2M -gen4iod.menu.eesz.2M256.build.flash_size_bytes=0x200000 gen4iod.menu.eesz.2M256.build.flash_ld=eagle.flash.2m256.ld gen4iod.menu.eesz.2M256.build.spiffs_pagesize=256 -gen4iod.menu.eesz.2M256.upload.maximum_size=1044464 gen4iod.menu.eesz.2M256.build.rfcal_addr=0x1FC000 gen4iod.menu.eesz.2M256.build.spiffs_start=0x1C0000 gen4iod.menu.eesz.2M256.build.spiffs_end=0x1FB000 gen4iod.menu.eesz.2M256.build.spiffs_blocksize=4096 gen4iod.menu.eesz.2M512=2MB (FS:512KB OTA:~768KB) gen4iod.menu.eesz.2M512.build.flash_size=2M -gen4iod.menu.eesz.2M512.build.flash_size_bytes=0x200000 gen4iod.menu.eesz.2M512.build.flash_ld=eagle.flash.2m512.ld gen4iod.menu.eesz.2M512.build.spiffs_pagesize=256 -gen4iod.menu.eesz.2M512.upload.maximum_size=1044464 gen4iod.menu.eesz.2M512.build.rfcal_addr=0x1FC000 gen4iod.menu.eesz.2M512.build.spiffs_start=0x180000 gen4iod.menu.eesz.2M512.build.spiffs_end=0x1FA000 gen4iod.menu.eesz.2M512.build.spiffs_blocksize=8192 gen4iod.menu.eesz.2M1M=2MB (FS:1MB OTA:~512KB) gen4iod.menu.eesz.2M1M.build.flash_size=2M -gen4iod.menu.eesz.2M1M.build.flash_size_bytes=0x200000 gen4iod.menu.eesz.2M1M.build.flash_ld=eagle.flash.2m1m.ld gen4iod.menu.eesz.2M1M.build.spiffs_pagesize=256 -gen4iod.menu.eesz.2M1M.upload.maximum_size=1044464 gen4iod.menu.eesz.2M1M.build.rfcal_addr=0x1FC000 gen4iod.menu.eesz.2M1M.build.spiffs_start=0x100000 gen4iod.menu.eesz.2M1M.build.spiffs_end=0x1FA000 gen4iod.menu.eesz.2M1M.build.spiffs_blocksize=8192 gen4iod.menu.eesz.2M=2MB (FS:none OTA:~1019KB) gen4iod.menu.eesz.2M.build.flash_size=2M -gen4iod.menu.eesz.2M.build.flash_size_bytes=0x200000 gen4iod.menu.eesz.2M.build.flash_ld=eagle.flash.2m.ld gen4iod.menu.eesz.2M.build.spiffs_pagesize=256 -gen4iod.menu.eesz.2M.upload.maximum_size=1044464 gen4iod.menu.eesz.2M.build.rfcal_addr=0x1FC000 gen4iod.menu.eesz.512K32=512KB (FS:32KB OTA:~230KB) gen4iod.menu.eesz.512K32.build.flash_size=512K -gen4iod.menu.eesz.512K32.build.flash_size_bytes=0x80000 gen4iod.menu.eesz.512K32.build.flash_ld=eagle.flash.512k32.ld gen4iod.menu.eesz.512K32.build.spiffs_pagesize=256 -gen4iod.menu.eesz.512K32.upload.maximum_size=466928 gen4iod.menu.eesz.512K32.build.rfcal_addr=0x7C000 gen4iod.menu.eesz.512K32.build.spiffs_start=0x73000 gen4iod.menu.eesz.512K32.build.spiffs_end=0x7B000 gen4iod.menu.eesz.512K32.build.spiffs_blocksize=4096 gen4iod.menu.eesz.512K64=512KB (FS:64KB OTA:~214KB) gen4iod.menu.eesz.512K64.build.flash_size=512K -gen4iod.menu.eesz.512K64.build.flash_size_bytes=0x80000 gen4iod.menu.eesz.512K64.build.flash_ld=eagle.flash.512k64.ld gen4iod.menu.eesz.512K64.build.spiffs_pagesize=256 -gen4iod.menu.eesz.512K64.upload.maximum_size=434160 gen4iod.menu.eesz.512K64.build.rfcal_addr=0x7C000 gen4iod.menu.eesz.512K64.build.spiffs_start=0x6B000 gen4iod.menu.eesz.512K64.build.spiffs_end=0x7B000 gen4iod.menu.eesz.512K64.build.spiffs_blocksize=4096 gen4iod.menu.eesz.512K128=512KB (FS:128KB OTA:~182KB) gen4iod.menu.eesz.512K128.build.flash_size=512K -gen4iod.menu.eesz.512K128.build.flash_size_bytes=0x80000 gen4iod.menu.eesz.512K128.build.flash_ld=eagle.flash.512k128.ld gen4iod.menu.eesz.512K128.build.spiffs_pagesize=256 -gen4iod.menu.eesz.512K128.upload.maximum_size=368624 gen4iod.menu.eesz.512K128.build.rfcal_addr=0x7C000 gen4iod.menu.eesz.512K128.build.spiffs_start=0x5B000 gen4iod.menu.eesz.512K128.build.spiffs_end=0x7B000 gen4iod.menu.eesz.512K128.build.spiffs_blocksize=4096 gen4iod.menu.eesz.512K=512KB (FS:none OTA:~246KB) gen4iod.menu.eesz.512K.build.flash_size=512K -gen4iod.menu.eesz.512K.build.flash_size_bytes=0x80000 gen4iod.menu.eesz.512K.build.flash_ld=eagle.flash.512k.ld gen4iod.menu.eesz.512K.build.spiffs_pagesize=256 -gen4iod.menu.eesz.512K.upload.maximum_size=499696 gen4iod.menu.eesz.512K.build.rfcal_addr=0x7C000 gen4iod.menu.ip.lm2f=v2 Lower Memory gen4iod.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -1176,6 +1096,11 @@ gen4iod.menu.baud.921600=921600 gen4iod.menu.baud.921600.upload.speed=921600 gen4iod.menu.baud.3000000=3000000 gen4iod.menu.baud.3000000.upload.speed=3000000 +gen4iod.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +gen4iod.menu.eesz.autoflash.build.flash_size=16M +gen4iod.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +gen4iod.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +gen4iod.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## huzzah.name=Adafruit Feather HUZZAH ESP8266 @@ -1238,40 +1163,32 @@ huzzah.build.flash_flags=-DFLASHMODE_QIO huzzah.build.flash_freq=40 huzzah.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) huzzah.menu.eesz.4M2M.build.flash_size=4M -huzzah.menu.eesz.4M2M.build.flash_size_bytes=0x400000 huzzah.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld huzzah.menu.eesz.4M2M.build.spiffs_pagesize=256 -huzzah.menu.eesz.4M2M.upload.maximum_size=1044464 huzzah.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 huzzah.menu.eesz.4M2M.build.spiffs_start=0x200000 huzzah.menu.eesz.4M2M.build.spiffs_end=0x3FA000 huzzah.menu.eesz.4M2M.build.spiffs_blocksize=8192 huzzah.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) huzzah.menu.eesz.4M3M.build.flash_size=4M -huzzah.menu.eesz.4M3M.build.flash_size_bytes=0x400000 huzzah.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld huzzah.menu.eesz.4M3M.build.spiffs_pagesize=256 -huzzah.menu.eesz.4M3M.upload.maximum_size=1044464 huzzah.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 huzzah.menu.eesz.4M3M.build.spiffs_start=0x100000 huzzah.menu.eesz.4M3M.build.spiffs_end=0x3FA000 huzzah.menu.eesz.4M3M.build.spiffs_blocksize=8192 huzzah.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) huzzah.menu.eesz.4M1M.build.flash_size=4M -huzzah.menu.eesz.4M1M.build.flash_size_bytes=0x400000 huzzah.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld huzzah.menu.eesz.4M1M.build.spiffs_pagesize=256 -huzzah.menu.eesz.4M1M.upload.maximum_size=1044464 huzzah.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 huzzah.menu.eesz.4M1M.build.spiffs_start=0x300000 huzzah.menu.eesz.4M1M.build.spiffs_end=0x3FA000 huzzah.menu.eesz.4M1M.build.spiffs_blocksize=8192 huzzah.menu.eesz.4M=4MB (FS:none OTA:~1019KB) huzzah.menu.eesz.4M.build.flash_size=4M -huzzah.menu.eesz.4M.build.flash_size_bytes=0x400000 huzzah.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld huzzah.menu.eesz.4M.build.spiffs_pagesize=256 -huzzah.menu.eesz.4M.upload.maximum_size=1044464 huzzah.menu.eesz.4M.build.rfcal_addr=0x3FC000 huzzah.menu.ip.lm2f=v2 Lower Memory huzzah.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -1391,6 +1308,11 @@ huzzah.menu.baud.921600=921600 huzzah.menu.baud.921600.upload.speed=921600 huzzah.menu.baud.3000000=3000000 huzzah.menu.baud.3000000.upload.speed=3000000 +huzzah.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +huzzah.menu.eesz.autoflash.build.flash_size=16M +huzzah.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +huzzah.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +huzzah.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## wifi_slot.name=Amperka WiFi Slot @@ -1470,137 +1392,109 @@ wifi_slot.menu.FlashMode.qio.build.flash_mode=qio wifi_slot.menu.FlashMode.qio.build.flash_flags=-DFLASHMODE_QIO wifi_slot.menu.eesz.1M64=1MB (FS:64KB OTA:~470KB) wifi_slot.menu.eesz.1M64.build.flash_size=1M -wifi_slot.menu.eesz.1M64.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M64.build.flash_ld=eagle.flash.1m64.ld wifi_slot.menu.eesz.1M64.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M64.upload.maximum_size=958448 wifi_slot.menu.eesz.1M64.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.1M64.build.spiffs_start=0xEB000 wifi_slot.menu.eesz.1M64.build.spiffs_end=0xFB000 wifi_slot.menu.eesz.1M64.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.1M128=1MB (FS:128KB OTA:~438KB) wifi_slot.menu.eesz.1M128.build.flash_size=1M -wifi_slot.menu.eesz.1M128.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M128.build.flash_ld=eagle.flash.1m128.ld wifi_slot.menu.eesz.1M128.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M128.upload.maximum_size=892912 wifi_slot.menu.eesz.1M128.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.1M128.build.spiffs_start=0xDB000 wifi_slot.menu.eesz.1M128.build.spiffs_end=0xFB000 wifi_slot.menu.eesz.1M128.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.1M144=1MB (FS:144KB OTA:~430KB) wifi_slot.menu.eesz.1M144.build.flash_size=1M -wifi_slot.menu.eesz.1M144.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M144.build.flash_ld=eagle.flash.1m144.ld wifi_slot.menu.eesz.1M144.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M144.upload.maximum_size=876528 wifi_slot.menu.eesz.1M144.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.1M144.build.spiffs_start=0xD7000 wifi_slot.menu.eesz.1M144.build.spiffs_end=0xFB000 wifi_slot.menu.eesz.1M144.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.1M160=1MB (FS:160KB OTA:~422KB) wifi_slot.menu.eesz.1M160.build.flash_size=1M -wifi_slot.menu.eesz.1M160.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M160.build.flash_ld=eagle.flash.1m160.ld wifi_slot.menu.eesz.1M160.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M160.upload.maximum_size=860144 wifi_slot.menu.eesz.1M160.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.1M160.build.spiffs_start=0xD3000 wifi_slot.menu.eesz.1M160.build.spiffs_end=0xFB000 wifi_slot.menu.eesz.1M160.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.1M192=1MB (FS:192KB OTA:~406KB) wifi_slot.menu.eesz.1M192.build.flash_size=1M -wifi_slot.menu.eesz.1M192.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M192.build.flash_ld=eagle.flash.1m192.ld wifi_slot.menu.eesz.1M192.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M192.upload.maximum_size=827376 wifi_slot.menu.eesz.1M192.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.1M192.build.spiffs_start=0xCB000 wifi_slot.menu.eesz.1M192.build.spiffs_end=0xFB000 wifi_slot.menu.eesz.1M192.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.1M256=1MB (FS:256KB OTA:~374KB) wifi_slot.menu.eesz.1M256.build.flash_size=1M -wifi_slot.menu.eesz.1M256.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M256.build.flash_ld=eagle.flash.1m256.ld wifi_slot.menu.eesz.1M256.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M256.upload.maximum_size=761840 wifi_slot.menu.eesz.1M256.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.1M256.build.spiffs_start=0xBB000 wifi_slot.menu.eesz.1M256.build.spiffs_end=0xFB000 wifi_slot.menu.eesz.1M256.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.1M512=1MB (FS:512KB OTA:~246KB) wifi_slot.menu.eesz.1M512.build.flash_size=1M -wifi_slot.menu.eesz.1M512.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M512.build.flash_ld=eagle.flash.1m512.ld wifi_slot.menu.eesz.1M512.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M512.upload.maximum_size=499696 wifi_slot.menu.eesz.1M512.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.1M512.build.spiffs_start=0x7B000 wifi_slot.menu.eesz.1M512.build.spiffs_end=0xFB000 wifi_slot.menu.eesz.1M512.build.spiffs_blocksize=8192 wifi_slot.menu.eesz.1M=1MB (FS:none OTA:~502KB) wifi_slot.menu.eesz.1M.build.flash_size=1M -wifi_slot.menu.eesz.1M.build.flash_size_bytes=0x100000 wifi_slot.menu.eesz.1M.build.flash_ld=eagle.flash.1m.ld wifi_slot.menu.eesz.1M.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.1M.upload.maximum_size=1023984 wifi_slot.menu.eesz.1M.build.rfcal_addr=0xFC000 wifi_slot.menu.eesz.2M64=2MB (FS:64KB OTA:~992KB) wifi_slot.menu.eesz.2M64.build.flash_size=2M -wifi_slot.menu.eesz.2M64.build.flash_size_bytes=0x200000 wifi_slot.menu.eesz.2M64.build.flash_ld=eagle.flash.2m64.ld wifi_slot.menu.eesz.2M64.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.2M64.upload.maximum_size=1044464 wifi_slot.menu.eesz.2M64.build.rfcal_addr=0x1FC000 wifi_slot.menu.eesz.2M64.build.spiffs_start=0x1F0000 wifi_slot.menu.eesz.2M64.build.spiffs_end=0x1FB000 wifi_slot.menu.eesz.2M64.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.2M128=2MB (FS:128KB OTA:~960KB) wifi_slot.menu.eesz.2M128.build.flash_size=2M -wifi_slot.menu.eesz.2M128.build.flash_size_bytes=0x200000 wifi_slot.menu.eesz.2M128.build.flash_ld=eagle.flash.2m128.ld wifi_slot.menu.eesz.2M128.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.2M128.upload.maximum_size=1044464 wifi_slot.menu.eesz.2M128.build.rfcal_addr=0x1FC000 wifi_slot.menu.eesz.2M128.build.spiffs_start=0x1E0000 wifi_slot.menu.eesz.2M128.build.spiffs_end=0x1FB000 wifi_slot.menu.eesz.2M128.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.2M256=2MB (FS:256KB OTA:~896KB) wifi_slot.menu.eesz.2M256.build.flash_size=2M -wifi_slot.menu.eesz.2M256.build.flash_size_bytes=0x200000 wifi_slot.menu.eesz.2M256.build.flash_ld=eagle.flash.2m256.ld wifi_slot.menu.eesz.2M256.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.2M256.upload.maximum_size=1044464 wifi_slot.menu.eesz.2M256.build.rfcal_addr=0x1FC000 wifi_slot.menu.eesz.2M256.build.spiffs_start=0x1C0000 wifi_slot.menu.eesz.2M256.build.spiffs_end=0x1FB000 wifi_slot.menu.eesz.2M256.build.spiffs_blocksize=4096 wifi_slot.menu.eesz.2M512=2MB (FS:512KB OTA:~768KB) wifi_slot.menu.eesz.2M512.build.flash_size=2M -wifi_slot.menu.eesz.2M512.build.flash_size_bytes=0x200000 wifi_slot.menu.eesz.2M512.build.flash_ld=eagle.flash.2m512.ld wifi_slot.menu.eesz.2M512.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.2M512.upload.maximum_size=1044464 wifi_slot.menu.eesz.2M512.build.rfcal_addr=0x1FC000 wifi_slot.menu.eesz.2M512.build.spiffs_start=0x180000 wifi_slot.menu.eesz.2M512.build.spiffs_end=0x1FA000 wifi_slot.menu.eesz.2M512.build.spiffs_blocksize=8192 wifi_slot.menu.eesz.2M1M=2MB (FS:1MB OTA:~512KB) wifi_slot.menu.eesz.2M1M.build.flash_size=2M -wifi_slot.menu.eesz.2M1M.build.flash_size_bytes=0x200000 wifi_slot.menu.eesz.2M1M.build.flash_ld=eagle.flash.2m1m.ld wifi_slot.menu.eesz.2M1M.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.2M1M.upload.maximum_size=1044464 wifi_slot.menu.eesz.2M1M.build.rfcal_addr=0x1FC000 wifi_slot.menu.eesz.2M1M.build.spiffs_start=0x100000 wifi_slot.menu.eesz.2M1M.build.spiffs_end=0x1FA000 wifi_slot.menu.eesz.2M1M.build.spiffs_blocksize=8192 wifi_slot.menu.eesz.2M=2MB (FS:none OTA:~1019KB) wifi_slot.menu.eesz.2M.build.flash_size=2M -wifi_slot.menu.eesz.2M.build.flash_size_bytes=0x200000 wifi_slot.menu.eesz.2M.build.flash_ld=eagle.flash.2m.ld wifi_slot.menu.eesz.2M.build.spiffs_pagesize=256 -wifi_slot.menu.eesz.2M.upload.maximum_size=1044464 wifi_slot.menu.eesz.2M.build.rfcal_addr=0x1FC000 wifi_slot.menu.ip.lm2f=v2 Lower Memory wifi_slot.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -1720,21 +1614,26 @@ wifi_slot.menu.baud.921600=921600 wifi_slot.menu.baud.921600.upload.speed=921600 wifi_slot.menu.baud.3000000=3000000 wifi_slot.menu.baud.3000000.upload.speed=3000000 +wifi_slot.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +wifi_slot.menu.eesz.autoflash.build.flash_size=16M +wifi_slot.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +wifi_slot.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +wifi_slot.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## arduino-esp8266.name=Arduino arduino-esp8266.build.board=ESP8266_ARDUINO arduino-esp8266.menu.BoardModel.primo=Primo arduino-esp8266.menu.BoardModel.primo.build.board=ESP8266_ARDUINO_PRIMO -arduino-esp8266.menu.BoardModel.primo.build.extra_flags=-DF_CRYSTAL=40000000 -DESP8266 +arduino-esp8266.menu.BoardModel.primo.build.extra_flags=-DF_CRYSTAL=40000000 arduino-esp8266.menu.BoardModel.primo.build.variant=arduino_spi arduino-esp8266.menu.BoardModel.starottodeved=Star OTTO arduino-esp8266.menu.BoardModel.starottodeved.build.board=ESP8266_ARDUINO_STAR_OTTO -arduino-esp8266.menu.BoardModel.starottodeved.build.extra_flags=-DF_CRYSTAL=40000000 -DESP8266 +arduino-esp8266.menu.BoardModel.starottodeved.build.extra_flags=-DF_CRYSTAL=40000000 arduino-esp8266.menu.BoardModel.starottodeved.build.variant=arduino_uart arduino-esp8266.menu.BoardModel.unowifideved=Uno WiFi arduino-esp8266.menu.BoardModel.unowifideved.build.board=ESP8266_ARDUINO_UNOWIFI -arduino-esp8266.menu.BoardModel.unowifideved.build.extra_flags=-DF_CRYSTAL=40000000 -DESP8266 +arduino-esp8266.menu.BoardModel.unowifideved.build.extra_flags=-DF_CRYSTAL=40000000 arduino-esp8266.menu.BoardModel.unowifideved.build.variant=arduino_uart arduino-esp8266.upload.tool=esptool arduino-esp8266.upload.maximum_data_size=81920 @@ -1794,40 +1693,32 @@ arduino-esp8266.build.flash_flags=-DFLASHMODE_QIO arduino-esp8266.build.flash_freq=40 arduino-esp8266.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) arduino-esp8266.menu.eesz.4M2M.build.flash_size=4M -arduino-esp8266.menu.eesz.4M2M.build.flash_size_bytes=0x400000 arduino-esp8266.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld arduino-esp8266.menu.eesz.4M2M.build.spiffs_pagesize=256 -arduino-esp8266.menu.eesz.4M2M.upload.maximum_size=1044464 arduino-esp8266.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 arduino-esp8266.menu.eesz.4M2M.build.spiffs_start=0x200000 arduino-esp8266.menu.eesz.4M2M.build.spiffs_end=0x3FA000 arduino-esp8266.menu.eesz.4M2M.build.spiffs_blocksize=8192 arduino-esp8266.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) arduino-esp8266.menu.eesz.4M3M.build.flash_size=4M -arduino-esp8266.menu.eesz.4M3M.build.flash_size_bytes=0x400000 arduino-esp8266.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld arduino-esp8266.menu.eesz.4M3M.build.spiffs_pagesize=256 -arduino-esp8266.menu.eesz.4M3M.upload.maximum_size=1044464 arduino-esp8266.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 arduino-esp8266.menu.eesz.4M3M.build.spiffs_start=0x100000 arduino-esp8266.menu.eesz.4M3M.build.spiffs_end=0x3FA000 arduino-esp8266.menu.eesz.4M3M.build.spiffs_blocksize=8192 arduino-esp8266.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) arduino-esp8266.menu.eesz.4M1M.build.flash_size=4M -arduino-esp8266.menu.eesz.4M1M.build.flash_size_bytes=0x400000 arduino-esp8266.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld arduino-esp8266.menu.eesz.4M1M.build.spiffs_pagesize=256 -arduino-esp8266.menu.eesz.4M1M.upload.maximum_size=1044464 arduino-esp8266.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 arduino-esp8266.menu.eesz.4M1M.build.spiffs_start=0x300000 arduino-esp8266.menu.eesz.4M1M.build.spiffs_end=0x3FA000 arduino-esp8266.menu.eesz.4M1M.build.spiffs_blocksize=8192 arduino-esp8266.menu.eesz.4M=4MB (FS:none OTA:~1019KB) arduino-esp8266.menu.eesz.4M.build.flash_size=4M -arduino-esp8266.menu.eesz.4M.build.flash_size_bytes=0x400000 arduino-esp8266.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld arduino-esp8266.menu.eesz.4M.build.spiffs_pagesize=256 -arduino-esp8266.menu.eesz.4M.upload.maximum_size=1044464 arduino-esp8266.menu.eesz.4M.build.rfcal_addr=0x3FC000 arduino-esp8266.menu.ip.lm2f=v2 Lower Memory arduino-esp8266.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -1947,6 +1838,11 @@ arduino-esp8266.menu.baud.921600=921600 arduino-esp8266.menu.baud.921600.upload.speed=921600 arduino-esp8266.menu.baud.3000000=3000000 arduino-esp8266.menu.baud.3000000.upload.speed=3000000 +arduino-esp8266.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +arduino-esp8266.menu.eesz.autoflash.build.flash_size=16M +arduino-esp8266.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +arduino-esp8266.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +arduino-esp8266.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## espmxdevkit.name=DOIT ESP-Mx DevKit (ESP8285) @@ -2010,80 +1906,64 @@ espmxdevkit.build.flash_flags=-DFLASHMODE_DOUT espmxdevkit.build.flash_freq=40 espmxdevkit.menu.eesz.1M64=1MB (FS:64KB OTA:~470KB) espmxdevkit.menu.eesz.1M64.build.flash_size=1M -espmxdevkit.menu.eesz.1M64.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M64.build.flash_ld=eagle.flash.1m64.ld espmxdevkit.menu.eesz.1M64.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M64.upload.maximum_size=958448 espmxdevkit.menu.eesz.1M64.build.rfcal_addr=0xFC000 espmxdevkit.menu.eesz.1M64.build.spiffs_start=0xEB000 espmxdevkit.menu.eesz.1M64.build.spiffs_end=0xFB000 espmxdevkit.menu.eesz.1M64.build.spiffs_blocksize=4096 espmxdevkit.menu.eesz.1M128=1MB (FS:128KB OTA:~438KB) espmxdevkit.menu.eesz.1M128.build.flash_size=1M -espmxdevkit.menu.eesz.1M128.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M128.build.flash_ld=eagle.flash.1m128.ld espmxdevkit.menu.eesz.1M128.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M128.upload.maximum_size=892912 espmxdevkit.menu.eesz.1M128.build.rfcal_addr=0xFC000 espmxdevkit.menu.eesz.1M128.build.spiffs_start=0xDB000 espmxdevkit.menu.eesz.1M128.build.spiffs_end=0xFB000 espmxdevkit.menu.eesz.1M128.build.spiffs_blocksize=4096 espmxdevkit.menu.eesz.1M144=1MB (FS:144KB OTA:~430KB) espmxdevkit.menu.eesz.1M144.build.flash_size=1M -espmxdevkit.menu.eesz.1M144.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M144.build.flash_ld=eagle.flash.1m144.ld espmxdevkit.menu.eesz.1M144.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M144.upload.maximum_size=876528 espmxdevkit.menu.eesz.1M144.build.rfcal_addr=0xFC000 espmxdevkit.menu.eesz.1M144.build.spiffs_start=0xD7000 espmxdevkit.menu.eesz.1M144.build.spiffs_end=0xFB000 espmxdevkit.menu.eesz.1M144.build.spiffs_blocksize=4096 espmxdevkit.menu.eesz.1M160=1MB (FS:160KB OTA:~422KB) espmxdevkit.menu.eesz.1M160.build.flash_size=1M -espmxdevkit.menu.eesz.1M160.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M160.build.flash_ld=eagle.flash.1m160.ld espmxdevkit.menu.eesz.1M160.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M160.upload.maximum_size=860144 espmxdevkit.menu.eesz.1M160.build.rfcal_addr=0xFC000 espmxdevkit.menu.eesz.1M160.build.spiffs_start=0xD3000 espmxdevkit.menu.eesz.1M160.build.spiffs_end=0xFB000 espmxdevkit.menu.eesz.1M160.build.spiffs_blocksize=4096 espmxdevkit.menu.eesz.1M192=1MB (FS:192KB OTA:~406KB) espmxdevkit.menu.eesz.1M192.build.flash_size=1M -espmxdevkit.menu.eesz.1M192.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M192.build.flash_ld=eagle.flash.1m192.ld espmxdevkit.menu.eesz.1M192.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M192.upload.maximum_size=827376 espmxdevkit.menu.eesz.1M192.build.rfcal_addr=0xFC000 espmxdevkit.menu.eesz.1M192.build.spiffs_start=0xCB000 espmxdevkit.menu.eesz.1M192.build.spiffs_end=0xFB000 espmxdevkit.menu.eesz.1M192.build.spiffs_blocksize=4096 espmxdevkit.menu.eesz.1M256=1MB (FS:256KB OTA:~374KB) espmxdevkit.menu.eesz.1M256.build.flash_size=1M -espmxdevkit.menu.eesz.1M256.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M256.build.flash_ld=eagle.flash.1m256.ld espmxdevkit.menu.eesz.1M256.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M256.upload.maximum_size=761840 espmxdevkit.menu.eesz.1M256.build.rfcal_addr=0xFC000 espmxdevkit.menu.eesz.1M256.build.spiffs_start=0xBB000 espmxdevkit.menu.eesz.1M256.build.spiffs_end=0xFB000 espmxdevkit.menu.eesz.1M256.build.spiffs_blocksize=4096 espmxdevkit.menu.eesz.1M512=1MB (FS:512KB OTA:~246KB) espmxdevkit.menu.eesz.1M512.build.flash_size=1M -espmxdevkit.menu.eesz.1M512.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M512.build.flash_ld=eagle.flash.1m512.ld espmxdevkit.menu.eesz.1M512.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M512.upload.maximum_size=499696 espmxdevkit.menu.eesz.1M512.build.rfcal_addr=0xFC000 espmxdevkit.menu.eesz.1M512.build.spiffs_start=0x7B000 espmxdevkit.menu.eesz.1M512.build.spiffs_end=0xFB000 espmxdevkit.menu.eesz.1M512.build.spiffs_blocksize=8192 espmxdevkit.menu.eesz.1M=1MB (FS:none OTA:~502KB) espmxdevkit.menu.eesz.1M.build.flash_size=1M -espmxdevkit.menu.eesz.1M.build.flash_size_bytes=0x100000 espmxdevkit.menu.eesz.1M.build.flash_ld=eagle.flash.1m.ld espmxdevkit.menu.eesz.1M.build.spiffs_pagesize=256 -espmxdevkit.menu.eesz.1M.upload.maximum_size=1023984 espmxdevkit.menu.eesz.1M.build.rfcal_addr=0xFC000 espmxdevkit.menu.ip.lm2f=v2 Lower Memory espmxdevkit.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -2203,6 +2083,11 @@ espmxdevkit.menu.baud.921600=921600 espmxdevkit.menu.baud.921600.upload.speed=921600 espmxdevkit.menu.baud.3000000=3000000 espmxdevkit.menu.baud.3000000.upload.speed=3000000 +espmxdevkit.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +espmxdevkit.menu.eesz.autoflash.build.flash_size=16M +espmxdevkit.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +espmxdevkit.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +espmxdevkit.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## oak.name=Digistump Oak @@ -2266,40 +2151,32 @@ oak.build.flash_flags=-DFLASHMODE_DIO oak.build.flash_freq=40 oak.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) oak.menu.eesz.4M2M.build.flash_size=4M -oak.menu.eesz.4M2M.build.flash_size_bytes=0x400000 oak.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld oak.menu.eesz.4M2M.build.spiffs_pagesize=256 -oak.menu.eesz.4M2M.upload.maximum_size=1044464 oak.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 oak.menu.eesz.4M2M.build.spiffs_start=0x200000 oak.menu.eesz.4M2M.build.spiffs_end=0x3FA000 oak.menu.eesz.4M2M.build.spiffs_blocksize=8192 oak.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) oak.menu.eesz.4M3M.build.flash_size=4M -oak.menu.eesz.4M3M.build.flash_size_bytes=0x400000 oak.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld oak.menu.eesz.4M3M.build.spiffs_pagesize=256 -oak.menu.eesz.4M3M.upload.maximum_size=1044464 oak.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 oak.menu.eesz.4M3M.build.spiffs_start=0x100000 oak.menu.eesz.4M3M.build.spiffs_end=0x3FA000 oak.menu.eesz.4M3M.build.spiffs_blocksize=8192 oak.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) oak.menu.eesz.4M1M.build.flash_size=4M -oak.menu.eesz.4M1M.build.flash_size_bytes=0x400000 oak.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld oak.menu.eesz.4M1M.build.spiffs_pagesize=256 -oak.menu.eesz.4M1M.upload.maximum_size=1044464 oak.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 oak.menu.eesz.4M1M.build.spiffs_start=0x300000 oak.menu.eesz.4M1M.build.spiffs_end=0x3FA000 oak.menu.eesz.4M1M.build.spiffs_blocksize=8192 oak.menu.eesz.4M=4MB (FS:none OTA:~1019KB) oak.menu.eesz.4M.build.flash_size=4M -oak.menu.eesz.4M.build.flash_size_bytes=0x400000 oak.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld oak.menu.eesz.4M.build.spiffs_pagesize=256 -oak.menu.eesz.4M.upload.maximum_size=1044464 oak.menu.eesz.4M.build.rfcal_addr=0x3FC000 oak.menu.ip.lm2f=v2 Lower Memory oak.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -2419,6 +2296,11 @@ oak.menu.baud.512000.windows=512000 oak.menu.baud.512000.upload.speed=512000 oak.menu.baud.3000000=3000000 oak.menu.baud.3000000.upload.speed=3000000 +oak.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +oak.menu.eesz.autoflash.build.flash_size=16M +oak.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +oak.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +oak.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## espduino.name=ESPDuino (ESP-13 Module) @@ -2489,40 +2371,32 @@ espduino.build.flash_flags=-DFLASHMODE_DIO espduino.build.flash_freq=40 espduino.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) espduino.menu.eesz.4M2M.build.flash_size=4M -espduino.menu.eesz.4M2M.build.flash_size_bytes=0x400000 espduino.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld espduino.menu.eesz.4M2M.build.spiffs_pagesize=256 -espduino.menu.eesz.4M2M.upload.maximum_size=1044464 espduino.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 espduino.menu.eesz.4M2M.build.spiffs_start=0x200000 espduino.menu.eesz.4M2M.build.spiffs_end=0x3FA000 espduino.menu.eesz.4M2M.build.spiffs_blocksize=8192 espduino.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) espduino.menu.eesz.4M3M.build.flash_size=4M -espduino.menu.eesz.4M3M.build.flash_size_bytes=0x400000 espduino.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld espduino.menu.eesz.4M3M.build.spiffs_pagesize=256 -espduino.menu.eesz.4M3M.upload.maximum_size=1044464 espduino.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 espduino.menu.eesz.4M3M.build.spiffs_start=0x100000 espduino.menu.eesz.4M3M.build.spiffs_end=0x3FA000 espduino.menu.eesz.4M3M.build.spiffs_blocksize=8192 espduino.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) espduino.menu.eesz.4M1M.build.flash_size=4M -espduino.menu.eesz.4M1M.build.flash_size_bytes=0x400000 espduino.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld espduino.menu.eesz.4M1M.build.spiffs_pagesize=256 -espduino.menu.eesz.4M1M.upload.maximum_size=1044464 espduino.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 espduino.menu.eesz.4M1M.build.spiffs_start=0x300000 espduino.menu.eesz.4M1M.build.spiffs_end=0x3FA000 espduino.menu.eesz.4M1M.build.spiffs_blocksize=8192 espduino.menu.eesz.4M=4MB (FS:none OTA:~1019KB) espduino.menu.eesz.4M.build.flash_size=4M -espduino.menu.eesz.4M.build.flash_size_bytes=0x400000 espduino.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld espduino.menu.eesz.4M.build.spiffs_pagesize=256 -espduino.menu.eesz.4M.upload.maximum_size=1044464 espduino.menu.eesz.4M.build.rfcal_addr=0x3FC000 espduino.menu.ip.lm2f=v2 Lower Memory espduino.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -2642,6 +2516,11 @@ espduino.menu.baud.921600=921600 espduino.menu.baud.921600.upload.speed=921600 espduino.menu.baud.3000000=3000000 espduino.menu.baud.3000000.upload.speed=3000000 +espduino.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +espduino.menu.eesz.autoflash.build.flash_size=16M +espduino.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +espduino.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +espduino.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## espectro.name=ESPectro Core @@ -2704,40 +2583,32 @@ espectro.build.flash_flags=-DFLASHMODE_DIO espectro.build.flash_freq=40 espectro.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) espectro.menu.eesz.4M2M.build.flash_size=4M -espectro.menu.eesz.4M2M.build.flash_size_bytes=0x400000 espectro.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld espectro.menu.eesz.4M2M.build.spiffs_pagesize=256 -espectro.menu.eesz.4M2M.upload.maximum_size=1044464 espectro.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 espectro.menu.eesz.4M2M.build.spiffs_start=0x200000 espectro.menu.eesz.4M2M.build.spiffs_end=0x3FA000 espectro.menu.eesz.4M2M.build.spiffs_blocksize=8192 espectro.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) espectro.menu.eesz.4M3M.build.flash_size=4M -espectro.menu.eesz.4M3M.build.flash_size_bytes=0x400000 espectro.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld espectro.menu.eesz.4M3M.build.spiffs_pagesize=256 -espectro.menu.eesz.4M3M.upload.maximum_size=1044464 espectro.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 espectro.menu.eesz.4M3M.build.spiffs_start=0x100000 espectro.menu.eesz.4M3M.build.spiffs_end=0x3FA000 espectro.menu.eesz.4M3M.build.spiffs_blocksize=8192 espectro.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) espectro.menu.eesz.4M1M.build.flash_size=4M -espectro.menu.eesz.4M1M.build.flash_size_bytes=0x400000 espectro.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld espectro.menu.eesz.4M1M.build.spiffs_pagesize=256 -espectro.menu.eesz.4M1M.upload.maximum_size=1044464 espectro.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 espectro.menu.eesz.4M1M.build.spiffs_start=0x300000 espectro.menu.eesz.4M1M.build.spiffs_end=0x3FA000 espectro.menu.eesz.4M1M.build.spiffs_blocksize=8192 espectro.menu.eesz.4M=4MB (FS:none OTA:~1019KB) espectro.menu.eesz.4M.build.flash_size=4M -espectro.menu.eesz.4M.build.flash_size_bytes=0x400000 espectro.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld espectro.menu.eesz.4M.build.spiffs_pagesize=256 -espectro.menu.eesz.4M.upload.maximum_size=1044464 espectro.menu.eesz.4M.build.rfcal_addr=0x3FC000 espectro.menu.ip.lm2f=v2 Lower Memory espectro.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -2857,6 +2728,11 @@ espectro.menu.baud.921600=921600 espectro.menu.baud.921600.upload.speed=921600 espectro.menu.baud.3000000=3000000 espectro.menu.baud.3000000.upload.speed=3000000 +espectro.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +espectro.menu.eesz.autoflash.build.flash_size=16M +espectro.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +espectro.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +espectro.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## espino.name=ESPino (ESP-12 Module) @@ -2922,40 +2798,32 @@ espino.build.flash_flags=-DFLASHMODE_QIO espino.build.flash_freq=40 espino.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) espino.menu.eesz.4M2M.build.flash_size=4M -espino.menu.eesz.4M2M.build.flash_size_bytes=0x400000 espino.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld espino.menu.eesz.4M2M.build.spiffs_pagesize=256 -espino.menu.eesz.4M2M.upload.maximum_size=1044464 espino.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 espino.menu.eesz.4M2M.build.spiffs_start=0x200000 espino.menu.eesz.4M2M.build.spiffs_end=0x3FA000 espino.menu.eesz.4M2M.build.spiffs_blocksize=8192 espino.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) espino.menu.eesz.4M3M.build.flash_size=4M -espino.menu.eesz.4M3M.build.flash_size_bytes=0x400000 espino.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld espino.menu.eesz.4M3M.build.spiffs_pagesize=256 -espino.menu.eesz.4M3M.upload.maximum_size=1044464 espino.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 espino.menu.eesz.4M3M.build.spiffs_start=0x100000 espino.menu.eesz.4M3M.build.spiffs_end=0x3FA000 espino.menu.eesz.4M3M.build.spiffs_blocksize=8192 espino.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) espino.menu.eesz.4M1M.build.flash_size=4M -espino.menu.eesz.4M1M.build.flash_size_bytes=0x400000 espino.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld espino.menu.eesz.4M1M.build.spiffs_pagesize=256 -espino.menu.eesz.4M1M.upload.maximum_size=1044464 espino.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 espino.menu.eesz.4M1M.build.spiffs_start=0x300000 espino.menu.eesz.4M1M.build.spiffs_end=0x3FA000 espino.menu.eesz.4M1M.build.spiffs_blocksize=8192 espino.menu.eesz.4M=4MB (FS:none OTA:~1019KB) espino.menu.eesz.4M.build.flash_size=4M -espino.menu.eesz.4M.build.flash_size_bytes=0x400000 espino.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld espino.menu.eesz.4M.build.spiffs_pagesize=256 -espino.menu.eesz.4M.upload.maximum_size=1044464 espino.menu.eesz.4M.build.rfcal_addr=0x3FC000 espino.menu.ip.lm2f=v2 Lower Memory espino.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -3075,6 +2943,11 @@ espino.menu.baud.921600=921600 espino.menu.baud.921600.upload.speed=921600 espino.menu.baud.3000000=3000000 espino.menu.baud.3000000.upload.speed=3000000 +espino.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +espino.menu.eesz.autoflash.build.flash_size=16M +espino.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +espino.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +espino.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## espresso_lite_v1.name=ESPresso Lite 1.0 @@ -3136,40 +3009,32 @@ espresso_lite_v1.build.flash_flags=-DFLASHMODE_DIO espresso_lite_v1.build.flash_freq=40 espresso_lite_v1.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) espresso_lite_v1.menu.eesz.4M2M.build.flash_size=4M -espresso_lite_v1.menu.eesz.4M2M.build.flash_size_bytes=0x400000 espresso_lite_v1.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld espresso_lite_v1.menu.eesz.4M2M.build.spiffs_pagesize=256 -espresso_lite_v1.menu.eesz.4M2M.upload.maximum_size=1044464 espresso_lite_v1.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 espresso_lite_v1.menu.eesz.4M2M.build.spiffs_start=0x200000 espresso_lite_v1.menu.eesz.4M2M.build.spiffs_end=0x3FA000 espresso_lite_v1.menu.eesz.4M2M.build.spiffs_blocksize=8192 espresso_lite_v1.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) espresso_lite_v1.menu.eesz.4M3M.build.flash_size=4M -espresso_lite_v1.menu.eesz.4M3M.build.flash_size_bytes=0x400000 espresso_lite_v1.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld espresso_lite_v1.menu.eesz.4M3M.build.spiffs_pagesize=256 -espresso_lite_v1.menu.eesz.4M3M.upload.maximum_size=1044464 espresso_lite_v1.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 espresso_lite_v1.menu.eesz.4M3M.build.spiffs_start=0x100000 espresso_lite_v1.menu.eesz.4M3M.build.spiffs_end=0x3FA000 espresso_lite_v1.menu.eesz.4M3M.build.spiffs_blocksize=8192 espresso_lite_v1.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) espresso_lite_v1.menu.eesz.4M1M.build.flash_size=4M -espresso_lite_v1.menu.eesz.4M1M.build.flash_size_bytes=0x400000 espresso_lite_v1.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld espresso_lite_v1.menu.eesz.4M1M.build.spiffs_pagesize=256 -espresso_lite_v1.menu.eesz.4M1M.upload.maximum_size=1044464 espresso_lite_v1.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 espresso_lite_v1.menu.eesz.4M1M.build.spiffs_start=0x300000 espresso_lite_v1.menu.eesz.4M1M.build.spiffs_end=0x3FA000 espresso_lite_v1.menu.eesz.4M1M.build.spiffs_blocksize=8192 espresso_lite_v1.menu.eesz.4M=4MB (FS:none OTA:~1019KB) espresso_lite_v1.menu.eesz.4M.build.flash_size=4M -espresso_lite_v1.menu.eesz.4M.build.flash_size_bytes=0x400000 espresso_lite_v1.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld espresso_lite_v1.menu.eesz.4M.build.spiffs_pagesize=256 -espresso_lite_v1.menu.eesz.4M.upload.maximum_size=1044464 espresso_lite_v1.menu.eesz.4M.build.rfcal_addr=0x3FC000 espresso_lite_v1.menu.ResetMethod.nodemcu=dtr (aka nodemcu) espresso_lite_v1.menu.ResetMethod.nodemcu.upload.resetmethod=--before default_reset --after hard_reset @@ -3293,6 +3158,11 @@ espresso_lite_v1.menu.baud.921600=921600 espresso_lite_v1.menu.baud.921600.upload.speed=921600 espresso_lite_v1.menu.baud.3000000=3000000 espresso_lite_v1.menu.baud.3000000.upload.speed=3000000 +espresso_lite_v1.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +espresso_lite_v1.menu.eesz.autoflash.build.flash_size=16M +espresso_lite_v1.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +espresso_lite_v1.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +espresso_lite_v1.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## espresso_lite_v2.name=ESPresso Lite 2.0 @@ -3354,40 +3224,32 @@ espresso_lite_v2.build.flash_flags=-DFLASHMODE_DIO espresso_lite_v2.build.flash_freq=40 espresso_lite_v2.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) espresso_lite_v2.menu.eesz.4M2M.build.flash_size=4M -espresso_lite_v2.menu.eesz.4M2M.build.flash_size_bytes=0x400000 espresso_lite_v2.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld espresso_lite_v2.menu.eesz.4M2M.build.spiffs_pagesize=256 -espresso_lite_v2.menu.eesz.4M2M.upload.maximum_size=1044464 espresso_lite_v2.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 espresso_lite_v2.menu.eesz.4M2M.build.spiffs_start=0x200000 espresso_lite_v2.menu.eesz.4M2M.build.spiffs_end=0x3FA000 espresso_lite_v2.menu.eesz.4M2M.build.spiffs_blocksize=8192 espresso_lite_v2.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) espresso_lite_v2.menu.eesz.4M3M.build.flash_size=4M -espresso_lite_v2.menu.eesz.4M3M.build.flash_size_bytes=0x400000 espresso_lite_v2.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld espresso_lite_v2.menu.eesz.4M3M.build.spiffs_pagesize=256 -espresso_lite_v2.menu.eesz.4M3M.upload.maximum_size=1044464 espresso_lite_v2.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 espresso_lite_v2.menu.eesz.4M3M.build.spiffs_start=0x100000 espresso_lite_v2.menu.eesz.4M3M.build.spiffs_end=0x3FA000 espresso_lite_v2.menu.eesz.4M3M.build.spiffs_blocksize=8192 espresso_lite_v2.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) espresso_lite_v2.menu.eesz.4M1M.build.flash_size=4M -espresso_lite_v2.menu.eesz.4M1M.build.flash_size_bytes=0x400000 espresso_lite_v2.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld espresso_lite_v2.menu.eesz.4M1M.build.spiffs_pagesize=256 -espresso_lite_v2.menu.eesz.4M1M.upload.maximum_size=1044464 espresso_lite_v2.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 espresso_lite_v2.menu.eesz.4M1M.build.spiffs_start=0x300000 espresso_lite_v2.menu.eesz.4M1M.build.spiffs_end=0x3FA000 espresso_lite_v2.menu.eesz.4M1M.build.spiffs_blocksize=8192 espresso_lite_v2.menu.eesz.4M=4MB (FS:none OTA:~1019KB) espresso_lite_v2.menu.eesz.4M.build.flash_size=4M -espresso_lite_v2.menu.eesz.4M.build.flash_size_bytes=0x400000 espresso_lite_v2.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld espresso_lite_v2.menu.eesz.4M.build.spiffs_pagesize=256 -espresso_lite_v2.menu.eesz.4M.upload.maximum_size=1044464 espresso_lite_v2.menu.eesz.4M.build.rfcal_addr=0x3FC000 espresso_lite_v2.menu.ResetMethod.nodemcu=dtr (aka nodemcu) espresso_lite_v2.menu.ResetMethod.nodemcu.upload.resetmethod=--before default_reset --after hard_reset @@ -3511,11 +3373,15 @@ espresso_lite_v2.menu.baud.921600=921600 espresso_lite_v2.menu.baud.921600.upload.speed=921600 espresso_lite_v2.menu.baud.3000000=3000000 espresso_lite_v2.menu.baud.3000000.upload.speed=3000000 +espresso_lite_v2.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +espresso_lite_v2.menu.eesz.autoflash.build.flash_size=16M +espresso_lite_v2.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +espresso_lite_v2.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +espresso_lite_v2.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## sonoff.name=ITEAD Sonoff sonoff.build.board=ESP8266_SONOFF_SV -sonoff.build.extra_flags=-DESP8266 sonoff.build.flash_size=1M sonoff.build.variant=itead sonoff.menu.BoardModel.sonoffBasic=ITEAD Sonoff Basic @@ -3583,80 +3449,64 @@ sonoff.build.flash_flags=-DFLASHMODE_DOUT sonoff.build.flash_freq=40 sonoff.menu.eesz.1M64=1MB (FS:64KB OTA:~470KB) sonoff.menu.eesz.1M64.build.flash_size=1M -sonoff.menu.eesz.1M64.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M64.build.flash_ld=eagle.flash.1m64.ld sonoff.menu.eesz.1M64.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M64.upload.maximum_size=958448 sonoff.menu.eesz.1M64.build.rfcal_addr=0xFC000 sonoff.menu.eesz.1M64.build.spiffs_start=0xEB000 sonoff.menu.eesz.1M64.build.spiffs_end=0xFB000 sonoff.menu.eesz.1M64.build.spiffs_blocksize=4096 sonoff.menu.eesz.1M128=1MB (FS:128KB OTA:~438KB) sonoff.menu.eesz.1M128.build.flash_size=1M -sonoff.menu.eesz.1M128.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M128.build.flash_ld=eagle.flash.1m128.ld sonoff.menu.eesz.1M128.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M128.upload.maximum_size=892912 sonoff.menu.eesz.1M128.build.rfcal_addr=0xFC000 sonoff.menu.eesz.1M128.build.spiffs_start=0xDB000 sonoff.menu.eesz.1M128.build.spiffs_end=0xFB000 sonoff.menu.eesz.1M128.build.spiffs_blocksize=4096 sonoff.menu.eesz.1M144=1MB (FS:144KB OTA:~430KB) sonoff.menu.eesz.1M144.build.flash_size=1M -sonoff.menu.eesz.1M144.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M144.build.flash_ld=eagle.flash.1m144.ld sonoff.menu.eesz.1M144.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M144.upload.maximum_size=876528 sonoff.menu.eesz.1M144.build.rfcal_addr=0xFC000 sonoff.menu.eesz.1M144.build.spiffs_start=0xD7000 sonoff.menu.eesz.1M144.build.spiffs_end=0xFB000 sonoff.menu.eesz.1M144.build.spiffs_blocksize=4096 sonoff.menu.eesz.1M160=1MB (FS:160KB OTA:~422KB) sonoff.menu.eesz.1M160.build.flash_size=1M -sonoff.menu.eesz.1M160.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M160.build.flash_ld=eagle.flash.1m160.ld sonoff.menu.eesz.1M160.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M160.upload.maximum_size=860144 sonoff.menu.eesz.1M160.build.rfcal_addr=0xFC000 sonoff.menu.eesz.1M160.build.spiffs_start=0xD3000 sonoff.menu.eesz.1M160.build.spiffs_end=0xFB000 sonoff.menu.eesz.1M160.build.spiffs_blocksize=4096 sonoff.menu.eesz.1M192=1MB (FS:192KB OTA:~406KB) sonoff.menu.eesz.1M192.build.flash_size=1M -sonoff.menu.eesz.1M192.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M192.build.flash_ld=eagle.flash.1m192.ld sonoff.menu.eesz.1M192.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M192.upload.maximum_size=827376 sonoff.menu.eesz.1M192.build.rfcal_addr=0xFC000 sonoff.menu.eesz.1M192.build.spiffs_start=0xCB000 sonoff.menu.eesz.1M192.build.spiffs_end=0xFB000 sonoff.menu.eesz.1M192.build.spiffs_blocksize=4096 sonoff.menu.eesz.1M256=1MB (FS:256KB OTA:~374KB) sonoff.menu.eesz.1M256.build.flash_size=1M -sonoff.menu.eesz.1M256.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M256.build.flash_ld=eagle.flash.1m256.ld sonoff.menu.eesz.1M256.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M256.upload.maximum_size=761840 sonoff.menu.eesz.1M256.build.rfcal_addr=0xFC000 sonoff.menu.eesz.1M256.build.spiffs_start=0xBB000 sonoff.menu.eesz.1M256.build.spiffs_end=0xFB000 sonoff.menu.eesz.1M256.build.spiffs_blocksize=4096 sonoff.menu.eesz.1M512=1MB (FS:512KB OTA:~246KB) sonoff.menu.eesz.1M512.build.flash_size=1M -sonoff.menu.eesz.1M512.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M512.build.flash_ld=eagle.flash.1m512.ld sonoff.menu.eesz.1M512.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M512.upload.maximum_size=499696 sonoff.menu.eesz.1M512.build.rfcal_addr=0xFC000 sonoff.menu.eesz.1M512.build.spiffs_start=0x7B000 sonoff.menu.eesz.1M512.build.spiffs_end=0xFB000 sonoff.menu.eesz.1M512.build.spiffs_blocksize=8192 sonoff.menu.eesz.1M=1MB (FS:none OTA:~502KB) sonoff.menu.eesz.1M.build.flash_size=1M -sonoff.menu.eesz.1M.build.flash_size_bytes=0x100000 sonoff.menu.eesz.1M.build.flash_ld=eagle.flash.1m.ld sonoff.menu.eesz.1M.build.spiffs_pagesize=256 -sonoff.menu.eesz.1M.upload.maximum_size=1023984 sonoff.menu.eesz.1M.build.rfcal_addr=0xFC000 sonoff.menu.ip.lm2f=v2 Lower Memory sonoff.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -3776,6 +3626,11 @@ sonoff.menu.baud.921600=921600 sonoff.menu.baud.921600.upload.speed=921600 sonoff.menu.baud.3000000=3000000 sonoff.menu.baud.3000000.upload.speed=3000000 +sonoff.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +sonoff.menu.eesz.autoflash.build.flash_size=16M +sonoff.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +sonoff.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +sonoff.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## inventone.name=Invent One @@ -3838,40 +3693,32 @@ inventone.build.flash_flags=-DFLASHMODE_DIO inventone.build.flash_freq=40 inventone.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) inventone.menu.eesz.4M2M.build.flash_size=4M -inventone.menu.eesz.4M2M.build.flash_size_bytes=0x400000 inventone.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld inventone.menu.eesz.4M2M.build.spiffs_pagesize=256 -inventone.menu.eesz.4M2M.upload.maximum_size=1044464 inventone.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 inventone.menu.eesz.4M2M.build.spiffs_start=0x200000 inventone.menu.eesz.4M2M.build.spiffs_end=0x3FA000 inventone.menu.eesz.4M2M.build.spiffs_blocksize=8192 inventone.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) inventone.menu.eesz.4M3M.build.flash_size=4M -inventone.menu.eesz.4M3M.build.flash_size_bytes=0x400000 inventone.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld inventone.menu.eesz.4M3M.build.spiffs_pagesize=256 -inventone.menu.eesz.4M3M.upload.maximum_size=1044464 inventone.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 inventone.menu.eesz.4M3M.build.spiffs_start=0x100000 inventone.menu.eesz.4M3M.build.spiffs_end=0x3FA000 inventone.menu.eesz.4M3M.build.spiffs_blocksize=8192 inventone.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) inventone.menu.eesz.4M1M.build.flash_size=4M -inventone.menu.eesz.4M1M.build.flash_size_bytes=0x400000 inventone.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld inventone.menu.eesz.4M1M.build.spiffs_pagesize=256 -inventone.menu.eesz.4M1M.upload.maximum_size=1044464 inventone.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 inventone.menu.eesz.4M1M.build.spiffs_start=0x300000 inventone.menu.eesz.4M1M.build.spiffs_end=0x3FA000 inventone.menu.eesz.4M1M.build.spiffs_blocksize=8192 inventone.menu.eesz.4M=4MB (FS:none OTA:~1019KB) inventone.menu.eesz.4M.build.flash_size=4M -inventone.menu.eesz.4M.build.flash_size_bytes=0x400000 inventone.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld inventone.menu.eesz.4M.build.spiffs_pagesize=256 -inventone.menu.eesz.4M.upload.maximum_size=1044464 inventone.menu.eesz.4M.build.rfcal_addr=0x3FC000 inventone.menu.ip.lm2f=v2 Lower Memory inventone.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -3991,6 +3838,11 @@ inventone.menu.baud.921600=921600 inventone.menu.baud.921600.upload.speed=921600 inventone.menu.baud.3000000=3000000 inventone.menu.baud.3000000.upload.speed=3000000 +inventone.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +inventone.menu.eesz.autoflash.build.flash_size=16M +inventone.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +inventone.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +inventone.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## d1_mini.name=LOLIN(WEMOS) D1 R2 & mini @@ -4053,40 +3905,32 @@ d1_mini.build.flash_flags=-DFLASHMODE_DIO d1_mini.build.flash_freq=40 d1_mini.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) d1_mini.menu.eesz.4M2M.build.flash_size=4M -d1_mini.menu.eesz.4M2M.build.flash_size_bytes=0x400000 d1_mini.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld d1_mini.menu.eesz.4M2M.build.spiffs_pagesize=256 -d1_mini.menu.eesz.4M2M.upload.maximum_size=1044464 d1_mini.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 d1_mini.menu.eesz.4M2M.build.spiffs_start=0x200000 d1_mini.menu.eesz.4M2M.build.spiffs_end=0x3FA000 d1_mini.menu.eesz.4M2M.build.spiffs_blocksize=8192 d1_mini.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) d1_mini.menu.eesz.4M3M.build.flash_size=4M -d1_mini.menu.eesz.4M3M.build.flash_size_bytes=0x400000 d1_mini.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld d1_mini.menu.eesz.4M3M.build.spiffs_pagesize=256 -d1_mini.menu.eesz.4M3M.upload.maximum_size=1044464 d1_mini.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 d1_mini.menu.eesz.4M3M.build.spiffs_start=0x100000 d1_mini.menu.eesz.4M3M.build.spiffs_end=0x3FA000 d1_mini.menu.eesz.4M3M.build.spiffs_blocksize=8192 d1_mini.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) d1_mini.menu.eesz.4M1M.build.flash_size=4M -d1_mini.menu.eesz.4M1M.build.flash_size_bytes=0x400000 d1_mini.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld d1_mini.menu.eesz.4M1M.build.spiffs_pagesize=256 -d1_mini.menu.eesz.4M1M.upload.maximum_size=1044464 d1_mini.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 d1_mini.menu.eesz.4M1M.build.spiffs_start=0x300000 d1_mini.menu.eesz.4M1M.build.spiffs_end=0x3FA000 d1_mini.menu.eesz.4M1M.build.spiffs_blocksize=8192 d1_mini.menu.eesz.4M=4MB (FS:none OTA:~1019KB) d1_mini.menu.eesz.4M.build.flash_size=4M -d1_mini.menu.eesz.4M.build.flash_size_bytes=0x400000 d1_mini.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld d1_mini.menu.eesz.4M.build.spiffs_pagesize=256 -d1_mini.menu.eesz.4M.upload.maximum_size=1044464 d1_mini.menu.eesz.4M.build.rfcal_addr=0x3FC000 d1_mini.menu.ip.lm2f=v2 Lower Memory d1_mini.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -4206,6 +4050,11 @@ d1_mini.menu.baud.512000.windows=512000 d1_mini.menu.baud.512000.upload.speed=512000 d1_mini.menu.baud.3000000=3000000 d1_mini.menu.baud.3000000.upload.speed=3000000 +d1_mini.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +d1_mini.menu.eesz.autoflash.build.flash_size=16M +d1_mini.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +d1_mini.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +d1_mini.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## d1_mini_clone.name=LOLIN(WEMOS) D1 mini (clone) @@ -4285,40 +4134,32 @@ d1_mini_clone.menu.FlashFreq.26=26MHz d1_mini_clone.menu.FlashFreq.26.build.flash_freq=26 d1_mini_clone.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) d1_mini_clone.menu.eesz.4M2M.build.flash_size=4M -d1_mini_clone.menu.eesz.4M2M.build.flash_size_bytes=0x400000 d1_mini_clone.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld d1_mini_clone.menu.eesz.4M2M.build.spiffs_pagesize=256 -d1_mini_clone.menu.eesz.4M2M.upload.maximum_size=1044464 d1_mini_clone.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 d1_mini_clone.menu.eesz.4M2M.build.spiffs_start=0x200000 d1_mini_clone.menu.eesz.4M2M.build.spiffs_end=0x3FA000 d1_mini_clone.menu.eesz.4M2M.build.spiffs_blocksize=8192 d1_mini_clone.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) d1_mini_clone.menu.eesz.4M3M.build.flash_size=4M -d1_mini_clone.menu.eesz.4M3M.build.flash_size_bytes=0x400000 d1_mini_clone.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld d1_mini_clone.menu.eesz.4M3M.build.spiffs_pagesize=256 -d1_mini_clone.menu.eesz.4M3M.upload.maximum_size=1044464 d1_mini_clone.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 d1_mini_clone.menu.eesz.4M3M.build.spiffs_start=0x100000 d1_mini_clone.menu.eesz.4M3M.build.spiffs_end=0x3FA000 d1_mini_clone.menu.eesz.4M3M.build.spiffs_blocksize=8192 d1_mini_clone.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) d1_mini_clone.menu.eesz.4M1M.build.flash_size=4M -d1_mini_clone.menu.eesz.4M1M.build.flash_size_bytes=0x400000 d1_mini_clone.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld d1_mini_clone.menu.eesz.4M1M.build.spiffs_pagesize=256 -d1_mini_clone.menu.eesz.4M1M.upload.maximum_size=1044464 d1_mini_clone.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 d1_mini_clone.menu.eesz.4M1M.build.spiffs_start=0x300000 d1_mini_clone.menu.eesz.4M1M.build.spiffs_end=0x3FA000 d1_mini_clone.menu.eesz.4M1M.build.spiffs_blocksize=8192 d1_mini_clone.menu.eesz.4M=4MB (FS:none OTA:~1019KB) d1_mini_clone.menu.eesz.4M.build.flash_size=4M -d1_mini_clone.menu.eesz.4M.build.flash_size_bytes=0x400000 d1_mini_clone.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld d1_mini_clone.menu.eesz.4M.build.spiffs_pagesize=256 -d1_mini_clone.menu.eesz.4M.upload.maximum_size=1044464 d1_mini_clone.menu.eesz.4M.build.rfcal_addr=0x3FC000 d1_mini_clone.menu.ip.lm2f=v2 Lower Memory d1_mini_clone.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -4438,6 +4279,11 @@ d1_mini_clone.menu.baud.512000.windows=512000 d1_mini_clone.menu.baud.512000.upload.speed=512000 d1_mini_clone.menu.baud.3000000=3000000 d1_mini_clone.menu.baud.3000000.upload.speed=3000000 +d1_mini_clone.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +d1_mini_clone.menu.eesz.autoflash.build.flash_size=16M +d1_mini_clone.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +d1_mini_clone.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +d1_mini_clone.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## d1_mini_lite.name=LOLIN(WEMOS) D1 mini Lite @@ -4500,80 +4346,64 @@ d1_mini_lite.build.flash_flags=-DFLASHMODE_DOUT d1_mini_lite.build.flash_freq=40 d1_mini_lite.menu.eesz.1M64=1MB (FS:64KB OTA:~470KB) d1_mini_lite.menu.eesz.1M64.build.flash_size=1M -d1_mini_lite.menu.eesz.1M64.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M64.build.flash_ld=eagle.flash.1m64.ld d1_mini_lite.menu.eesz.1M64.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M64.upload.maximum_size=958448 d1_mini_lite.menu.eesz.1M64.build.rfcal_addr=0xFC000 d1_mini_lite.menu.eesz.1M64.build.spiffs_start=0xEB000 d1_mini_lite.menu.eesz.1M64.build.spiffs_end=0xFB000 d1_mini_lite.menu.eesz.1M64.build.spiffs_blocksize=4096 d1_mini_lite.menu.eesz.1M128=1MB (FS:128KB OTA:~438KB) d1_mini_lite.menu.eesz.1M128.build.flash_size=1M -d1_mini_lite.menu.eesz.1M128.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M128.build.flash_ld=eagle.flash.1m128.ld d1_mini_lite.menu.eesz.1M128.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M128.upload.maximum_size=892912 d1_mini_lite.menu.eesz.1M128.build.rfcal_addr=0xFC000 d1_mini_lite.menu.eesz.1M128.build.spiffs_start=0xDB000 d1_mini_lite.menu.eesz.1M128.build.spiffs_end=0xFB000 d1_mini_lite.menu.eesz.1M128.build.spiffs_blocksize=4096 d1_mini_lite.menu.eesz.1M144=1MB (FS:144KB OTA:~430KB) d1_mini_lite.menu.eesz.1M144.build.flash_size=1M -d1_mini_lite.menu.eesz.1M144.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M144.build.flash_ld=eagle.flash.1m144.ld d1_mini_lite.menu.eesz.1M144.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M144.upload.maximum_size=876528 d1_mini_lite.menu.eesz.1M144.build.rfcal_addr=0xFC000 d1_mini_lite.menu.eesz.1M144.build.spiffs_start=0xD7000 d1_mini_lite.menu.eesz.1M144.build.spiffs_end=0xFB000 d1_mini_lite.menu.eesz.1M144.build.spiffs_blocksize=4096 d1_mini_lite.menu.eesz.1M160=1MB (FS:160KB OTA:~422KB) d1_mini_lite.menu.eesz.1M160.build.flash_size=1M -d1_mini_lite.menu.eesz.1M160.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M160.build.flash_ld=eagle.flash.1m160.ld d1_mini_lite.menu.eesz.1M160.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M160.upload.maximum_size=860144 d1_mini_lite.menu.eesz.1M160.build.rfcal_addr=0xFC000 d1_mini_lite.menu.eesz.1M160.build.spiffs_start=0xD3000 d1_mini_lite.menu.eesz.1M160.build.spiffs_end=0xFB000 d1_mini_lite.menu.eesz.1M160.build.spiffs_blocksize=4096 d1_mini_lite.menu.eesz.1M192=1MB (FS:192KB OTA:~406KB) d1_mini_lite.menu.eesz.1M192.build.flash_size=1M -d1_mini_lite.menu.eesz.1M192.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M192.build.flash_ld=eagle.flash.1m192.ld d1_mini_lite.menu.eesz.1M192.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M192.upload.maximum_size=827376 d1_mini_lite.menu.eesz.1M192.build.rfcal_addr=0xFC000 d1_mini_lite.menu.eesz.1M192.build.spiffs_start=0xCB000 d1_mini_lite.menu.eesz.1M192.build.spiffs_end=0xFB000 d1_mini_lite.menu.eesz.1M192.build.spiffs_blocksize=4096 d1_mini_lite.menu.eesz.1M256=1MB (FS:256KB OTA:~374KB) d1_mini_lite.menu.eesz.1M256.build.flash_size=1M -d1_mini_lite.menu.eesz.1M256.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M256.build.flash_ld=eagle.flash.1m256.ld d1_mini_lite.menu.eesz.1M256.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M256.upload.maximum_size=761840 d1_mini_lite.menu.eesz.1M256.build.rfcal_addr=0xFC000 d1_mini_lite.menu.eesz.1M256.build.spiffs_start=0xBB000 d1_mini_lite.menu.eesz.1M256.build.spiffs_end=0xFB000 d1_mini_lite.menu.eesz.1M256.build.spiffs_blocksize=4096 d1_mini_lite.menu.eesz.1M512=1MB (FS:512KB OTA:~246KB) d1_mini_lite.menu.eesz.1M512.build.flash_size=1M -d1_mini_lite.menu.eesz.1M512.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M512.build.flash_ld=eagle.flash.1m512.ld d1_mini_lite.menu.eesz.1M512.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M512.upload.maximum_size=499696 d1_mini_lite.menu.eesz.1M512.build.rfcal_addr=0xFC000 d1_mini_lite.menu.eesz.1M512.build.spiffs_start=0x7B000 d1_mini_lite.menu.eesz.1M512.build.spiffs_end=0xFB000 d1_mini_lite.menu.eesz.1M512.build.spiffs_blocksize=8192 d1_mini_lite.menu.eesz.1M=1MB (FS:none OTA:~502KB) d1_mini_lite.menu.eesz.1M.build.flash_size=1M -d1_mini_lite.menu.eesz.1M.build.flash_size_bytes=0x100000 d1_mini_lite.menu.eesz.1M.build.flash_ld=eagle.flash.1m.ld d1_mini_lite.menu.eesz.1M.build.spiffs_pagesize=256 -d1_mini_lite.menu.eesz.1M.upload.maximum_size=1023984 d1_mini_lite.menu.eesz.1M.build.rfcal_addr=0xFC000 d1_mini_lite.menu.ip.lm2f=v2 Lower Memory d1_mini_lite.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -4693,6 +4523,11 @@ d1_mini_lite.menu.baud.512000.windows=512000 d1_mini_lite.menu.baud.512000.upload.speed=512000 d1_mini_lite.menu.baud.3000000=3000000 d1_mini_lite.menu.baud.3000000.upload.speed=3000000 +d1_mini_lite.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +d1_mini_lite.menu.eesz.autoflash.build.flash_size=16M +d1_mini_lite.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +d1_mini_lite.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +d1_mini_lite.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## d1_mini_pro.name=LOLIN(WEMOS) D1 mini Pro @@ -4755,24 +4590,25 @@ d1_mini_pro.build.flash_flags=-DFLASHMODE_DIO d1_mini_pro.build.flash_freq=40 d1_mini_pro.menu.eesz.16M14M=16MB (FS:14MB OTA:~1019KB) d1_mini_pro.menu.eesz.16M14M.build.flash_size=16M -d1_mini_pro.menu.eesz.16M14M.build.flash_size_bytes=0x1000000 d1_mini_pro.menu.eesz.16M14M.build.flash_ld=eagle.flash.16m14m.ld d1_mini_pro.menu.eesz.16M14M.build.spiffs_pagesize=256 -d1_mini_pro.menu.eesz.16M14M.upload.maximum_size=1044464 d1_mini_pro.menu.eesz.16M14M.build.rfcal_addr=0xFFC000 d1_mini_pro.menu.eesz.16M14M.build.spiffs_start=0x200000 d1_mini_pro.menu.eesz.16M14M.build.spiffs_end=0xFFA000 d1_mini_pro.menu.eesz.16M14M.build.spiffs_blocksize=8192 d1_mini_pro.menu.eesz.16M15M=16MB (FS:15MB OTA:~512KB) d1_mini_pro.menu.eesz.16M15M.build.flash_size=16M -d1_mini_pro.menu.eesz.16M15M.build.flash_size_bytes=0x1000000 d1_mini_pro.menu.eesz.16M15M.build.flash_ld=eagle.flash.16m15m.ld d1_mini_pro.menu.eesz.16M15M.build.spiffs_pagesize=256 -d1_mini_pro.menu.eesz.16M15M.upload.maximum_size=1044464 d1_mini_pro.menu.eesz.16M15M.build.rfcal_addr=0xFFC000 d1_mini_pro.menu.eesz.16M15M.build.spiffs_start=0x100000 d1_mini_pro.menu.eesz.16M15M.build.spiffs_end=0xFFA000 d1_mini_pro.menu.eesz.16M15M.build.spiffs_blocksize=8192 +d1_mini_pro.menu.eesz.16M=16MB (FS:none OTA:~1019KB) +d1_mini_pro.menu.eesz.16M.build.flash_size=16M +d1_mini_pro.menu.eesz.16M.build.flash_ld=eagle.flash.16m.ld +d1_mini_pro.menu.eesz.16M.build.spiffs_pagesize=256 +d1_mini_pro.menu.eesz.16M.build.rfcal_addr=0xFFC000 d1_mini_pro.menu.ip.lm2f=v2 Lower Memory d1_mini_pro.menu.ip.lm2f.build.lwip_include=lwip2/include d1_mini_pro.menu.ip.lm2f.build.lwip_lib=-llwip2-536-feat @@ -4891,6 +4727,11 @@ d1_mini_pro.menu.baud.512000.windows=512000 d1_mini_pro.menu.baud.512000.upload.speed=512000 d1_mini_pro.menu.baud.3000000=3000000 d1_mini_pro.menu.baud.3000000.upload.speed=3000000 +d1_mini_pro.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +d1_mini_pro.menu.eesz.autoflash.build.flash_size=16M +d1_mini_pro.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +d1_mini_pro.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +d1_mini_pro.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## d1.name=LOLIN(WeMos) D1 R1 @@ -4953,40 +4794,32 @@ d1.build.flash_flags=-DFLASHMODE_DIO d1.build.flash_freq=40 d1.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) d1.menu.eesz.4M2M.build.flash_size=4M -d1.menu.eesz.4M2M.build.flash_size_bytes=0x400000 d1.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld d1.menu.eesz.4M2M.build.spiffs_pagesize=256 -d1.menu.eesz.4M2M.upload.maximum_size=1044464 d1.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 d1.menu.eesz.4M2M.build.spiffs_start=0x200000 d1.menu.eesz.4M2M.build.spiffs_end=0x3FA000 d1.menu.eesz.4M2M.build.spiffs_blocksize=8192 d1.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) d1.menu.eesz.4M3M.build.flash_size=4M -d1.menu.eesz.4M3M.build.flash_size_bytes=0x400000 d1.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld d1.menu.eesz.4M3M.build.spiffs_pagesize=256 -d1.menu.eesz.4M3M.upload.maximum_size=1044464 d1.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 d1.menu.eesz.4M3M.build.spiffs_start=0x100000 d1.menu.eesz.4M3M.build.spiffs_end=0x3FA000 d1.menu.eesz.4M3M.build.spiffs_blocksize=8192 d1.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) d1.menu.eesz.4M1M.build.flash_size=4M -d1.menu.eesz.4M1M.build.flash_size_bytes=0x400000 d1.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld d1.menu.eesz.4M1M.build.spiffs_pagesize=256 -d1.menu.eesz.4M1M.upload.maximum_size=1044464 d1.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 d1.menu.eesz.4M1M.build.spiffs_start=0x300000 d1.menu.eesz.4M1M.build.spiffs_end=0x3FA000 d1.menu.eesz.4M1M.build.spiffs_blocksize=8192 d1.menu.eesz.4M=4MB (FS:none OTA:~1019KB) d1.menu.eesz.4M.build.flash_size=4M -d1.menu.eesz.4M.build.flash_size_bytes=0x400000 d1.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld d1.menu.eesz.4M.build.spiffs_pagesize=256 -d1.menu.eesz.4M.upload.maximum_size=1044464 d1.menu.eesz.4M.build.rfcal_addr=0x3FC000 d1.menu.ip.lm2f=v2 Lower Memory d1.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -5106,6 +4939,11 @@ d1.menu.baud.512000.windows=512000 d1.menu.baud.512000.upload.speed=512000 d1.menu.baud.3000000=3000000 d1.menu.baud.3000000.upload.speed=3000000 +d1.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +d1.menu.eesz.autoflash.build.flash_size=16M +d1.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +d1.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +d1.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## agruminolemon.name=Lifely Agrumino Lemon v4 @@ -5168,60 +5006,48 @@ agruminolemon.build.flash_flags=-DFLASHMODE_DIO agruminolemon.build.flash_freq=40 agruminolemon.menu.eesz.2M64=2MB (FS:64KB OTA:~992KB) agruminolemon.menu.eesz.2M64.build.flash_size=2M -agruminolemon.menu.eesz.2M64.build.flash_size_bytes=0x200000 agruminolemon.menu.eesz.2M64.build.flash_ld=eagle.flash.2m64.ld agruminolemon.menu.eesz.2M64.build.spiffs_pagesize=256 -agruminolemon.menu.eesz.2M64.upload.maximum_size=1044464 agruminolemon.menu.eesz.2M64.build.rfcal_addr=0x1FC000 agruminolemon.menu.eesz.2M64.build.spiffs_start=0x1F0000 agruminolemon.menu.eesz.2M64.build.spiffs_end=0x1FB000 agruminolemon.menu.eesz.2M64.build.spiffs_blocksize=4096 agruminolemon.menu.eesz.2M128=2MB (FS:128KB OTA:~960KB) agruminolemon.menu.eesz.2M128.build.flash_size=2M -agruminolemon.menu.eesz.2M128.build.flash_size_bytes=0x200000 agruminolemon.menu.eesz.2M128.build.flash_ld=eagle.flash.2m128.ld agruminolemon.menu.eesz.2M128.build.spiffs_pagesize=256 -agruminolemon.menu.eesz.2M128.upload.maximum_size=1044464 agruminolemon.menu.eesz.2M128.build.rfcal_addr=0x1FC000 agruminolemon.menu.eesz.2M128.build.spiffs_start=0x1E0000 agruminolemon.menu.eesz.2M128.build.spiffs_end=0x1FB000 agruminolemon.menu.eesz.2M128.build.spiffs_blocksize=4096 agruminolemon.menu.eesz.2M256=2MB (FS:256KB OTA:~896KB) agruminolemon.menu.eesz.2M256.build.flash_size=2M -agruminolemon.menu.eesz.2M256.build.flash_size_bytes=0x200000 agruminolemon.menu.eesz.2M256.build.flash_ld=eagle.flash.2m256.ld agruminolemon.menu.eesz.2M256.build.spiffs_pagesize=256 -agruminolemon.menu.eesz.2M256.upload.maximum_size=1044464 agruminolemon.menu.eesz.2M256.build.rfcal_addr=0x1FC000 agruminolemon.menu.eesz.2M256.build.spiffs_start=0x1C0000 agruminolemon.menu.eesz.2M256.build.spiffs_end=0x1FB000 agruminolemon.menu.eesz.2M256.build.spiffs_blocksize=4096 agruminolemon.menu.eesz.2M512=2MB (FS:512KB OTA:~768KB) agruminolemon.menu.eesz.2M512.build.flash_size=2M -agruminolemon.menu.eesz.2M512.build.flash_size_bytes=0x200000 agruminolemon.menu.eesz.2M512.build.flash_ld=eagle.flash.2m512.ld agruminolemon.menu.eesz.2M512.build.spiffs_pagesize=256 -agruminolemon.menu.eesz.2M512.upload.maximum_size=1044464 agruminolemon.menu.eesz.2M512.build.rfcal_addr=0x1FC000 agruminolemon.menu.eesz.2M512.build.spiffs_start=0x180000 agruminolemon.menu.eesz.2M512.build.spiffs_end=0x1FA000 agruminolemon.menu.eesz.2M512.build.spiffs_blocksize=8192 agruminolemon.menu.eesz.2M1M=2MB (FS:1MB OTA:~512KB) agruminolemon.menu.eesz.2M1M.build.flash_size=2M -agruminolemon.menu.eesz.2M1M.build.flash_size_bytes=0x200000 agruminolemon.menu.eesz.2M1M.build.flash_ld=eagle.flash.2m1m.ld agruminolemon.menu.eesz.2M1M.build.spiffs_pagesize=256 -agruminolemon.menu.eesz.2M1M.upload.maximum_size=1044464 agruminolemon.menu.eesz.2M1M.build.rfcal_addr=0x1FC000 agruminolemon.menu.eesz.2M1M.build.spiffs_start=0x100000 agruminolemon.menu.eesz.2M1M.build.spiffs_end=0x1FA000 agruminolemon.menu.eesz.2M1M.build.spiffs_blocksize=8192 agruminolemon.menu.eesz.2M=2MB (FS:none OTA:~1019KB) agruminolemon.menu.eesz.2M.build.flash_size=2M -agruminolemon.menu.eesz.2M.build.flash_size_bytes=0x200000 agruminolemon.menu.eesz.2M.build.flash_ld=eagle.flash.2m.ld agruminolemon.menu.eesz.2M.build.spiffs_pagesize=256 -agruminolemon.menu.eesz.2M.upload.maximum_size=1044464 agruminolemon.menu.eesz.2M.build.rfcal_addr=0x1FC000 agruminolemon.menu.ip.lm2f=v2 Lower Memory agruminolemon.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -5341,6 +5167,11 @@ agruminolemon.menu.baud.921600=921600 agruminolemon.menu.baud.921600.upload.speed=921600 agruminolemon.menu.baud.3000000=3000000 agruminolemon.menu.baud.3000000.upload.speed=3000000 +agruminolemon.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +agruminolemon.menu.eesz.autoflash.build.flash_size=16M +agruminolemon.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +agruminolemon.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +agruminolemon.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## nodemcu.name=NodeMCU 0.9 (ESP-12 Module) @@ -5403,40 +5234,32 @@ nodemcu.build.flash_flags=-DFLASHMODE_QIO nodemcu.build.flash_freq=40 nodemcu.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) nodemcu.menu.eesz.4M2M.build.flash_size=4M -nodemcu.menu.eesz.4M2M.build.flash_size_bytes=0x400000 nodemcu.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld nodemcu.menu.eesz.4M2M.build.spiffs_pagesize=256 -nodemcu.menu.eesz.4M2M.upload.maximum_size=1044464 nodemcu.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 nodemcu.menu.eesz.4M2M.build.spiffs_start=0x200000 nodemcu.menu.eesz.4M2M.build.spiffs_end=0x3FA000 nodemcu.menu.eesz.4M2M.build.spiffs_blocksize=8192 nodemcu.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) nodemcu.menu.eesz.4M3M.build.flash_size=4M -nodemcu.menu.eesz.4M3M.build.flash_size_bytes=0x400000 nodemcu.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld nodemcu.menu.eesz.4M3M.build.spiffs_pagesize=256 -nodemcu.menu.eesz.4M3M.upload.maximum_size=1044464 nodemcu.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 nodemcu.menu.eesz.4M3M.build.spiffs_start=0x100000 nodemcu.menu.eesz.4M3M.build.spiffs_end=0x3FA000 nodemcu.menu.eesz.4M3M.build.spiffs_blocksize=8192 nodemcu.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) nodemcu.menu.eesz.4M1M.build.flash_size=4M -nodemcu.menu.eesz.4M1M.build.flash_size_bytes=0x400000 nodemcu.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld nodemcu.menu.eesz.4M1M.build.spiffs_pagesize=256 -nodemcu.menu.eesz.4M1M.upload.maximum_size=1044464 nodemcu.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 nodemcu.menu.eesz.4M1M.build.spiffs_start=0x300000 nodemcu.menu.eesz.4M1M.build.spiffs_end=0x3FA000 nodemcu.menu.eesz.4M1M.build.spiffs_blocksize=8192 nodemcu.menu.eesz.4M=4MB (FS:none OTA:~1019KB) nodemcu.menu.eesz.4M.build.flash_size=4M -nodemcu.menu.eesz.4M.build.flash_size_bytes=0x400000 nodemcu.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld nodemcu.menu.eesz.4M.build.spiffs_pagesize=256 -nodemcu.menu.eesz.4M.upload.maximum_size=1044464 nodemcu.menu.eesz.4M.build.rfcal_addr=0x3FC000 nodemcu.menu.ip.lm2f=v2 Lower Memory nodemcu.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -5556,6 +5379,11 @@ nodemcu.menu.baud.921600=921600 nodemcu.menu.baud.921600.upload.speed=921600 nodemcu.menu.baud.3000000=3000000 nodemcu.menu.baud.3000000.upload.speed=3000000 +nodemcu.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +nodemcu.menu.eesz.autoflash.build.flash_size=16M +nodemcu.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +nodemcu.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +nodemcu.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## nodemcuv2.name=NodeMCU 1.0 (ESP-12E Module) @@ -5618,40 +5446,32 @@ nodemcuv2.build.flash_flags=-DFLASHMODE_DIO nodemcuv2.build.flash_freq=40 nodemcuv2.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) nodemcuv2.menu.eesz.4M2M.build.flash_size=4M -nodemcuv2.menu.eesz.4M2M.build.flash_size_bytes=0x400000 nodemcuv2.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld nodemcuv2.menu.eesz.4M2M.build.spiffs_pagesize=256 -nodemcuv2.menu.eesz.4M2M.upload.maximum_size=1044464 nodemcuv2.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 nodemcuv2.menu.eesz.4M2M.build.spiffs_start=0x200000 nodemcuv2.menu.eesz.4M2M.build.spiffs_end=0x3FA000 nodemcuv2.menu.eesz.4M2M.build.spiffs_blocksize=8192 nodemcuv2.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) nodemcuv2.menu.eesz.4M3M.build.flash_size=4M -nodemcuv2.menu.eesz.4M3M.build.flash_size_bytes=0x400000 nodemcuv2.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld nodemcuv2.menu.eesz.4M3M.build.spiffs_pagesize=256 -nodemcuv2.menu.eesz.4M3M.upload.maximum_size=1044464 nodemcuv2.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 nodemcuv2.menu.eesz.4M3M.build.spiffs_start=0x100000 nodemcuv2.menu.eesz.4M3M.build.spiffs_end=0x3FA000 nodemcuv2.menu.eesz.4M3M.build.spiffs_blocksize=8192 nodemcuv2.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) nodemcuv2.menu.eesz.4M1M.build.flash_size=4M -nodemcuv2.menu.eesz.4M1M.build.flash_size_bytes=0x400000 nodemcuv2.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld nodemcuv2.menu.eesz.4M1M.build.spiffs_pagesize=256 -nodemcuv2.menu.eesz.4M1M.upload.maximum_size=1044464 nodemcuv2.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 nodemcuv2.menu.eesz.4M1M.build.spiffs_start=0x300000 nodemcuv2.menu.eesz.4M1M.build.spiffs_end=0x3FA000 nodemcuv2.menu.eesz.4M1M.build.spiffs_blocksize=8192 nodemcuv2.menu.eesz.4M=4MB (FS:none OTA:~1019KB) nodemcuv2.menu.eesz.4M.build.flash_size=4M -nodemcuv2.menu.eesz.4M.build.flash_size_bytes=0x400000 nodemcuv2.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld nodemcuv2.menu.eesz.4M.build.spiffs_pagesize=256 -nodemcuv2.menu.eesz.4M.upload.maximum_size=1044464 nodemcuv2.menu.eesz.4M.build.rfcal_addr=0x3FC000 nodemcuv2.menu.led.2=2 nodemcuv2.menu.led.2.build.led=-DLED_BUILTIN=2 @@ -5775,6 +5595,11 @@ nodemcuv2.menu.baud.921600=921600 nodemcuv2.menu.baud.921600.upload.speed=921600 nodemcuv2.menu.baud.3000000=3000000 nodemcuv2.menu.baud.3000000.upload.speed=3000000 +nodemcuv2.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +nodemcuv2.menu.eesz.autoflash.build.flash_size=16M +nodemcuv2.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +nodemcuv2.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +nodemcuv2.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## modwifi.name=Olimex MOD-WIFI-ESP8266(-DEV) @@ -5852,60 +5677,48 @@ modwifi.menu.FlashMode.qio.build.flash_flags=-DFLASHMODE_QIO modwifi.build.flash_freq=40 modwifi.menu.eesz.2M64=2MB (FS:64KB OTA:~992KB) modwifi.menu.eesz.2M64.build.flash_size=2M -modwifi.menu.eesz.2M64.build.flash_size_bytes=0x200000 modwifi.menu.eesz.2M64.build.flash_ld=eagle.flash.2m64.ld modwifi.menu.eesz.2M64.build.spiffs_pagesize=256 -modwifi.menu.eesz.2M64.upload.maximum_size=1044464 modwifi.menu.eesz.2M64.build.rfcal_addr=0x1FC000 modwifi.menu.eesz.2M64.build.spiffs_start=0x1F0000 modwifi.menu.eesz.2M64.build.spiffs_end=0x1FB000 modwifi.menu.eesz.2M64.build.spiffs_blocksize=4096 modwifi.menu.eesz.2M128=2MB (FS:128KB OTA:~960KB) modwifi.menu.eesz.2M128.build.flash_size=2M -modwifi.menu.eesz.2M128.build.flash_size_bytes=0x200000 modwifi.menu.eesz.2M128.build.flash_ld=eagle.flash.2m128.ld modwifi.menu.eesz.2M128.build.spiffs_pagesize=256 -modwifi.menu.eesz.2M128.upload.maximum_size=1044464 modwifi.menu.eesz.2M128.build.rfcal_addr=0x1FC000 modwifi.menu.eesz.2M128.build.spiffs_start=0x1E0000 modwifi.menu.eesz.2M128.build.spiffs_end=0x1FB000 modwifi.menu.eesz.2M128.build.spiffs_blocksize=4096 modwifi.menu.eesz.2M256=2MB (FS:256KB OTA:~896KB) modwifi.menu.eesz.2M256.build.flash_size=2M -modwifi.menu.eesz.2M256.build.flash_size_bytes=0x200000 modwifi.menu.eesz.2M256.build.flash_ld=eagle.flash.2m256.ld modwifi.menu.eesz.2M256.build.spiffs_pagesize=256 -modwifi.menu.eesz.2M256.upload.maximum_size=1044464 modwifi.menu.eesz.2M256.build.rfcal_addr=0x1FC000 modwifi.menu.eesz.2M256.build.spiffs_start=0x1C0000 modwifi.menu.eesz.2M256.build.spiffs_end=0x1FB000 modwifi.menu.eesz.2M256.build.spiffs_blocksize=4096 modwifi.menu.eesz.2M512=2MB (FS:512KB OTA:~768KB) modwifi.menu.eesz.2M512.build.flash_size=2M -modwifi.menu.eesz.2M512.build.flash_size_bytes=0x200000 modwifi.menu.eesz.2M512.build.flash_ld=eagle.flash.2m512.ld modwifi.menu.eesz.2M512.build.spiffs_pagesize=256 -modwifi.menu.eesz.2M512.upload.maximum_size=1044464 modwifi.menu.eesz.2M512.build.rfcal_addr=0x1FC000 modwifi.menu.eesz.2M512.build.spiffs_start=0x180000 modwifi.menu.eesz.2M512.build.spiffs_end=0x1FA000 modwifi.menu.eesz.2M512.build.spiffs_blocksize=8192 modwifi.menu.eesz.2M1M=2MB (FS:1MB OTA:~512KB) modwifi.menu.eesz.2M1M.build.flash_size=2M -modwifi.menu.eesz.2M1M.build.flash_size_bytes=0x200000 modwifi.menu.eesz.2M1M.build.flash_ld=eagle.flash.2m1m.ld modwifi.menu.eesz.2M1M.build.spiffs_pagesize=256 -modwifi.menu.eesz.2M1M.upload.maximum_size=1044464 modwifi.menu.eesz.2M1M.build.rfcal_addr=0x1FC000 modwifi.menu.eesz.2M1M.build.spiffs_start=0x100000 modwifi.menu.eesz.2M1M.build.spiffs_end=0x1FA000 modwifi.menu.eesz.2M1M.build.spiffs_blocksize=8192 modwifi.menu.eesz.2M=2MB (FS:none OTA:~1019KB) modwifi.menu.eesz.2M.build.flash_size=2M -modwifi.menu.eesz.2M.build.flash_size_bytes=0x200000 modwifi.menu.eesz.2M.build.flash_ld=eagle.flash.2m.ld modwifi.menu.eesz.2M.build.spiffs_pagesize=256 -modwifi.menu.eesz.2M.upload.maximum_size=1044464 modwifi.menu.eesz.2M.build.rfcal_addr=0x1FC000 modwifi.menu.ip.lm2f=v2 Lower Memory modwifi.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -6025,6 +5838,11 @@ modwifi.menu.baud.921600=921600 modwifi.menu.baud.921600.upload.speed=921600 modwifi.menu.baud.3000000=3000000 modwifi.menu.baud.3000000.upload.speed=3000000 +modwifi.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +modwifi.menu.eesz.autoflash.build.flash_size=16M +modwifi.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +modwifi.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +modwifi.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## phoenix_v1.name=Phoenix 1.0 @@ -6086,40 +5904,32 @@ phoenix_v1.build.flash_flags=-DFLASHMODE_DIO phoenix_v1.build.flash_freq=40 phoenix_v1.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) phoenix_v1.menu.eesz.4M2M.build.flash_size=4M -phoenix_v1.menu.eesz.4M2M.build.flash_size_bytes=0x400000 phoenix_v1.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld phoenix_v1.menu.eesz.4M2M.build.spiffs_pagesize=256 -phoenix_v1.menu.eesz.4M2M.upload.maximum_size=1044464 phoenix_v1.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 phoenix_v1.menu.eesz.4M2M.build.spiffs_start=0x200000 phoenix_v1.menu.eesz.4M2M.build.spiffs_end=0x3FA000 phoenix_v1.menu.eesz.4M2M.build.spiffs_blocksize=8192 phoenix_v1.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) phoenix_v1.menu.eesz.4M3M.build.flash_size=4M -phoenix_v1.menu.eesz.4M3M.build.flash_size_bytes=0x400000 phoenix_v1.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld phoenix_v1.menu.eesz.4M3M.build.spiffs_pagesize=256 -phoenix_v1.menu.eesz.4M3M.upload.maximum_size=1044464 phoenix_v1.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 phoenix_v1.menu.eesz.4M3M.build.spiffs_start=0x100000 phoenix_v1.menu.eesz.4M3M.build.spiffs_end=0x3FA000 phoenix_v1.menu.eesz.4M3M.build.spiffs_blocksize=8192 phoenix_v1.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) phoenix_v1.menu.eesz.4M1M.build.flash_size=4M -phoenix_v1.menu.eesz.4M1M.build.flash_size_bytes=0x400000 phoenix_v1.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld phoenix_v1.menu.eesz.4M1M.build.spiffs_pagesize=256 -phoenix_v1.menu.eesz.4M1M.upload.maximum_size=1044464 phoenix_v1.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 phoenix_v1.menu.eesz.4M1M.build.spiffs_start=0x300000 phoenix_v1.menu.eesz.4M1M.build.spiffs_end=0x3FA000 phoenix_v1.menu.eesz.4M1M.build.spiffs_blocksize=8192 phoenix_v1.menu.eesz.4M=4MB (FS:none OTA:~1019KB) phoenix_v1.menu.eesz.4M.build.flash_size=4M -phoenix_v1.menu.eesz.4M.build.flash_size_bytes=0x400000 phoenix_v1.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld phoenix_v1.menu.eesz.4M.build.spiffs_pagesize=256 -phoenix_v1.menu.eesz.4M.upload.maximum_size=1044464 phoenix_v1.menu.eesz.4M.build.rfcal_addr=0x3FC000 phoenix_v1.menu.ResetMethod.nodemcu=dtr (aka nodemcu) phoenix_v1.menu.ResetMethod.nodemcu.upload.resetmethod=--before default_reset --after hard_reset @@ -6243,6 +6053,11 @@ phoenix_v1.menu.baud.921600=921600 phoenix_v1.menu.baud.921600.upload.speed=921600 phoenix_v1.menu.baud.3000000=3000000 phoenix_v1.menu.baud.3000000.upload.speed=3000000 +phoenix_v1.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +phoenix_v1.menu.eesz.autoflash.build.flash_size=16M +phoenix_v1.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +phoenix_v1.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +phoenix_v1.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## phoenix_v2.name=Phoenix 2.0 @@ -6304,40 +6119,32 @@ phoenix_v2.build.flash_flags=-DFLASHMODE_DIO phoenix_v2.build.flash_freq=40 phoenix_v2.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) phoenix_v2.menu.eesz.4M2M.build.flash_size=4M -phoenix_v2.menu.eesz.4M2M.build.flash_size_bytes=0x400000 phoenix_v2.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld phoenix_v2.menu.eesz.4M2M.build.spiffs_pagesize=256 -phoenix_v2.menu.eesz.4M2M.upload.maximum_size=1044464 phoenix_v2.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 phoenix_v2.menu.eesz.4M2M.build.spiffs_start=0x200000 phoenix_v2.menu.eesz.4M2M.build.spiffs_end=0x3FA000 phoenix_v2.menu.eesz.4M2M.build.spiffs_blocksize=8192 phoenix_v2.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) phoenix_v2.menu.eesz.4M3M.build.flash_size=4M -phoenix_v2.menu.eesz.4M3M.build.flash_size_bytes=0x400000 phoenix_v2.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld phoenix_v2.menu.eesz.4M3M.build.spiffs_pagesize=256 -phoenix_v2.menu.eesz.4M3M.upload.maximum_size=1044464 phoenix_v2.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 phoenix_v2.menu.eesz.4M3M.build.spiffs_start=0x100000 phoenix_v2.menu.eesz.4M3M.build.spiffs_end=0x3FA000 phoenix_v2.menu.eesz.4M3M.build.spiffs_blocksize=8192 phoenix_v2.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) phoenix_v2.menu.eesz.4M1M.build.flash_size=4M -phoenix_v2.menu.eesz.4M1M.build.flash_size_bytes=0x400000 phoenix_v2.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld phoenix_v2.menu.eesz.4M1M.build.spiffs_pagesize=256 -phoenix_v2.menu.eesz.4M1M.upload.maximum_size=1044464 phoenix_v2.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 phoenix_v2.menu.eesz.4M1M.build.spiffs_start=0x300000 phoenix_v2.menu.eesz.4M1M.build.spiffs_end=0x3FA000 phoenix_v2.menu.eesz.4M1M.build.spiffs_blocksize=8192 phoenix_v2.menu.eesz.4M=4MB (FS:none OTA:~1019KB) phoenix_v2.menu.eesz.4M.build.flash_size=4M -phoenix_v2.menu.eesz.4M.build.flash_size_bytes=0x400000 phoenix_v2.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld phoenix_v2.menu.eesz.4M.build.spiffs_pagesize=256 -phoenix_v2.menu.eesz.4M.upload.maximum_size=1044464 phoenix_v2.menu.eesz.4M.build.rfcal_addr=0x3FC000 phoenix_v2.menu.ResetMethod.nodemcu=dtr (aka nodemcu) phoenix_v2.menu.ResetMethod.nodemcu.upload.resetmethod=--before default_reset --after hard_reset @@ -6461,6 +6268,11 @@ phoenix_v2.menu.baud.921600=921600 phoenix_v2.menu.baud.921600.upload.speed=921600 phoenix_v2.menu.baud.3000000=3000000 phoenix_v2.menu.baud.3000000.upload.speed=3000000 +phoenix_v2.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +phoenix_v2.menu.eesz.autoflash.build.flash_size=16M +phoenix_v2.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +phoenix_v2.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +phoenix_v2.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## eduinowifi.name=Schirmilabs Eduino WiFi @@ -6523,40 +6335,32 @@ eduinowifi.build.flash_flags=-DFLASHMODE_DIO eduinowifi.build.flash_freq=40 eduinowifi.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) eduinowifi.menu.eesz.4M2M.build.flash_size=4M -eduinowifi.menu.eesz.4M2M.build.flash_size_bytes=0x400000 eduinowifi.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld eduinowifi.menu.eesz.4M2M.build.spiffs_pagesize=256 -eduinowifi.menu.eesz.4M2M.upload.maximum_size=1044464 eduinowifi.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 eduinowifi.menu.eesz.4M2M.build.spiffs_start=0x200000 eduinowifi.menu.eesz.4M2M.build.spiffs_end=0x3FA000 eduinowifi.menu.eesz.4M2M.build.spiffs_blocksize=8192 eduinowifi.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) eduinowifi.menu.eesz.4M3M.build.flash_size=4M -eduinowifi.menu.eesz.4M3M.build.flash_size_bytes=0x400000 eduinowifi.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld eduinowifi.menu.eesz.4M3M.build.spiffs_pagesize=256 -eduinowifi.menu.eesz.4M3M.upload.maximum_size=1044464 eduinowifi.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 eduinowifi.menu.eesz.4M3M.build.spiffs_start=0x100000 eduinowifi.menu.eesz.4M3M.build.spiffs_end=0x3FA000 eduinowifi.menu.eesz.4M3M.build.spiffs_blocksize=8192 eduinowifi.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) eduinowifi.menu.eesz.4M1M.build.flash_size=4M -eduinowifi.menu.eesz.4M1M.build.flash_size_bytes=0x400000 eduinowifi.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld eduinowifi.menu.eesz.4M1M.build.spiffs_pagesize=256 -eduinowifi.menu.eesz.4M1M.upload.maximum_size=1044464 eduinowifi.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 eduinowifi.menu.eesz.4M1M.build.spiffs_start=0x300000 eduinowifi.menu.eesz.4M1M.build.spiffs_end=0x3FA000 eduinowifi.menu.eesz.4M1M.build.spiffs_blocksize=8192 eduinowifi.menu.eesz.4M=4MB (FS:none OTA:~1019KB) eduinowifi.menu.eesz.4M.build.flash_size=4M -eduinowifi.menu.eesz.4M.build.flash_size_bytes=0x400000 eduinowifi.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld eduinowifi.menu.eesz.4M.build.spiffs_pagesize=256 -eduinowifi.menu.eesz.4M.upload.maximum_size=1044464 eduinowifi.menu.eesz.4M.build.rfcal_addr=0x3FC000 eduinowifi.menu.ip.lm2f=v2 Lower Memory eduinowifi.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -6676,6 +6480,11 @@ eduinowifi.menu.baud.921600=921600 eduinowifi.menu.baud.921600.upload.speed=921600 eduinowifi.menu.baud.3000000=3000000 eduinowifi.menu.baud.3000000.upload.speed=3000000 +eduinowifi.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +eduinowifi.menu.eesz.autoflash.build.flash_size=16M +eduinowifi.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +eduinowifi.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +eduinowifi.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## wiolink.name=Seeed Wio Link @@ -6738,40 +6547,32 @@ wiolink.build.flash_flags=-DFLASHMODE_QIO wiolink.build.flash_freq=40 wiolink.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) wiolink.menu.eesz.4M2M.build.flash_size=4M -wiolink.menu.eesz.4M2M.build.flash_size_bytes=0x400000 wiolink.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld wiolink.menu.eesz.4M2M.build.spiffs_pagesize=256 -wiolink.menu.eesz.4M2M.upload.maximum_size=1044464 wiolink.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 wiolink.menu.eesz.4M2M.build.spiffs_start=0x200000 wiolink.menu.eesz.4M2M.build.spiffs_end=0x3FA000 wiolink.menu.eesz.4M2M.build.spiffs_blocksize=8192 wiolink.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) wiolink.menu.eesz.4M3M.build.flash_size=4M -wiolink.menu.eesz.4M3M.build.flash_size_bytes=0x400000 wiolink.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld wiolink.menu.eesz.4M3M.build.spiffs_pagesize=256 -wiolink.menu.eesz.4M3M.upload.maximum_size=1044464 wiolink.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 wiolink.menu.eesz.4M3M.build.spiffs_start=0x100000 wiolink.menu.eesz.4M3M.build.spiffs_end=0x3FA000 wiolink.menu.eesz.4M3M.build.spiffs_blocksize=8192 wiolink.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) wiolink.menu.eesz.4M1M.build.flash_size=4M -wiolink.menu.eesz.4M1M.build.flash_size_bytes=0x400000 wiolink.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld wiolink.menu.eesz.4M1M.build.spiffs_pagesize=256 -wiolink.menu.eesz.4M1M.upload.maximum_size=1044464 wiolink.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 wiolink.menu.eesz.4M1M.build.spiffs_start=0x300000 wiolink.menu.eesz.4M1M.build.spiffs_end=0x3FA000 wiolink.menu.eesz.4M1M.build.spiffs_blocksize=8192 wiolink.menu.eesz.4M=4MB (FS:none OTA:~1019KB) wiolink.menu.eesz.4M.build.flash_size=4M -wiolink.menu.eesz.4M.build.flash_size_bytes=0x400000 wiolink.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld wiolink.menu.eesz.4M.build.spiffs_pagesize=256 -wiolink.menu.eesz.4M.upload.maximum_size=1044464 wiolink.menu.eesz.4M.build.rfcal_addr=0x3FC000 wiolink.menu.ip.lm2f=v2 Lower Memory wiolink.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -6891,6 +6692,11 @@ wiolink.menu.baud.921600=921600 wiolink.menu.baud.921600.upload.speed=921600 wiolink.menu.baud.3000000=3000000 wiolink.menu.baud.3000000.upload.speed=3000000 +wiolink.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +wiolink.menu.eesz.autoflash.build.flash_size=16M +wiolink.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +wiolink.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +wiolink.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## blynk.name=SparkFun Blynk Board @@ -6953,40 +6759,32 @@ blynk.build.flash_flags=-DFLASHMODE_QIO blynk.build.flash_freq=40 blynk.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) blynk.menu.eesz.4M2M.build.flash_size=4M -blynk.menu.eesz.4M2M.build.flash_size_bytes=0x400000 blynk.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld blynk.menu.eesz.4M2M.build.spiffs_pagesize=256 -blynk.menu.eesz.4M2M.upload.maximum_size=1044464 blynk.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 blynk.menu.eesz.4M2M.build.spiffs_start=0x200000 blynk.menu.eesz.4M2M.build.spiffs_end=0x3FA000 blynk.menu.eesz.4M2M.build.spiffs_blocksize=8192 blynk.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) blynk.menu.eesz.4M3M.build.flash_size=4M -blynk.menu.eesz.4M3M.build.flash_size_bytes=0x400000 blynk.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld blynk.menu.eesz.4M3M.build.spiffs_pagesize=256 -blynk.menu.eesz.4M3M.upload.maximum_size=1044464 blynk.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 blynk.menu.eesz.4M3M.build.spiffs_start=0x100000 blynk.menu.eesz.4M3M.build.spiffs_end=0x3FA000 blynk.menu.eesz.4M3M.build.spiffs_blocksize=8192 blynk.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) blynk.menu.eesz.4M1M.build.flash_size=4M -blynk.menu.eesz.4M1M.build.flash_size_bytes=0x400000 blynk.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld blynk.menu.eesz.4M1M.build.spiffs_pagesize=256 -blynk.menu.eesz.4M1M.upload.maximum_size=1044464 blynk.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 blynk.menu.eesz.4M1M.build.spiffs_start=0x300000 blynk.menu.eesz.4M1M.build.spiffs_end=0x3FA000 blynk.menu.eesz.4M1M.build.spiffs_blocksize=8192 blynk.menu.eesz.4M=4MB (FS:none OTA:~1019KB) blynk.menu.eesz.4M.build.flash_size=4M -blynk.menu.eesz.4M.build.flash_size_bytes=0x400000 blynk.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld blynk.menu.eesz.4M.build.spiffs_pagesize=256 -blynk.menu.eesz.4M.upload.maximum_size=1044464 blynk.menu.eesz.4M.build.rfcal_addr=0x3FC000 blynk.menu.ip.lm2f=v2 Lower Memory blynk.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -7106,6 +6904,11 @@ blynk.menu.baud.921600=921600 blynk.menu.baud.921600.upload.speed=921600 blynk.menu.baud.3000000=3000000 blynk.menu.baud.3000000.upload.speed=3000000 +blynk.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +blynk.menu.eesz.autoflash.build.flash_size=16M +blynk.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +blynk.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +blynk.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## thing.name=SparkFun ESP8266 Thing @@ -7168,40 +6971,32 @@ thing.build.flash_flags=-DFLASHMODE_QIO thing.build.flash_freq=40 thing.menu.eesz.512K32=512KB (FS:32KB OTA:~230KB) thing.menu.eesz.512K32.build.flash_size=512K -thing.menu.eesz.512K32.build.flash_size_bytes=0x80000 thing.menu.eesz.512K32.build.flash_ld=eagle.flash.512k32.ld thing.menu.eesz.512K32.build.spiffs_pagesize=256 -thing.menu.eesz.512K32.upload.maximum_size=466928 thing.menu.eesz.512K32.build.rfcal_addr=0x7C000 thing.menu.eesz.512K32.build.spiffs_start=0x73000 thing.menu.eesz.512K32.build.spiffs_end=0x7B000 thing.menu.eesz.512K32.build.spiffs_blocksize=4096 thing.menu.eesz.512K64=512KB (FS:64KB OTA:~214KB) thing.menu.eesz.512K64.build.flash_size=512K -thing.menu.eesz.512K64.build.flash_size_bytes=0x80000 thing.menu.eesz.512K64.build.flash_ld=eagle.flash.512k64.ld thing.menu.eesz.512K64.build.spiffs_pagesize=256 -thing.menu.eesz.512K64.upload.maximum_size=434160 thing.menu.eesz.512K64.build.rfcal_addr=0x7C000 thing.menu.eesz.512K64.build.spiffs_start=0x6B000 thing.menu.eesz.512K64.build.spiffs_end=0x7B000 thing.menu.eesz.512K64.build.spiffs_blocksize=4096 thing.menu.eesz.512K128=512KB (FS:128KB OTA:~182KB) thing.menu.eesz.512K128.build.flash_size=512K -thing.menu.eesz.512K128.build.flash_size_bytes=0x80000 thing.menu.eesz.512K128.build.flash_ld=eagle.flash.512k128.ld thing.menu.eesz.512K128.build.spiffs_pagesize=256 -thing.menu.eesz.512K128.upload.maximum_size=368624 thing.menu.eesz.512K128.build.rfcal_addr=0x7C000 thing.menu.eesz.512K128.build.spiffs_start=0x5B000 thing.menu.eesz.512K128.build.spiffs_end=0x7B000 thing.menu.eesz.512K128.build.spiffs_blocksize=4096 thing.menu.eesz.512K=512KB (FS:none OTA:~246KB) thing.menu.eesz.512K.build.flash_size=512K -thing.menu.eesz.512K.build.flash_size_bytes=0x80000 thing.menu.eesz.512K.build.flash_ld=eagle.flash.512k.ld thing.menu.eesz.512K.build.spiffs_pagesize=256 -thing.menu.eesz.512K.upload.maximum_size=499696 thing.menu.eesz.512K.build.rfcal_addr=0x7C000 thing.menu.ip.lm2f=v2 Lower Memory thing.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -7321,6 +7116,11 @@ thing.menu.baud.921600=921600 thing.menu.baud.921600.upload.speed=921600 thing.menu.baud.3000000=3000000 thing.menu.baud.3000000.upload.speed=3000000 +thing.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +thing.menu.eesz.autoflash.build.flash_size=16M +thing.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +thing.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +thing.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## thingdev.name=SparkFun ESP8266 Thing Dev @@ -7383,40 +7183,32 @@ thingdev.build.flash_flags=-DFLASHMODE_DIO thingdev.build.flash_freq=40 thingdev.menu.eesz.512K32=512KB (FS:32KB OTA:~230KB) thingdev.menu.eesz.512K32.build.flash_size=512K -thingdev.menu.eesz.512K32.build.flash_size_bytes=0x80000 thingdev.menu.eesz.512K32.build.flash_ld=eagle.flash.512k32.ld thingdev.menu.eesz.512K32.build.spiffs_pagesize=256 -thingdev.menu.eesz.512K32.upload.maximum_size=466928 thingdev.menu.eesz.512K32.build.rfcal_addr=0x7C000 thingdev.menu.eesz.512K32.build.spiffs_start=0x73000 thingdev.menu.eesz.512K32.build.spiffs_end=0x7B000 thingdev.menu.eesz.512K32.build.spiffs_blocksize=4096 thingdev.menu.eesz.512K64=512KB (FS:64KB OTA:~214KB) thingdev.menu.eesz.512K64.build.flash_size=512K -thingdev.menu.eesz.512K64.build.flash_size_bytes=0x80000 thingdev.menu.eesz.512K64.build.flash_ld=eagle.flash.512k64.ld thingdev.menu.eesz.512K64.build.spiffs_pagesize=256 -thingdev.menu.eesz.512K64.upload.maximum_size=434160 thingdev.menu.eesz.512K64.build.rfcal_addr=0x7C000 thingdev.menu.eesz.512K64.build.spiffs_start=0x6B000 thingdev.menu.eesz.512K64.build.spiffs_end=0x7B000 thingdev.menu.eesz.512K64.build.spiffs_blocksize=4096 thingdev.menu.eesz.512K128=512KB (FS:128KB OTA:~182KB) thingdev.menu.eesz.512K128.build.flash_size=512K -thingdev.menu.eesz.512K128.build.flash_size_bytes=0x80000 thingdev.menu.eesz.512K128.build.flash_ld=eagle.flash.512k128.ld thingdev.menu.eesz.512K128.build.spiffs_pagesize=256 -thingdev.menu.eesz.512K128.upload.maximum_size=368624 thingdev.menu.eesz.512K128.build.rfcal_addr=0x7C000 thingdev.menu.eesz.512K128.build.spiffs_start=0x5B000 thingdev.menu.eesz.512K128.build.spiffs_end=0x7B000 thingdev.menu.eesz.512K128.build.spiffs_blocksize=4096 thingdev.menu.eesz.512K=512KB (FS:none OTA:~246KB) thingdev.menu.eesz.512K.build.flash_size=512K -thingdev.menu.eesz.512K.build.flash_size_bytes=0x80000 thingdev.menu.eesz.512K.build.flash_ld=eagle.flash.512k.ld thingdev.menu.eesz.512K.build.spiffs_pagesize=256 -thingdev.menu.eesz.512K.upload.maximum_size=499696 thingdev.menu.eesz.512K.build.rfcal_addr=0x7C000 thingdev.menu.ip.lm2f=v2 Lower Memory thingdev.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -7536,6 +7328,11 @@ thingdev.menu.baud.921600=921600 thingdev.menu.baud.921600.upload.speed=921600 thingdev.menu.baud.3000000=3000000 thingdev.menu.baud.3000000.upload.speed=3000000 +thingdev.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +thingdev.menu.eesz.autoflash.build.flash_size=16M +thingdev.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +thingdev.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +thingdev.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## esp210.name=SweetPea ESP-210 @@ -7598,40 +7395,32 @@ esp210.build.flash_flags=-DFLASHMODE_QIO esp210.build.flash_freq=40 esp210.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) esp210.menu.eesz.4M2M.build.flash_size=4M -esp210.menu.eesz.4M2M.build.flash_size_bytes=0x400000 esp210.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld esp210.menu.eesz.4M2M.build.spiffs_pagesize=256 -esp210.menu.eesz.4M2M.upload.maximum_size=1044464 esp210.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 esp210.menu.eesz.4M2M.build.spiffs_start=0x200000 esp210.menu.eesz.4M2M.build.spiffs_end=0x3FA000 esp210.menu.eesz.4M2M.build.spiffs_blocksize=8192 esp210.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) esp210.menu.eesz.4M3M.build.flash_size=4M -esp210.menu.eesz.4M3M.build.flash_size_bytes=0x400000 esp210.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld esp210.menu.eesz.4M3M.build.spiffs_pagesize=256 -esp210.menu.eesz.4M3M.upload.maximum_size=1044464 esp210.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 esp210.menu.eesz.4M3M.build.spiffs_start=0x100000 esp210.menu.eesz.4M3M.build.spiffs_end=0x3FA000 esp210.menu.eesz.4M3M.build.spiffs_blocksize=8192 esp210.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) esp210.menu.eesz.4M1M.build.flash_size=4M -esp210.menu.eesz.4M1M.build.flash_size_bytes=0x400000 esp210.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld esp210.menu.eesz.4M1M.build.spiffs_pagesize=256 -esp210.menu.eesz.4M1M.upload.maximum_size=1044464 esp210.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 esp210.menu.eesz.4M1M.build.spiffs_start=0x300000 esp210.menu.eesz.4M1M.build.spiffs_end=0x3FA000 esp210.menu.eesz.4M1M.build.spiffs_blocksize=8192 esp210.menu.eesz.4M=4MB (FS:none OTA:~1019KB) esp210.menu.eesz.4M.build.flash_size=4M -esp210.menu.eesz.4M.build.flash_size_bytes=0x400000 esp210.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld esp210.menu.eesz.4M.build.spiffs_pagesize=256 -esp210.menu.eesz.4M.upload.maximum_size=1044464 esp210.menu.eesz.4M.build.rfcal_addr=0x3FC000 esp210.menu.ip.lm2f=v2 Lower Memory esp210.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -7751,6 +7540,11 @@ esp210.menu.baud.921600=921600 esp210.menu.baud.921600.upload.speed=921600 esp210.menu.baud.3000000=3000000 esp210.menu.baud.3000000.upload.speed=3000000 +esp210.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +esp210.menu.eesz.autoflash.build.flash_size=16M +esp210.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +esp210.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +esp210.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## espinotee.name=ThaiEasyElec's ESPino @@ -7813,40 +7607,32 @@ espinotee.build.flash_flags=-DFLASHMODE_QIO espinotee.build.flash_freq=40 espinotee.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) espinotee.menu.eesz.4M2M.build.flash_size=4M -espinotee.menu.eesz.4M2M.build.flash_size_bytes=0x400000 espinotee.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld espinotee.menu.eesz.4M2M.build.spiffs_pagesize=256 -espinotee.menu.eesz.4M2M.upload.maximum_size=1044464 espinotee.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 espinotee.menu.eesz.4M2M.build.spiffs_start=0x200000 espinotee.menu.eesz.4M2M.build.spiffs_end=0x3FA000 espinotee.menu.eesz.4M2M.build.spiffs_blocksize=8192 espinotee.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) espinotee.menu.eesz.4M3M.build.flash_size=4M -espinotee.menu.eesz.4M3M.build.flash_size_bytes=0x400000 espinotee.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld espinotee.menu.eesz.4M3M.build.spiffs_pagesize=256 -espinotee.menu.eesz.4M3M.upload.maximum_size=1044464 espinotee.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 espinotee.menu.eesz.4M3M.build.spiffs_start=0x100000 espinotee.menu.eesz.4M3M.build.spiffs_end=0x3FA000 espinotee.menu.eesz.4M3M.build.spiffs_blocksize=8192 espinotee.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) espinotee.menu.eesz.4M1M.build.flash_size=4M -espinotee.menu.eesz.4M1M.build.flash_size_bytes=0x400000 espinotee.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld espinotee.menu.eesz.4M1M.build.spiffs_pagesize=256 -espinotee.menu.eesz.4M1M.upload.maximum_size=1044464 espinotee.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 espinotee.menu.eesz.4M1M.build.spiffs_start=0x300000 espinotee.menu.eesz.4M1M.build.spiffs_end=0x3FA000 espinotee.menu.eesz.4M1M.build.spiffs_blocksize=8192 espinotee.menu.eesz.4M=4MB (FS:none OTA:~1019KB) espinotee.menu.eesz.4M.build.flash_size=4M -espinotee.menu.eesz.4M.build.flash_size_bytes=0x400000 espinotee.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld espinotee.menu.eesz.4M.build.spiffs_pagesize=256 -espinotee.menu.eesz.4M.upload.maximum_size=1044464 espinotee.menu.eesz.4M.build.rfcal_addr=0x3FC000 espinotee.menu.ip.lm2f=v2 Lower Memory espinotee.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -7966,6 +7752,11 @@ espinotee.menu.baud.921600=921600 espinotee.menu.baud.921600.upload.speed=921600 espinotee.menu.baud.3000000=3000000 espinotee.menu.baud.3000000.upload.speed=3000000 +espinotee.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +espinotee.menu.eesz.autoflash.build.flash_size=16M +espinotee.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +espinotee.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +espinotee.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## wifi_kit_8.name=WiFi Kit 8 @@ -8028,40 +7819,32 @@ wifi_kit_8.build.flash_flags=-DFLASHMODE_DIO wifi_kit_8.build.flash_freq=40 wifi_kit_8.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) wifi_kit_8.menu.eesz.4M2M.build.flash_size=4M -wifi_kit_8.menu.eesz.4M2M.build.flash_size_bytes=0x400000 wifi_kit_8.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld wifi_kit_8.menu.eesz.4M2M.build.spiffs_pagesize=256 -wifi_kit_8.menu.eesz.4M2M.upload.maximum_size=1044464 wifi_kit_8.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 wifi_kit_8.menu.eesz.4M2M.build.spiffs_start=0x200000 wifi_kit_8.menu.eesz.4M2M.build.spiffs_end=0x3FA000 wifi_kit_8.menu.eesz.4M2M.build.spiffs_blocksize=8192 wifi_kit_8.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) wifi_kit_8.menu.eesz.4M3M.build.flash_size=4M -wifi_kit_8.menu.eesz.4M3M.build.flash_size_bytes=0x400000 wifi_kit_8.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld wifi_kit_8.menu.eesz.4M3M.build.spiffs_pagesize=256 -wifi_kit_8.menu.eesz.4M3M.upload.maximum_size=1044464 wifi_kit_8.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 wifi_kit_8.menu.eesz.4M3M.build.spiffs_start=0x100000 wifi_kit_8.menu.eesz.4M3M.build.spiffs_end=0x3FA000 wifi_kit_8.menu.eesz.4M3M.build.spiffs_blocksize=8192 wifi_kit_8.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) wifi_kit_8.menu.eesz.4M1M.build.flash_size=4M -wifi_kit_8.menu.eesz.4M1M.build.flash_size_bytes=0x400000 wifi_kit_8.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld wifi_kit_8.menu.eesz.4M1M.build.spiffs_pagesize=256 -wifi_kit_8.menu.eesz.4M1M.upload.maximum_size=1044464 wifi_kit_8.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 wifi_kit_8.menu.eesz.4M1M.build.spiffs_start=0x300000 wifi_kit_8.menu.eesz.4M1M.build.spiffs_end=0x3FA000 wifi_kit_8.menu.eesz.4M1M.build.spiffs_blocksize=8192 wifi_kit_8.menu.eesz.4M=4MB (FS:none OTA:~1019KB) wifi_kit_8.menu.eesz.4M.build.flash_size=4M -wifi_kit_8.menu.eesz.4M.build.flash_size_bytes=0x400000 wifi_kit_8.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld wifi_kit_8.menu.eesz.4M.build.spiffs_pagesize=256 -wifi_kit_8.menu.eesz.4M.upload.maximum_size=1044464 wifi_kit_8.menu.eesz.4M.build.rfcal_addr=0x3FC000 wifi_kit_8.menu.ip.lm2f=v2 Lower Memory wifi_kit_8.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -8181,6 +7964,11 @@ wifi_kit_8.menu.baud.921600=921600 wifi_kit_8.menu.baud.921600.upload.speed=921600 wifi_kit_8.menu.baud.3000000=3000000 wifi_kit_8.menu.baud.3000000.upload.speed=3000000 +wifi_kit_8.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +wifi_kit_8.menu.eesz.autoflash.build.flash_size=16M +wifi_kit_8.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +wifi_kit_8.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +wifi_kit_8.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## wifiduino.name=WiFiduino @@ -8243,40 +8031,32 @@ wifiduino.build.flash_flags=-DFLASHMODE_DIO wifiduino.build.flash_freq=40 wifiduino.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) wifiduino.menu.eesz.4M2M.build.flash_size=4M -wifiduino.menu.eesz.4M2M.build.flash_size_bytes=0x400000 wifiduino.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld wifiduino.menu.eesz.4M2M.build.spiffs_pagesize=256 -wifiduino.menu.eesz.4M2M.upload.maximum_size=1044464 wifiduino.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 wifiduino.menu.eesz.4M2M.build.spiffs_start=0x200000 wifiduino.menu.eesz.4M2M.build.spiffs_end=0x3FA000 wifiduino.menu.eesz.4M2M.build.spiffs_blocksize=8192 wifiduino.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) wifiduino.menu.eesz.4M3M.build.flash_size=4M -wifiduino.menu.eesz.4M3M.build.flash_size_bytes=0x400000 wifiduino.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld wifiduino.menu.eesz.4M3M.build.spiffs_pagesize=256 -wifiduino.menu.eesz.4M3M.upload.maximum_size=1044464 wifiduino.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 wifiduino.menu.eesz.4M3M.build.spiffs_start=0x100000 wifiduino.menu.eesz.4M3M.build.spiffs_end=0x3FA000 wifiduino.menu.eesz.4M3M.build.spiffs_blocksize=8192 wifiduino.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) wifiduino.menu.eesz.4M1M.build.flash_size=4M -wifiduino.menu.eesz.4M1M.build.flash_size_bytes=0x400000 wifiduino.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld wifiduino.menu.eesz.4M1M.build.spiffs_pagesize=256 -wifiduino.menu.eesz.4M1M.upload.maximum_size=1044464 wifiduino.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 wifiduino.menu.eesz.4M1M.build.spiffs_start=0x300000 wifiduino.menu.eesz.4M1M.build.spiffs_end=0x3FA000 wifiduino.menu.eesz.4M1M.build.spiffs_blocksize=8192 wifiduino.menu.eesz.4M=4MB (FS:none OTA:~1019KB) wifiduino.menu.eesz.4M.build.flash_size=4M -wifiduino.menu.eesz.4M.build.flash_size_bytes=0x400000 wifiduino.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld wifiduino.menu.eesz.4M.build.spiffs_pagesize=256 -wifiduino.menu.eesz.4M.upload.maximum_size=1044464 wifiduino.menu.eesz.4M.build.rfcal_addr=0x3FC000 wifiduino.menu.ip.lm2f=v2 Lower Memory wifiduino.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -8396,6 +8176,11 @@ wifiduino.menu.baud.512000.windows=512000 wifiduino.menu.baud.512000.upload.speed=512000 wifiduino.menu.baud.3000000=3000000 wifiduino.menu.baud.3000000.upload.speed=3000000 +wifiduino.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +wifiduino.menu.eesz.autoflash.build.flash_size=16M +wifiduino.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +wifiduino.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +wifiduino.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## wifinfo.name=WifInfo @@ -8482,80 +8267,64 @@ wifinfo.menu.FlashFreq.26=26MHz wifinfo.menu.FlashFreq.26.build.flash_freq=26 wifinfo.menu.eesz.1M64=1MB (FS:64KB OTA:~470KB) wifinfo.menu.eesz.1M64.build.flash_size=1M -wifinfo.menu.eesz.1M64.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M64.build.flash_ld=eagle.flash.1m64.ld wifinfo.menu.eesz.1M64.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M64.upload.maximum_size=958448 wifinfo.menu.eesz.1M64.build.rfcal_addr=0xFC000 wifinfo.menu.eesz.1M64.build.spiffs_start=0xEB000 wifinfo.menu.eesz.1M64.build.spiffs_end=0xFB000 wifinfo.menu.eesz.1M64.build.spiffs_blocksize=4096 wifinfo.menu.eesz.1M128=1MB (FS:128KB OTA:~438KB) wifinfo.menu.eesz.1M128.build.flash_size=1M -wifinfo.menu.eesz.1M128.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M128.build.flash_ld=eagle.flash.1m128.ld wifinfo.menu.eesz.1M128.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M128.upload.maximum_size=892912 wifinfo.menu.eesz.1M128.build.rfcal_addr=0xFC000 wifinfo.menu.eesz.1M128.build.spiffs_start=0xDB000 wifinfo.menu.eesz.1M128.build.spiffs_end=0xFB000 wifinfo.menu.eesz.1M128.build.spiffs_blocksize=4096 wifinfo.menu.eesz.1M144=1MB (FS:144KB OTA:~430KB) wifinfo.menu.eesz.1M144.build.flash_size=1M -wifinfo.menu.eesz.1M144.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M144.build.flash_ld=eagle.flash.1m144.ld wifinfo.menu.eesz.1M144.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M144.upload.maximum_size=876528 wifinfo.menu.eesz.1M144.build.rfcal_addr=0xFC000 wifinfo.menu.eesz.1M144.build.spiffs_start=0xD7000 wifinfo.menu.eesz.1M144.build.spiffs_end=0xFB000 wifinfo.menu.eesz.1M144.build.spiffs_blocksize=4096 wifinfo.menu.eesz.1M160=1MB (FS:160KB OTA:~422KB) wifinfo.menu.eesz.1M160.build.flash_size=1M -wifinfo.menu.eesz.1M160.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M160.build.flash_ld=eagle.flash.1m160.ld wifinfo.menu.eesz.1M160.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M160.upload.maximum_size=860144 wifinfo.menu.eesz.1M160.build.rfcal_addr=0xFC000 wifinfo.menu.eesz.1M160.build.spiffs_start=0xD3000 wifinfo.menu.eesz.1M160.build.spiffs_end=0xFB000 wifinfo.menu.eesz.1M160.build.spiffs_blocksize=4096 wifinfo.menu.eesz.1M192=1MB (FS:192KB OTA:~406KB) wifinfo.menu.eesz.1M192.build.flash_size=1M -wifinfo.menu.eesz.1M192.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M192.build.flash_ld=eagle.flash.1m192.ld wifinfo.menu.eesz.1M192.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M192.upload.maximum_size=827376 wifinfo.menu.eesz.1M192.build.rfcal_addr=0xFC000 wifinfo.menu.eesz.1M192.build.spiffs_start=0xCB000 wifinfo.menu.eesz.1M192.build.spiffs_end=0xFB000 wifinfo.menu.eesz.1M192.build.spiffs_blocksize=4096 wifinfo.menu.eesz.1M256=1MB (FS:256KB OTA:~374KB) wifinfo.menu.eesz.1M256.build.flash_size=1M -wifinfo.menu.eesz.1M256.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M256.build.flash_ld=eagle.flash.1m256.ld wifinfo.menu.eesz.1M256.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M256.upload.maximum_size=761840 wifinfo.menu.eesz.1M256.build.rfcal_addr=0xFC000 wifinfo.menu.eesz.1M256.build.spiffs_start=0xBB000 wifinfo.menu.eesz.1M256.build.spiffs_end=0xFB000 wifinfo.menu.eesz.1M256.build.spiffs_blocksize=4096 wifinfo.menu.eesz.1M512=1MB (FS:512KB OTA:~246KB) wifinfo.menu.eesz.1M512.build.flash_size=1M -wifinfo.menu.eesz.1M512.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M512.build.flash_ld=eagle.flash.1m512.ld wifinfo.menu.eesz.1M512.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M512.upload.maximum_size=499696 wifinfo.menu.eesz.1M512.build.rfcal_addr=0xFC000 wifinfo.menu.eesz.1M512.build.spiffs_start=0x7B000 wifinfo.menu.eesz.1M512.build.spiffs_end=0xFB000 wifinfo.menu.eesz.1M512.build.spiffs_blocksize=8192 wifinfo.menu.eesz.1M=1MB (FS:none OTA:~502KB) wifinfo.menu.eesz.1M.build.flash_size=1M -wifinfo.menu.eesz.1M.build.flash_size_bytes=0x100000 wifinfo.menu.eesz.1M.build.flash_ld=eagle.flash.1m.ld wifinfo.menu.eesz.1M.build.spiffs_pagesize=256 -wifinfo.menu.eesz.1M.upload.maximum_size=1023984 wifinfo.menu.eesz.1M.build.rfcal_addr=0xFC000 wifinfo.menu.ip.lm2f=v2 Lower Memory wifinfo.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -8675,6 +8444,11 @@ wifinfo.menu.baud.921600=921600 wifinfo.menu.baud.921600.upload.speed=921600 wifinfo.menu.baud.3000000=3000000 wifinfo.menu.baud.3000000.upload.speed=3000000 +wifinfo.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +wifinfo.menu.eesz.autoflash.build.flash_size=16M +wifinfo.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +wifinfo.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +wifinfo.menu.eesz.autoflash.upload.maximum_size=1044464 ############################################################## cw01.name=XinaBox CW01 @@ -8734,46 +8508,38 @@ cw01.menu.non32xfer.safe.build.non32xferflags=-DNON32XFER_HANDLER cw01.upload.resetmethod=--before default_reset --after hard_reset cw01.menu.CrystalFreq.26=26 MHz cw01.menu.CrystalFreq.40=40 MHz -cw01.menu.CrystalFreq.40.build.extra_flags=-DF_CRYSTAL=40000000 -DESP8266 +cw01.menu.CrystalFreq.40.build.extra_flags=-DF_CRYSTAL=40000000 cw01.build.flash_mode=dio cw01.build.flash_flags=-DFLASHMODE_DIO cw01.build.flash_freq=40 cw01.menu.eesz.4M2M=4MB (FS:2MB OTA:~1019KB) cw01.menu.eesz.4M2M.build.flash_size=4M -cw01.menu.eesz.4M2M.build.flash_size_bytes=0x400000 cw01.menu.eesz.4M2M.build.flash_ld=eagle.flash.4m2m.ld cw01.menu.eesz.4M2M.build.spiffs_pagesize=256 -cw01.menu.eesz.4M2M.upload.maximum_size=1044464 cw01.menu.eesz.4M2M.build.rfcal_addr=0x3FC000 cw01.menu.eesz.4M2M.build.spiffs_start=0x200000 cw01.menu.eesz.4M2M.build.spiffs_end=0x3FA000 cw01.menu.eesz.4M2M.build.spiffs_blocksize=8192 cw01.menu.eesz.4M3M=4MB (FS:3MB OTA:~512KB) cw01.menu.eesz.4M3M.build.flash_size=4M -cw01.menu.eesz.4M3M.build.flash_size_bytes=0x400000 cw01.menu.eesz.4M3M.build.flash_ld=eagle.flash.4m3m.ld cw01.menu.eesz.4M3M.build.spiffs_pagesize=256 -cw01.menu.eesz.4M3M.upload.maximum_size=1044464 cw01.menu.eesz.4M3M.build.rfcal_addr=0x3FC000 cw01.menu.eesz.4M3M.build.spiffs_start=0x100000 cw01.menu.eesz.4M3M.build.spiffs_end=0x3FA000 cw01.menu.eesz.4M3M.build.spiffs_blocksize=8192 cw01.menu.eesz.4M1M=4MB (FS:1MB OTA:~1019KB) cw01.menu.eesz.4M1M.build.flash_size=4M -cw01.menu.eesz.4M1M.build.flash_size_bytes=0x400000 cw01.menu.eesz.4M1M.build.flash_ld=eagle.flash.4m1m.ld cw01.menu.eesz.4M1M.build.spiffs_pagesize=256 -cw01.menu.eesz.4M1M.upload.maximum_size=1044464 cw01.menu.eesz.4M1M.build.rfcal_addr=0x3FC000 cw01.menu.eesz.4M1M.build.spiffs_start=0x300000 cw01.menu.eesz.4M1M.build.spiffs_end=0x3FA000 cw01.menu.eesz.4M1M.build.spiffs_blocksize=8192 cw01.menu.eesz.4M=4MB (FS:none OTA:~1019KB) cw01.menu.eesz.4M.build.flash_size=4M -cw01.menu.eesz.4M.build.flash_size_bytes=0x400000 cw01.menu.eesz.4M.build.flash_ld=eagle.flash.4m.ld cw01.menu.eesz.4M.build.spiffs_pagesize=256 -cw01.menu.eesz.4M.upload.maximum_size=1044464 cw01.menu.eesz.4M.build.rfcal_addr=0x3FC000 cw01.menu.ip.lm2f=v2 Lower Memory cw01.menu.ip.lm2f.build.lwip_include=lwip2/include @@ -8893,4 +8659,9 @@ cw01.menu.baud.921600=921600 cw01.menu.baud.921600.upload.speed=921600 cw01.menu.baud.3000000=3000000 cw01.menu.baud.3000000.upload.speed=3000000 +cw01.menu.eesz.autoflash=Mapping defined by Hardware and Sketch +cw01.menu.eesz.autoflash.build.flash_size=16M +cw01.menu.eesz.autoflash.build.flash_ld=eagle.flash.auto.ld +cw01.menu.eesz.autoflash.build.extra_flags=-DFLASH_MAP_SUPPORT=1 +cw01.menu.eesz.autoflash.upload.maximum_size=1044464 diff --git a/cores/esp8266/Arduino.h b/cores/esp8266/Arduino.h index e59155adcc..ee9a7964f0 100644 --- a/cores/esp8266/Arduino.h +++ b/cores/esp8266/Arduino.h @@ -186,6 +186,9 @@ void attachInterrupt(uint8_t pin, void (*)(void), int mode); void detachInterrupt(uint8_t pin); void attachInterruptArg(uint8_t pin, void (*)(void*), void* arg, int mode); +#if FLASH_MAP_SUPPORT +#include "flash_hal.h" +#endif void preinit(void); void setup(void); void loop(void); diff --git a/cores/esp8266/Esp.cpp b/cores/esp8266/Esp.cpp index 709ddbf196..d517f6a496 100644 --- a/cores/esp8266/Esp.cpp +++ b/cores/esp8266/Esp.cpp @@ -26,7 +26,7 @@ #include "MD5Builder.h" #include "umm_malloc/umm_malloc.h" #include "cont.h" - +#include "flash_hal.h" #include "coredecls.h" #include "umm_malloc/umm_malloc.h" #include @@ -291,6 +291,9 @@ uint32_t EspClass::getFlashChipRealSize(void) uint32_t EspClass::getFlashChipSize(void) { +#if FLASH_MAP_SUPPORT + return getFlashChipRealSize(); +#else uint32_t data; uint8_t * bytes = (uint8_t *) &data; // read first 4 byte (magic byte + flash config) @@ -298,6 +301,7 @@ uint32_t EspClass::getFlashChipSize(void) return magicFlashChipSize((bytes[3] & 0xf0) >> 4); } return 0; +#endif } uint32_t EspClass::getFlashChipSpeed(void) @@ -323,6 +327,7 @@ FlashMode_t EspClass::getFlashChipMode(void) return mode; } +#if !FLASH_MAP_SUPPORT uint32_t EspClass::magicFlashChipSize(uint8_t byte) { switch(byte & 0x0F) { case 0x0: // 4 Mbit (512KB) @@ -343,6 +348,7 @@ uint32_t EspClass::magicFlashChipSize(uint8_t byte) { return 0; } } +#endif uint32_t EspClass::magicFlashChipSpeed(uint8_t byte) { switch(byte & 0x0F) { @@ -612,14 +618,12 @@ uint32_t EspClass::getSketchSize() { return result; } -extern "C" uint32_t _FS_start; - uint32_t EspClass::getFreeSketchSpace() { uint32_t usedSize = getSketchSize(); // round one sector up uint32_t freeSpaceStart = (usedSize + FLASH_SECTOR_SIZE - 1) & (~(FLASH_SECTOR_SIZE - 1)); - uint32_t freeSpaceEnd = (uint32_t)&_FS_start - 0x40200000; + uint32_t freeSpaceEnd = (uint32_t)FS_start - 0x40200000; #ifdef DEBUG_SERIAL DEBUG_SERIAL.printf("usedSize=%u freeSpaceStart=%u freeSpaceEnd=%u\r\n", usedSize, freeSpaceStart, freeSpaceEnd); diff --git a/cores/esp8266/FlashMap.h b/cores/esp8266/FlashMap.h new file mode 100644 index 0000000000..996228fdc2 --- /dev/null +++ b/cores/esp8266/FlashMap.h @@ -0,0 +1,59 @@ + +// - do not edit - autogenerated by boards.txt.py + +#ifndef __FLASH_MAP_H +#define __FLASH_MAP_H + +#include +#include + +typedef struct +{ + uint32_t eeprom_start; + uint32_t fs_start; + uint32_t fs_end; + uint32_t fs_block_size; + uint32_t fs_page_size; + uint32_t flash_size_kb; +} flash_map_s; + +/* + Following definitions map the above structure, one per line. + FLASH_MAP_* is a user choice in sketch: + `FLASH_MAP_SETUP_CONFIG(FLASH_MAP_OTA_FS)` + Configuration is made at boot with detected flash chip size (last argument 512..16384) + Other values are defined from `tools/boards.txt.py`. +*/ + +#define FLASH_MAP_OTA_FS \ + { \ + { .eeprom_start = 0x402fb000, .fs_start = 0x402eb000, .fs_end = 0x402fb000, .fs_block_size = 0x1000, .fs_page_size = 0x100, .flash_size_kb = 1024 }, \ + { .eeprom_start = 0x403fb000, .fs_start = 0x403c0000, .fs_end = 0x403fb000, .fs_block_size = 0x1000, .fs_page_size = 0x100, .flash_size_kb = 2048 }, \ + { .eeprom_start = 0x405fb000, .fs_start = 0x40400000, .fs_end = 0x405fa000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 4096 }, \ + { .eeprom_start = 0x409fb000, .fs_start = 0x40400000, .fs_end = 0x409fa000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 8192 }, \ + { .eeprom_start = 0x411fb000, .fs_start = 0x40400000, .fs_end = 0x411fa000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 16384 }, \ + { .eeprom_start = 0x4027b000, .fs_start = 0x40273000, .fs_end = 0x4027b000, .fs_block_size = 0x1000, .fs_page_size = 0x100, .flash_size_kb = 512 }, \ + } + +#define FLASH_MAP_MAX_FS \ + { \ + { .eeprom_start = 0x402fb000, .fs_start = 0x4027b000, .fs_end = 0x402fb000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 1024 }, \ + { .eeprom_start = 0x403fb000, .fs_start = 0x40300000, .fs_end = 0x403fa000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 2048 }, \ + { .eeprom_start = 0x405fb000, .fs_start = 0x40300000, .fs_end = 0x405fa000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 4096 }, \ + { .eeprom_start = 0x409fb000, .fs_start = 0x40300000, .fs_end = 0x409fa000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 8192 }, \ + { .eeprom_start = 0x411fb000, .fs_start = 0x40300000, .fs_end = 0x411fa000, .fs_block_size = 0x2000, .fs_page_size = 0x100, .flash_size_kb = 16384 }, \ + { .eeprom_start = 0x4027b000, .fs_start = 0x4025b000, .fs_end = 0x4027b000, .fs_block_size = 0x1000, .fs_page_size = 0x100, .flash_size_kb = 512 }, \ + } + +#define FLASH_MAP_NO_FS \ + { \ + { .eeprom_start = 0x402fb000, .fs_start = 0x402fb000, .fs_end = 0x402fb000, .fs_block_size = 0x0, .fs_page_size = 0x0, .flash_size_kb = 1024 }, \ + { .eeprom_start = 0x403fb000, .fs_start = 0x403fb000, .fs_end = 0x403fb000, .fs_block_size = 0x0, .fs_page_size = 0x0, .flash_size_kb = 2048 }, \ + { .eeprom_start = 0x405fb000, .fs_start = 0x405fb000, .fs_end = 0x405fb000, .fs_block_size = 0x0, .fs_page_size = 0x0, .flash_size_kb = 4096 }, \ + { .eeprom_start = 0x409fb000, .fs_start = 0x409fb000, .fs_end = 0x409fb000, .fs_block_size = 0x0, .fs_page_size = 0x0, .flash_size_kb = 8192 }, \ + { .eeprom_start = 0x411fb000, .fs_start = 0x411fb000, .fs_end = 0x411fb000, .fs_block_size = 0x0, .fs_page_size = 0x0, .flash_size_kb = 16384 }, \ + { .eeprom_start = 0x4027b000, .fs_start = 0x4027b000, .fs_end = 0x4027b000, .fs_block_size = 0x0, .fs_page_size = 0x0, .flash_size_kb = 512 }, \ + } + +#endif // __FLASH_MAP_H + diff --git a/cores/esp8266/Updater.cpp b/cores/esp8266/Updater.cpp index 19a9dad528..c1584cf982 100644 --- a/cores/esp8266/Updater.cpp +++ b/cores/esp8266/Updater.cpp @@ -24,8 +24,7 @@ extern "C" { #include "user_interface.h" } -extern "C" uint32_t _FS_start; -extern "C" uint32_t _FS_end; +#include // not "flash_hal.h": can use hijacked MOCK version UpdaterClass::UpdaterClass() { @@ -118,7 +117,7 @@ bool UpdaterClass::begin(size_t size, int command, int ledPin, uint8_t ledOn) { if (command == U_FLASH) { //address of the end of the space available for sketch and update - uintptr_t updateEndAddress = (uintptr_t)&_FS_start - 0x40200000; + uintptr_t updateEndAddress = FS_start - 0x40200000; updateStartAddress = (updateEndAddress > roundedSize)? (updateEndAddress - roundedSize) : 0; @@ -135,14 +134,14 @@ bool UpdaterClass::begin(size_t size, int command, int ledPin, uint8_t ledOn) { } } else if (command == U_FS) { - if((uintptr_t)&_FS_start + roundedSize > (uintptr_t)&_FS_end) { + if(FS_start + roundedSize > FS_end) { _setError(UPDATE_ERROR_SPACE); return false; } #ifdef ATOMIC_FS_UPDATE //address of the end of the space available for update - uintptr_t updateEndAddress = (uintptr_t)&_FS_start - 0x40200000; + uintptr_t updateEndAddress = FS_start - 0x40200000; updateStartAddress = (updateEndAddress > roundedSize)? (updateEndAddress - roundedSize) : 0; @@ -151,7 +150,7 @@ bool UpdaterClass::begin(size_t size, int command, int ledPin, uint8_t ledOn) { return false; } #else - updateStartAddress = (uintptr_t)&_FS_start - 0x40200000; + updateStartAddress = FS_start - 0x40200000; #endif } else { @@ -314,7 +313,7 @@ bool UpdaterClass::end(bool evenIfRemaining){ eboot_command ebcmd; ebcmd.action = ACTION_COPY_RAW; ebcmd.args[0] = _startAddress; - ebcmd.args[1] = (uintptr_t)&_FS_start - 0x40200000; + ebcmd.args[1] = FS_start - 0x40200000; ebcmd.args[2] = _size; eboot_command_write(&ebcmd); #endif @@ -460,6 +459,9 @@ bool UpdaterClass::_verifyEnd() { return false; } +// it makes no sense to check flash size in auto flash mode +// (sketch size would have to be set in bin header, instead of flash size) +#if !FLASH_MAP_SUPPORT uint32_t bin_flash_size = ESP.magicFlashChipSize((buf[3] & 0xf0) >> 4); // check if new bin fits to SPI flash @@ -468,6 +470,7 @@ bool UpdaterClass::_verifyEnd() { _setError(UPDATE_ERROR_NEW_FLASH_CONFIG); return false; } +#endif return true; } else if(_command == U_FS) { diff --git a/cores/esp8266/core_esp8266_main.cpp b/cores/esp8266/core_esp8266_main.cpp index bd784bc7c8..39decfb12f 100644 --- a/cores/esp8266/core_esp8266_main.cpp +++ b/cores/esp8266/core_esp8266_main.cpp @@ -393,6 +393,12 @@ extern "C" void __disableWiFiAtBootTime (void) wifi_fpm_do_sleep(0xFFFFFFF); } +#if FLASH_MAP_SUPPORT +#include "flash_hal.h" +extern "C" void flashinit (void); +uint32_t __flashindex; +#endif + extern "C" void user_init(void) { struct rst_info *rtc_info_ptr = system_get_rst_info(); memcpy((void *) &resetInfo, (void *) rtc_info_ptr, sizeof(resetInfo)); @@ -421,6 +427,9 @@ extern "C" void user_init(void) { #if defined(MMU_IRAM_HEAP) umm_init_iram(); +#endif +#if FLASH_MAP_SUPPORT + flashinit(); #endif preinit(); // Prior to C++ Dynamic Init (not related to above init() ). Meant to be user redefinable. __disableWiFiAtBootTime(); // default weak function disables WiFi diff --git a/cores/esp8266/flash_hal.cpp b/cores/esp8266/flash_hal.cpp index 986d3745d6..87b34830fa 100644 --- a/cores/esp8266/flash_hal.cpp +++ b/cores/esp8266/flash_hal.cpp @@ -68,3 +68,13 @@ int32_t flash_hal_erase(uint32_t addr, uint32_t size) { } return FLASH_HAL_OK; } + +#if FLASH_MAP_SUPPORT + +// default weak configuration: +FLASH_MAP_SETUP_CONFIG_ATTR(__attribute__((weak)), FLASH_MAP_OTA_FS) + +// can be overridden by user with: +//FLASH_MAP_SETUP_CONFIG(FLASH_MAP_some_configuration) + +#endif diff --git a/cores/esp8266/flash_hal.h b/cores/esp8266/flash_hal.h index 13219bb18f..effca0f965 100644 --- a/cores/esp8266/flash_hal.h +++ b/cores/esp8266/flash_hal.h @@ -24,18 +24,58 @@ License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#ifdef ARDUINO -extern "C" uint32_t _FS_start; -extern "C" uint32_t _FS_end; -extern "C" uint32_t _FS_page; -extern "C" uint32_t _FS_block; - -#define FS_PHYS_ADDR ((uint32_t) (&_FS_start) - 0x40200000) -#define FS_PHYS_SIZE ((uint32_t) (&_FS_end) - (uint32_t) (&_FS_start)) -#define FS_PHYS_PAGE ((uint32_t) &_FS_page) -#define FS_PHYS_BLOCK ((uint32_t) &_FS_block) + +#ifdef __cplusplus +extern "C" { #endif +#if FLASH_MAP_SUPPORT +#include + +extern uint32_t spi_flash_get_id (void); // +extern void flashinit(void); +extern uint32_t __flashindex; +extern const flash_map_s __flashdesc[]; + +#define FLASH_MAP_SETUP_CONFIG(conf) FLASH_MAP_SETUP_CONFIG_ATTR(,conf) +#define FLASH_MAP_SETUP_CONFIG_ATTR(attr, conf...) \ + const flash_map_s __flashdesc[] PROGMEM = conf; \ + void flashinit (void) attr; \ + void flashinit (void) \ + { \ + uint32_t flash_chip_size_kb = 1 << (((spi_flash_get_id() >> 16) & 0xff) - 10); \ + for (__flashindex = 0; __flashindex < sizeof(__flashdesc) / sizeof(__flashdesc[0]); __flashindex++) \ + if (__flashdesc[__flashindex].flash_size_kb == flash_chip_size_kb) \ + return; \ + panic(); /* configuration not found */ \ + } + +#define EEPROM_start (__flashdesc[__flashindex].eeprom_start) +#define FS_start (__flashdesc[__flashindex].fs_start) +#define FS_end (__flashdesc[__flashindex].fs_end) +#define FS_block (__flashdesc[__flashindex].fs_block_size) +#define FS_page (__flashdesc[__flashindex].fs_page_size) + +#else // !FLASH_MAP_SUPPORT + +extern uint32_t _FS_start; +extern uint32_t _FS_end; +extern uint32_t _FS_page; +extern uint32_t _FS_block; +extern uint32_t _EEPROM_start; +#define EEPROM_start ((uint32_t)&_EEPROM_start) +#define FS_start ((uint32_t)&_FS_start) +#define FS_end ((uint32_t)&_FS_end) +#define FS_page ((uint32_t)&_FS_page) +#define FS_block ((uint32_t)&_FS_block) + +#endif // FLASH_MAP_SUPPORT + +#define FS_PHYS_ADDR ((uint32_t)FS_start - 0x40200000) +#define FS_PHYS_SIZE ((uint32_t)(FS_end - FS_start)) +#define FS_PHYS_PAGE ((uint32_t)FS_page) +#define FS_PHYS_BLOCK ((uint32_t)FS_block) + // Return values of the following functions #define FLASH_HAL_OK (0) #define FLASH_HAL_READ_ERROR (-1) @@ -46,4 +86,8 @@ extern int32_t flash_hal_write(uint32_t addr, uint32_t size, const uint8_t *src) extern int32_t flash_hal_erase(uint32_t addr, uint32_t size); extern int32_t flash_hal_read(uint32_t addr, uint32_t size, uint8_t *dst); +#ifdef __cplusplus +} // extern "C" +#endif + #endif // !defined(flash_hal_h) diff --git a/doc/faq/readme.rst b/doc/faq/readme.rst index 4fb065a38f..53e830358b 100644 --- a/doc/faq/readme.rst +++ b/doc/faq/readme.rst @@ -186,3 +186,8 @@ indeed off at boot and is powered on only when starting to be used with the regular API. Read more at `former WiFi persistent mode <../esp8266wifi/generic-class.rst#persistent>`__. + +How to resolve "undefined reference to ``flashinit`'" error ? +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Please read `flash layout <../filesystem.rst>`__ documentation entry. diff --git a/doc/filesystem.rst b/doc/filesystem.rst index 85ee96abb0..a9038fe3b4 100644 --- a/doc/filesystem.rst +++ b/doc/filesystem.rst @@ -20,41 +20,43 @@ environment: Sketch OTA update File system EEPROM WiFi config (SDK) File system size depends on the flash chip size. Depending on the board -which is selected in IDE, you have the following options for flash size: - -+---------------------------------+--------------------------+---------------------------+ -| Board | Flash chip size, bytes | File system size, bytes | -+=================================+==========================+===========================+ -| Generic module | 512k | 64k, 128k | -+---------------------------------+--------------------------+---------------------------+ -| Generic module | 1M | 64k, 128k, 256k, 512k | -+---------------------------------+--------------------------+---------------------------+ -| Generic module | 2M | 1M | -+---------------------------------+--------------------------+---------------------------+ -| Generic module | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| Adafruit HUZZAH | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| ESPresso Lite 1.0 | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| ESPresso Lite 2.0 | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| NodeMCU 0.9 | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| NodeMCU 1.0 | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| Olimex MOD-WIFI-ESP8266(-DEV) | 2M | 1M | -+---------------------------------+--------------------------+---------------------------+ -| SparkFun Thing | 512k | 64k | -+---------------------------------+--------------------------+---------------------------+ -| SweetPea ESP-210 | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| WeMos D1 R1, R2 & mini | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| ESPDuino | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ -| WiFiduino | 4M | 1M, 2M, 3M | -+---------------------------------+--------------------------+---------------------------+ +which is selected in IDE, the following table shows options for flash size. + +Another option called ``Mapping defined by Hardware and Sketch`` is available. +It allows a sketch, not the user, to select FS configuration at boot +according to flash chip size. + +This option is also enabled with this compilation define: ``-DFLASH_MAP_SUPPORT=1``. + +There are three possible configurations: + +- ``FLASH_MAP_OTA_FS``: largest available space for onboard FS, allowing OTA (noted 'OTA' in the table) +- ``FLASH_MAP_MAX_FS``: largest available space for onboard FS (noted 'MAX' in the table) +- ``FLASH_MAP_NO_FS``: no onboard FS + +Sketch can invoke a particular configuration by adding this line: + +.. code:: cpp + + FLASH_MAP_SETUP_CONFIG(FLASH_MAP_OTA_FS) + void setup () { ... } + void loop () { ... } + ++-------+--------------------------+----------------------------------------------------------+ +| Board | Flash chip size (bytes) | File system size (bytes) | ++=======+==========================+==========================================================+ +| Any | 512KBytes | 32KB(OTA), 64KB, 128KB(MAX) | ++-------+--------------------------+----------------------------------------------------------+ +| Any | 1MBytes | 64KB(OTA), 128KB, 144KB, 160KB, 192KB, 256KB, 512KB(MAX) | ++-------+--------------------------+----------------------------------------------------------+ +| Any | 2MBytes | 64KB, 128KB, 256KB(OTA), 512KB, 1MB(MAX) | ++-------+--------------------------+----------------------------------------------------------+ +| Any | 4MBytes | 1MB, 2MB(OTA), 3MB(MAX) | ++-------+--------------------------+----------------------------------------------------------+ +| Any | 8MBytes | 6MB(OTA), 7MB(MAX) | ++-------+--------------------------+----------------------------------------------------------+ +| Any | 16MBytes | 14MB(OTA), 15MB(MAX) | ++-------+--------------------------+----------------------------------------------------------+ **Note:** to use any of file system functions in the sketch, add the following include to the sketch: @@ -63,6 +65,7 @@ following include to the sketch: //#include "FS.h" // SPIFFS is declared #include "LittleFS.h" // LittleFS is declared + //#include "SDFS.h" // SDFS is declared SPIFFS Deprecation Warning -------------------------- diff --git a/libraries/EEPROM/EEPROM.cpp b/libraries/EEPROM/EEPROM.cpp index 9df8bbcf73..e193237d77 100644 --- a/libraries/EEPROM/EEPROM.cpp +++ b/libraries/EEPROM/EEPROM.cpp @@ -31,7 +31,7 @@ extern "C" { #include "spi_flash.h" } -extern "C" uint32_t _EEPROM_start; +#include EEPROMClass::EEPROMClass(uint32_t sector) : _sector(sector) @@ -39,7 +39,7 @@ EEPROMClass::EEPROMClass(uint32_t sector) } EEPROMClass::EEPROMClass(void) -: _sector((((uint32_t)&_EEPROM_start - 0x40200000) / SPI_FLASH_SEC_SIZE)) +: _sector(((EEPROM_start - 0x40200000) / SPI_FLASH_SEC_SIZE)) { } diff --git a/libraries/ESP8266HTTPUpdateServer/src/ESP8266HTTPUpdateServer-impl.h b/libraries/ESP8266HTTPUpdateServer/src/ESP8266HTTPUpdateServer-impl.h index 39608934cd..664454dc81 100644 --- a/libraries/ESP8266HTTPUpdateServer/src/ESP8266HTTPUpdateServer-impl.h +++ b/libraries/ESP8266HTTPUpdateServer/src/ESP8266HTTPUpdateServer-impl.h @@ -93,7 +93,7 @@ void ESP8266HTTPUpdateServerTemplate::setup(ESP8266WebServerTemplate if (_serial_output) Serial.printf("Update: %s\n", upload.filename.c_str()); if (upload.name == "filesystem") { - size_t fsSize = ((size_t) &_FS_end - (size_t) &_FS_start); + size_t fsSize = ((size_t)FS_end - (size_t)FS_start); close_all_fs(); if (!Update.begin(fsSize, U_FS)){//start with max available size if (_serial_output) Update.printError(Serial); diff --git a/libraries/ESP8266httpUpdate/src/ESP8266httpUpdate.cpp b/libraries/ESP8266httpUpdate/src/ESP8266httpUpdate.cpp index a0a7104282..741c701804 100755 --- a/libraries/ESP8266httpUpdate/src/ESP8266httpUpdate.cpp +++ b/libraries/ESP8266httpUpdate/src/ESP8266httpUpdate.cpp @@ -25,9 +25,7 @@ #include "ESP8266httpUpdate.h" #include - -extern "C" uint32_t _FS_start; -extern "C" uint32_t _FS_end; +#include ESP8266HTTPUpdate::ESP8266HTTPUpdate(void) : _httpClientTimeout(8000) @@ -234,7 +232,7 @@ HTTPUpdateResult ESP8266HTTPUpdate::handleUpdate(HTTPClient& http, const String& if(len > 0) { bool startUpdate = true; if(spiffs) { - size_t spiffsSize = ((size_t) &_FS_end - (size_t) &_FS_start); + size_t spiffsSize = ((size_t)FS_end - (size_t)FS_start); if(len > (int) spiffsSize) { DEBUG_HTTP_UPDATE("[httpUpdate] spiffsSize to low (%d) needed: %d\n", spiffsSize, len); startUpdate = false; @@ -292,6 +290,9 @@ HTTPUpdateResult ESP8266HTTPUpdate::handleUpdate(HTTPClient& http, const String& } +// it makes no sense to check flash size in auto flash mode +// (sketch size would have to be set in bin header, instead of flash size) +#if !FLASH_MAP_SUPPORT if (buf[0] == 0xe9) { uint32_t bin_flash_size = ESP.magicFlashChipSize((buf[3] & 0xf0) >> 4); @@ -303,6 +304,7 @@ HTTPUpdateResult ESP8266HTTPUpdate::handleUpdate(HTTPClient& http, const String& return HTTP_UPDATE_FAILED; } } +#endif } if(runUpdate(*tcp, len, md5, command)) { ret = HTTP_UPDATE_OK; diff --git a/platform.txt b/platform.txt index a7fd631a5e..ead29507f5 100644 --- a/platform.txt +++ b/platform.txt @@ -52,11 +52,17 @@ build.sdk=NONOSDK22x_190703 #build.sdk=NONOSDK22x_191024 #build.sdk=NONOSDK22x_191105 +# These are not overriden when FS is not configured +build.eeprom_start= +build.spiffs_start= +build.spiffs_end= +build.spiffs_blocksize= + compiler.path={runtime.tools.xtensa-lx106-elf-gcc.path}/bin/ compiler.sdk.path={runtime.platform.path}/tools/sdk compiler.libc.path={runtime.platform.path}/tools/sdk/libc/xtensa-lx106-elf -compiler.cpreprocessor.flags=-D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE "-I{compiler.sdk.path}/include" "-I{compiler.sdk.path}/{build.lwip_include}" "-I{compiler.libc.path}/include" "-I{build.path}/core" +compiler.cpreprocessor.flags=-D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 "-I{compiler.sdk.path}/include" "-I{compiler.sdk.path}/{build.lwip_include}" "-I{compiler.libc.path}/include" "-I{build.path}/core" # support precompiled libraries in IDE v1.8.6+ compiler.libraries.ldflags= @@ -86,7 +92,7 @@ compiler.elf2hex.flags= compiler.size.cmd=xtensa-lx106-elf-size # This can be overridden in boards.txt -build.extra_flags=-DESP8266 +build.extra_flags= # These can be overridden in platform.local.txt compiler.c.extra_flags= diff --git a/tests/host/common/flash_hal_mock.h b/tests/host/common/flash_hal.h similarity index 54% rename from tests/host/common/flash_hal_mock.h rename to tests/host/common/flash_hal.h index af5035eaa5..e20edc4bcd 100644 --- a/tests/host/common/flash_hal_mock.h +++ b/tests/host/common/flash_hal.h @@ -2,18 +2,26 @@ #define flash_hal_mock_h #include +#include <../../cores/esp8266/flash_hal.h> + +#undef FS_start +#undef FS_end +#define FS_start 0 +#define FS_end 0 extern "C" { - extern uint32_t s_phys_addr; - extern uint32_t s_phys_size; - extern uint32_t s_phys_page; - extern uint32_t s_phys_block; - extern uint8_t* s_phys_data; -} + +extern uint32_t s_phys_addr; +extern uint32_t s_phys_size; +extern uint32_t s_phys_page; +extern uint32_t s_phys_block; +extern uint8_t* s_phys_data; extern int32_t flash_hal_read(uint32_t addr, uint32_t size, uint8_t *dst); extern int32_t flash_hal_write(uint32_t addr, uint32_t size, const uint8_t *src); extern int32_t flash_hal_erase(uint32_t addr, uint32_t size); +} + #endif diff --git a/tests/host/common/flash_hal_mock.cpp b/tests/host/common/flash_hal_mock.cpp index 5304d7553a..aff589e02d 100644 --- a/tests/host/common/flash_hal_mock.cpp +++ b/tests/host/common/flash_hal_mock.cpp @@ -3,6 +3,8 @@ #include #include +#include "flash_hal.h" + extern "C" { uint32_t s_phys_addr = 0; diff --git a/tests/host/common/littlefs_mock.cpp b/tests/host/common/littlefs_mock.cpp index 0d99e82b1e..2093cb5a1a 100644 --- a/tests/host/common/littlefs_mock.cpp +++ b/tests/host/common/littlefs_mock.cpp @@ -32,7 +32,6 @@ #include #include #include -#include "flash_hal_mock.h" #define LITTLEFS_FILE_NAME "littlefs.bin" diff --git a/tests/host/common/littlefs_mock.h b/tests/host/common/littlefs_mock.h index 0905fa9322..b05cc8c615 100644 --- a/tests/host/common/littlefs_mock.h +++ b/tests/host/common/littlefs_mock.h @@ -23,7 +23,7 @@ #include #include #include -#include "flash_hal_mock.h" +#include "flash_hal.h" #define DEFAULT_LITTLEFS_FILE_NAME "littlefs.bin" diff --git a/tests/host/common/spiffs_mock.cpp b/tests/host/common/spiffs_mock.cpp index c7f9f53aba..59a0ff9c91 100644 --- a/tests/host/common/spiffs_mock.cpp +++ b/tests/host/common/spiffs_mock.cpp @@ -28,8 +28,6 @@ #include #include -#include "flash_hal_mock.h" - #define SPIFFS_FILE_NAME "spiffs.bin" #pragma GCC diagnostic push diff --git a/tests/host/common/spiffs_mock.h b/tests/host/common/spiffs_mock.h index 4c265964f5..7bbaf43ec5 100644 --- a/tests/host/common/spiffs_mock.h +++ b/tests/host/common/spiffs_mock.h @@ -20,7 +20,7 @@ #include #include #include -#include "flash_hal_mock.h" +#include "flash_hal.h" #define DEFAULT_SPIFFS_FILE_NAME "spiffs.bin" diff --git a/tools/boards.txt.py b/tools/boards.txt.py index a3f278fe6c..89efe7f6ca 100755 --- a/tools/boards.txt.py +++ b/tools/boards.txt.py @@ -792,15 +792,15 @@ ( '.menu.BoardModel.primo', 'Primo' ), ( '.menu.BoardModel.primo.build.board', 'ESP8266_ARDUINO_PRIMO' ), ( '.menu.BoardModel.primo.build.variant', 'arduino_spi' ), - ( '.menu.BoardModel.primo.build.extra_flags', '-DF_CRYSTAL=40000000 -DESP8266' ), + ( '.menu.BoardModel.primo.build.extra_flags', '-DF_CRYSTAL=40000000' ), ( '.menu.BoardModel.unowifideved', 'Uno WiFi' ), ( '.menu.BoardModel.unowifideved.build.board', 'ESP8266_ARDUINO_UNOWIFI' ), ( '.menu.BoardModel.unowifideved.build.variant', 'arduino_uart' ), - ( '.menu.BoardModel.unowifideved.build.extra_flags=-DF_CRYSTAL', '40000000 -DESP8266' ), + ( '.menu.BoardModel.unowifideved.build.extra_flags=-DF_CRYSTAL', '40000000' ), ( '.menu.BoardModel.starottodeved', 'Star OTTO' ), ( '.menu.BoardModel.starottodeved.build.variant', 'arduino_uart' ), ( '.menu.BoardModel.starottodeved.build.board', 'ESP8266_ARDUINO_STAR_OTTO' ), - ( '.menu.BoardModel.starottodeved.build.extra_flags', '-DF_CRYSTAL=40000000 -DESP8266' ), + ( '.menu.BoardModel.starottodeved.build.extra_flags', '-DF_CRYSTAL=40000000' ), ]), 'macro': [ 'resetmethod_ck', @@ -949,7 +949,6 @@ 'opts': { '.build.board': 'ESP8266_SONOFF_SV', '.build.variant': 'itead', - '.build.extra_flags': '-DESP8266', '.build.flash_size': '1M', '.menu.BoardModel.sonoffSV': 'ITEAD Sonoff SV', '.menu.BoardModel.sonoffSV.build.board': 'ESP8266_SONOFF_SV', @@ -1072,7 +1071,7 @@ 'crystalfreq_menu': collections.OrderedDict([ ( '.menu.CrystalFreq.26', '26 MHz' ), ( '.menu.CrystalFreq.40', '40 MHz' ), - ( '.menu.CrystalFreq.40.build.extra_flags', '-DF_CRYSTAL=40000000 -DESP8266' ), + ( '.menu.CrystalFreq.40.build.extra_flags', '-DF_CRYSTAL=40000000' ), ]), 'flashfreq_menu': collections.OrderedDict([ @@ -1372,7 +1371,7 @@ def all_debug (): ################################################################ # flash size -def flash_map (flashsize_kb, fs_kb = 0): +def flash_map (flashsize_kb, fs_kb = 0, conf_name = ''): # mapping: # flash | reserved | empty | spiffs | eeprom | rf-cal | sdk-wifi-settings @@ -1403,7 +1402,7 @@ def flash_map (flashsize_kb, fs_kb = 0): fs_blocksize = 8192 # Adjust FS_end to be a multiple of the block size - fs_end = fs_blocksize * (int)((fs_end - fs_start)/fs_blocksize) + fs_start; + fs_end = fs_blocksize * (int)((fs_end - fs_start)/fs_blocksize) + fs_start max_ota_size = min(max_upload_size, fs_start / 2) # =(max_upload_size+empty_size)/2 strsize = str(int(flashsize_kb / 1024)) + 'M' if (flashsize_kb >= 1024) else str(flashsize_kb) + 'K' @@ -1417,12 +1416,13 @@ def flash_map (flashsize_kb, fs_kb = 0): d = collections.OrderedDict([ ( menu, strsize + 'B (FS:' + desc + ' OTA:~%iKB)' % (max_ota_size / 1024)), ( menub + 'flash_size', strsize ), - ( menub + 'flash_size_bytes', "0x%X" % (flashsize_kb * 1024)), + #( menub + 'flash_size_bytes', "0x%X" % (flashsize_kb * 1024)), ( menub + 'flash_ld', ld ), ( menub + 'spiffs_pagesize', '256' ), - ( menu + '.upload.maximum_size', "%i" % max_upload_size ), + #( menu + '.upload.maximum_size', "%i" % max_upload_size ), ( menub + 'rfcal_addr', "0x%X" % rfcal_addr) ]) + if fs_kb > 0: d.update(collections.OrderedDict([ ( menub + 'spiffs_start', "0x%05X" % fs_start ), @@ -1430,6 +1430,10 @@ def flash_map (flashsize_kb, fs_kb = 0): ( menub + 'spiffs_blocksize', "%i" % fs_blocksize ), ])) + #d.update(collections.OrderedDict([ + # ( menub + 'eeprom_start', "0x%05X" % eeprom_start ), + # ])) + if ldshow: if ldgen: @@ -1450,6 +1454,16 @@ def flash_map (flashsize_kb, fs_kb = 0): else: page = 0x100 + if not conf_name == '': + if not conf_name in c_flash_map: + c_flash_map[conf_name] = collections.OrderedDict([]) + c_flash_map[conf_name][flashsize_kb] = \ + '.eeprom_start = ' + hex(spi + eeprom_start) + ', ' \ + + '.fs_start = ' + hex(spi + fs_start) + ', ' \ + + '.fs_end = ' + hex(spi + fs_end) + ', ' \ + + '.fs_block_size = ' + hex(fs_blocksize)+ ', ' \ + + '.fs_page_size = ' + hex(page) + ', ' \ + print("/* Flash Split for %s chips */" % strsize) print("/* sketch @0x%X (~%dKB) (%dB) */" % (spi, (max_upload_size / 1024), max_upload_size)) empty_size = fs_start - max_upload_size @@ -1469,15 +1483,15 @@ def flash_map (flashsize_kb, fs_kb = 0): print(" irom0_0_seg : org = 0x40201010, len = 0x%x" % max_upload_size) print("}") print("") - print("PROVIDE ( _FS_start = 0x%08X );" % (0x40200000 + fs_start)) - print("PROVIDE ( _FS_end = 0x%08X );" % (0x40200000 + fs_end)) + print("PROVIDE ( _FS_start = 0x%08X );" % (spi + fs_start)) + print("PROVIDE ( _FS_end = 0x%08X );" % (spi + fs_end)) print("PROVIDE ( _FS_page = 0x%X );" % page) print("PROVIDE ( _FS_block = 0x%X );" % fs_blocksize) - print("PROVIDE ( _EEPROM_start = 0x%08x );" % (0x40200000 + eeprom_start)) + print("PROVIDE ( _EEPROM_start = 0x%08x );" % (spi + eeprom_start)) # Re-add deprecated symbols pointing to the same address as the new standard ones print("/* The following symbols are DEPRECATED and will be REMOVED in a future release */") - print("PROVIDE ( _SPIFFS_start = 0x%08X );" % (0x40200000 + fs_start)) - print("PROVIDE ( _SPIFFS_end = 0x%08X );" % (0x40200000 + fs_end)) + print("PROVIDE ( _SPIFFS_start = 0x%08X );" % (spi + fs_start)) + print("PROVIDE ( _SPIFFS_end = 0x%08X );" % (spi + fs_end)) print("PROVIDE ( _SPIFFS_page = 0x%X );" % page) print("PROVIDE ( _SPIFFS_block = 0x%X );" % fs_blocksize) print("") @@ -1498,44 +1512,101 @@ def all_flash_map (): f8m = collections.OrderedDict([]) f16m = collections.OrderedDict([]) - # flash(KB) spiffs(KB) + global c_flash_map + c_flash_map = collections.OrderedDict([]) + + # flash(KB) spiffs(KB) confname(C) - f1m.update( flash_map( 1024, 64 )) + f1m.update( flash_map( 1024, 64, 'OTA_FS' )) f1m.update( flash_map( 1024, 128 )) f1m.update( flash_map( 1024, 144 )) f1m.update( flash_map( 1024, 160 )) f1m.update( flash_map( 1024, 192 )) f1m.update( flash_map( 1024, 256 )) - f1m.update( flash_map( 1024, 512 )) - f1m.update( flash_map( 1024)) + f1m.update( flash_map( 1024, 512, 'MAX_FS' )) + f1m.update( flash_map( 1024, 0, 'NO_FS' )) f2m.update( flash_map( 2*1024, 64 )) f2m.update( flash_map( 2*1024, 128 )) - f2m.update( flash_map( 2*1024, 256 )) + f2m.update( flash_map( 2*1024, 256, 'OTA_FS' )) f2m.update( flash_map( 2*1024, 512 )) - f2m.update( flash_map( 2*1024, 1024 )) - f2m.update( flash_map( 2*1024)) + f2m.update( flash_map( 2*1024, 1024, 'MAX_FS' )) + f2m.update( flash_map( 2*1024, 0, 'NO_FS' )) - f4m.update( flash_map( 4*1024, 2*1024 )) - f4m.update( flash_map( 4*1024, 3*1024 )) + f4m.update( flash_map( 4*1024, 2*1024, 'OTA_FS' )) + f4m.update( flash_map( 4*1024, 3*1024, 'MAX_FS' )) f4m.update( flash_map( 4*1024, 1024 )) - f4m.update( flash_map( 4*1024)) + f4m.update( flash_map( 4*1024, 0, 'NO_FS' )) - f8m.update( flash_map( 8*1024, 6*1024 )) - f8m.update( flash_map( 8*1024, 7*1024 )) + f8m.update( flash_map( 8*1024, 6*1024, 'OTA_FS' )) + f8m.update( flash_map( 8*1024, 7*1024, 'MAX_FS' )) + f8m.update( flash_map( 8*1024, 0, 'NO_FS' )) - f16m.update(flash_map( 16*1024, 14*1024 )) - f16m.update(flash_map( 16*1024, 15*1024 )) + f16m.update(flash_map( 16*1024, 14*1024, 'OTA_FS' )) + f16m.update(flash_map( 16*1024, 15*1024, 'MAX_FS' )) + f16m.update(flash_map( 16*1024, 0, 'NO_FS' )) - f512.update(flash_map( 512, 32 )) + f512.update(flash_map( 512, 32, 'OTA_FS' )) f512.update(flash_map( 512, 64 )) - f512.update(flash_map( 512, 128 )) - f512.update(flash_map( 512)) + f512.update(flash_map( 512, 128, 'MAX_FS' )) + f512.update(flash_map( 512, 0, 'NO_FS' )) if ldgen: print("generated: ldscripts (in %s)" % lddir) + if ldshow: + if ldgen: + realstdout = sys.stdout + sys.stdout = open('cores/esp8266/FlashMap.h', 'w') + + define = '\n' + define += '// - do not edit - autogenerated by boards.txt.py\n' + define += '\n' + define += '#ifndef __FLASH_MAP_H\n' + define += '#define __FLASH_MAP_H\n' + define += '\n' + define += '#include \n' + define += '#include \n' + define += '\n' + define += 'typedef struct\n' + define += '{\n' + define += ' uint32_t eeprom_start;\n' + define += ' uint32_t fs_start;\n' + define += ' uint32_t fs_end;\n' + define += ' uint32_t fs_block_size;\n' + define += ' uint32_t fs_page_size;\n' + define += ' uint32_t flash_size_kb;\n' + define += '} flash_map_s;\n' + define += '\n' + define += '/*\n' + define += ' Following definitions map the above structure, one per line.\n' + define += ' FLASH_MAP_* is a user choice in sketch:\n' + define += ' `FLASH_MAP_SETUP_CONFIG(FLASH_MAP_OTA_FS)`\n' + define += ' Configuration is made at boot with detected flash chip size (last argument 512..16384)\n' + define += ' Other values are defined from `tools/boards.txt.py`.\n' + define += '*/\n' + for i in c_flash_map: + define += '\n#define FLASH_MAP_' + i + ' \\\n { \\\n' + for d in c_flash_map[i]: + define += ' { ' + c_flash_map[i][d] + '.flash_size_kb = ' + str(d) + ' }, \\\n' + define += ' }\n' + define += '\n#endif // __FLASH_MAP_H\n' + + print(define) + + if ldgen: + sys.stdout.close() + sys.stdout = realstdout + print("generated: flash map config file (in cores/esp8266/FlashMap.h)") + return { + 'autoflash': { + '.menu.eesz.autoflash': 'Mapping defined by Hardware and Sketch', + '.menu.eesz.autoflash.build.flash_size': '16M', + '.menu.eesz.autoflash.build.flash_ld': 'eagle.flash.auto.ld', + '.menu.eesz.autoflash.build.extra_flags': '-DFLASH_MAP_SUPPORT=1', + '.menu.eesz.autoflash.upload.maximum_size': '1044464', + }, '512K': f512, '1M': f1m, '2M': f2m, @@ -1551,7 +1622,7 @@ def led (name, default, ledList): led = collections.OrderedDict([ ('.menu.led.' + str(default), str(default)), ('.menu.led.' + str(default) + '.build.led', '-DLED_BUILTIN=' + str(default)), - ]); + ]) for i in ledList: # Make range incluside of max (16), since there are really 16 GPIOS not 15 if not i == default: led.update( @@ -1666,7 +1737,7 @@ def all_boards (): sortedrequiredfirst = requiredboards + [ item for item in boardlistsortedbydisplayedname if item not in requiredboards ] for id in sortedrequiredfirst: if id not in boards: - missingboards += [ id ]; + missingboards += [ id ] continue print('##############################################################') @@ -1692,6 +1763,8 @@ def all_boards (): else: macrolist += speeds[default_speed] + macrolist += [ 'autoflash' ] + for block in macrolist: for optname in macros[block]: if not ('opts' in board) or not (optname in board['opts']): diff --git a/tools/sdk/ld/eagle.flash.auto.ld b/tools/sdk/ld/eagle.flash.auto.ld new file mode 100644 index 0000000000..8c6d3b1060 --- /dev/null +++ b/tools/sdk/ld/eagle.flash.auto.ld @@ -0,0 +1,11 @@ +/* Flash Split */ +/* sketch @0x40200000 (~1019KB) (1044464B) = MAX */ + +MEMORY +{ + dport0_0_seg : org = 0x3FF00000, len = 0x10 + dram0_0_seg : org = 0x3FFE8000, len = 0x14000 + irom0_0_seg : org = 0x40201010, len = 0xfeff0 +} + +INCLUDE "local.eagle.app.v6.common.ld"