mirror of
https://github.com/letscontrolit/ESPEasy.git
synced 2026-07-27 19:57:38 +00:00
236 lines
12 KiB
INI
236 lines
12 KiB
INI
; *********************************************************************
|
|
|
|
; **** Definition cheat sheet:
|
|
; board_build.flash_mode in terms of performance: QIO > QOUT > DIO > DOUT
|
|
; for lib_ldf_mode, see http://docs.platformio.org/en/latest/librarymanager/ldf.html;ldf
|
|
|
|
; **** Frequently used build flags:
|
|
; Use custom.h file to override default settings for ESPeasy: -D USE_CUSTOM_H
|
|
; Set VCC mode to measure Vcc of ESP chip : -D FEATURE_ADC_VCC=1
|
|
|
|
; Build Flags:
|
|
; -DUSE_CONFIG_OVERRIDE
|
|
; lwIP 1.4 (Default)
|
|
; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH
|
|
; lwIP 2 - Low Memory
|
|
; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY
|
|
; lwIP 2 - Higher Bandwitdh
|
|
; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH
|
|
; VTABLES in Flash (default)
|
|
; -DVTABLES_IN_FLASH
|
|
; VTABLES in Heap
|
|
; -DVTABLES_IN_DRAM
|
|
; VTABLES in IRAM
|
|
; -DVTABLES_IN_IRAM
|
|
; NO_EXTRA_4K_HEAP - this forces the default NONOS-SDK user's heap location
|
|
; Default currently overlaps cont stack (Arduino) with sys stack (System)
|
|
; to save up-to 4 kB of heap. (starting core_2.4.2)
|
|
; ESP8266_DISABLE_EXTRA4K - Calls disable_extra4k_at_link_time() from setup
|
|
; to force the linker keep user's stack in user ram.
|
|
; CONT_STACKSIZE to set the 'cont' (Arduino) stack size. Default = 4096
|
|
; -mtarget-align see: https://github.com/arendst/Sonoff-Tasmota/issues/3678#issuecomment-419712437
|
|
|
|
[esp82xx_defaults]
|
|
build_flags = -D NDEBUG
|
|
-lstdc++ -lsupc++
|
|
-mtarget-align
|
|
-DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY
|
|
-DVTABLES_IN_FLASH
|
|
-DPUYA_SUPPORT=1
|
|
-DDISABLE_SC16IS752_SPI
|
|
-DCRON_USE_LOCAL_TIME
|
|
-fno-strict-aliasing
|
|
-I$PROJECT_DIR/src/include
|
|
-include "ESPEasy_config.h"
|
|
|
|
lib_ignore = ESP32_ping
|
|
ESP32WebServer
|
|
ESP32HTTPUpdateServer
|
|
ServoESP32
|
|
IRremoteESP8266
|
|
HeatpumpIR
|
|
TinyWireM
|
|
ESP8266SdFat
|
|
SD(esp8266)
|
|
SD
|
|
SDFS
|
|
LittleFS(esp8266)
|
|
LittleFS
|
|
ArduinoOTA
|
|
ESP8266mDNS
|
|
I2C AXP192 Power management
|
|
; EspSoftwareSerial
|
|
|
|
|
|
|
|
; Keep optimization flag to -O2
|
|
; See: https://github.com/platformio/platform-espressif8266/issues/288
|
|
; For "-fno-strict-aliasing"
|
|
; See: https://github.com/esp8266/Arduino/issues/8261
|
|
[esp82xx_2_7_x]
|
|
build_flags = -DNDEBUG
|
|
-mtarget-align
|
|
-DVTABLES_IN_FLASH
|
|
-fno-exceptions
|
|
-lstdc++
|
|
-DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH
|
|
-DPUYA_SUPPORT=1
|
|
-DCORE_POST_2_5_0
|
|
-DDISABLE_SC16IS752_SPI
|
|
-DCRON_USE_LOCAL_TIME
|
|
-fno-strict-aliasing
|
|
-DLIBRARIES_NO_LOG=1
|
|
-DNO_GLOBAL_I2S
|
|
-I$PROJECT_DIR/src/include
|
|
-include "ESPEasy_config.h"
|
|
-O2
|
|
-s
|
|
-DBEARSSL_SSL_BASIC
|
|
-DCORE_POST_2_6_0
|
|
; remove the 4-bytes alignment for PSTR()
|
|
-DPSTR_ALIGN=1
|
|
-Werror=return-type
|
|
build_unflags = ${esp82xx_common.build_unflags}
|
|
lib_ignore = ${esp82xx_defaults.lib_ignore}
|
|
EspSoftwareSerial
|
|
|
|
|
|
[esp82xx_3_0_x]
|
|
build_flags = ${esp82xx_2_7_x.build_flags}
|
|
-DCORE_POST_3_0_0
|
|
-Wno-deprecated-declarations
|
|
; -flto=auto
|
|
; -Wl,-flto
|
|
build_unflags = -DDEBUG_ESP_PORT
|
|
-fexceptions
|
|
-Wall
|
|
; -fno-lto
|
|
lib_ignore = ${esp82xx_defaults.lib_ignore}
|
|
extra_scripts = pre:tools/pio/pre_custom_esp8266_toolchain.py
|
|
|
|
|
|
|
|
; See for SDK flags: https://github.com/esp8266/Arduino/blob/master/tools/platformio-build.py
|
|
|
|
[core_2_7_4]
|
|
extends = esp82xx_2_7_x
|
|
platform = espressif8266@2.6.3
|
|
platform_packages =
|
|
framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git#2.7.4
|
|
build_flags = ${esp82xx_2_7_x.build_flags}
|
|
-DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703
|
|
-DUSES_LATEST_SOFTWARE_SERIAL_LIBRARY=0
|
|
-Wno-deprecated-declarations
|
|
-DLIBRARIES_NO_LOG=1
|
|
lib_ignore = ${esp82xx_2_7_x.lib_ignore}
|
|
build_unflags = ${esp82xx_2_7_x.build_unflags}
|
|
extra_scripts = ${esp82xx_common.extra_scripts}
|
|
|
|
|
|
[core_stage]
|
|
extends = esp82xx_3_0_x
|
|
platform = espressif8266@4.2.1
|
|
platform_packages =
|
|
build_flags = ${esp82xx_3_0_x.build_flags}
|
|
-DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3
|
|
-DUSES_LATEST_SOFTWARE_SERIAL_LIBRARY=1
|
|
-DLIBRARIES_NO_LOG=1
|
|
-DPHASE_LOCKED_WAVEFORM
|
|
build_unflags = ${esp82xx_3_0_x.build_unflags}
|
|
lib_ignore = ${esp82xx_defaults.lib_ignore}
|
|
extra_scripts = ${esp82xx_common.extra_scripts}
|
|
|
|
|
|
|
|
; See: https://arduino-esp8266.readthedocs.io/en/latest/mmu.html
|
|
[core_stage_2ndheap]
|
|
extends = esp82xx_3_0_x
|
|
platform = espressif8266@4.2.1
|
|
platform_packages =
|
|
build_flags = ${esp82xx_3_0_x.build_flags}
|
|
-DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3
|
|
-DUSES_LATEST_SOFTWARE_SERIAL_LIBRARY=1
|
|
-DLIBRARIES_NO_LOG=1
|
|
-DPHASE_LOCKED_WAVEFORM
|
|
-DPIO_FRAMEWORK_ARDUINO_MMU_CACHE16_IRAM48_SECHEAP_SHARED
|
|
-DUSE_SECOND_HEAP
|
|
build_unflags = ${esp82xx_3_0_x.build_unflags}
|
|
lib_ignore = ${core_stage.lib_ignore}
|
|
extra_scripts = ${esp82xx_common.extra_scripts}
|
|
|
|
|
|
|
|
; Updated ESP-IDF to the latest stable 4.0.1
|
|
; See: https://github.com/platformio/platform-espressif32/releases
|
|
; IDF 4.4 = platform-espressif32 3.4.x = espressif/arduino-esp32 tag 2.0.4
|
|
; Just for those who lost track of the extremely confusing numbering schema.
|
|
; For MUSTFIX_CLIENT_TIMEOUT_IN_SECONDS See: https://github.com/espressif/arduino-esp32/pull/6676
|
|
[core_esp32_IDF4_4__2_0_14]
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.4.1/platform-espressif32-2.0.4.1.zip
|
|
|
|
; debug boot log enabled
|
|
; See: https://github.com/letscontrolit/ESPEasy/pull/4200#issuecomment-1216929859
|
|
;platform = https://github.com/Jason2866/platform-espressif32.git
|
|
;platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/936/framework-arduinoespressif32-443_esp421-9ce849ce72.tar.gz
|
|
|
|
; debug boot log disabled
|
|
;platform = https://github.com/Jason2866/platform-espressif32.git
|
|
;platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/938/framework-arduinoespressif32-443_esp421-10ab11e815.tar.gz
|
|
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.5.2/platform-espressif32-2.0.5.2.zip
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2022.12.2/platform-espressif32.zip
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.01.01/platform-espressif32.zip
|
|
;platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1212/framework-arduinoespressif32-release_v4.4-fb9a7685e1.zip
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.01.02/platform-espressif32.zip
|
|
;platform_packages =
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.02.00/platform-espressif32.zip
|
|
;platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1243/framework-arduinoespressif32-lwip_timeout-ed6742e7f0.zip
|
|
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.05.03/platform-espressif32.zip
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.06.04/platform-espressif32.zip
|
|
platform = https://github.com/tasmota/platform-espressif32/releases/download/2023.10.03/platform-espressif32.zip
|
|
platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/1645/framework-arduinoespressif32-release_v4.4_spiffs-e3fc63b439.zip
|
|
build_flags = -DESP32_STAGE
|
|
-DESP_IDF_VERSION_MAJOR=4
|
|
-DMUSTFIX_CLIENT_TIMEOUT_IN_SECONDS
|
|
-DLIBRARIES_NO_LOG=1
|
|
-DDISABLE_SC16IS752_SPI
|
|
-DCONFIG_PM_ENABLE
|
|
-DCONFIG_FREERTOS_USE_TICKLESS_IDLE=1
|
|
-DCONFIG_FREERTOS_IDLE_TIME_BEFORE_SLEEP=3
|
|
-DNEOPIXEL_ESP32_RMT_DEFAULT
|
|
-DCRON_USE_LOCAL_TIME
|
|
-I$PROJECT_DIR/src/include
|
|
-include "sdkconfig.h"
|
|
-include "ESPEasy_config.h"
|
|
-include "esp32x_fixes.h"
|
|
-Wnull-dereference
|
|
lib_ignore =
|
|
|
|
; ESP_IDF 5.1
|
|
[core_esp32_IDF5_1__3_0_0]
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2024.04.11/platform-espressif32.zip
|
|
;platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/2286/framework-arduinoespressif32-all-release_v5.1-11140aa.zip
|
|
;platform = https://github.com/tasmota/platform-espressif32/releases/download/2024.04.14/platform-espressif32.zip
|
|
;platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/2386/framework-arduinoespressif32-all-release_v5.1-324fdc1.zip
|
|
platform = https://github.com/tasmota/platform-espressif32/releases/download/2024.07.10/platform-espressif32.zip
|
|
platform_packages =
|
|
build_flags = -DESP32_STAGE
|
|
-DESP_IDF_VERSION_MAJOR=5
|
|
-DLIBRARIES_NO_LOG=1
|
|
-DDISABLE_SC16IS752_SPI
|
|
-DCONFIG_PM_ENABLE
|
|
; -DCONFIG_LWIP_L2_TO_L3_COPY
|
|
; -DETH_SPI_SUPPORTS_NO_IRQ=1
|
|
-DCONFIG_FREERTOS_USE_TICKLESS_IDLE=1
|
|
-DCONFIG_FREERTOS_IDLE_TIME_BEFORE_SLEEP=3
|
|
-DNEOPIXEL_ESP32_RMT_DEFAULT
|
|
-DCRON_USE_LOCAL_TIME
|
|
-I$PROJECT_DIR/src/include
|
|
-include "sdkconfig.h"
|
|
-include "ESPEasy_config.h"
|
|
-include "esp32x_fixes.h"
|
|
-Wnull-dereference
|
|
lib_ignore =
|
|
|