Files
ESPEasy/platformio.ini
T
Gijs Noorlander 760765efb1 [Build] Fix use of flag BUILD_NO_DEBUG
The check in the code was for #ifndef BUILD_NO_DEBUG.
But even when it is defined as 0, it is still defined.
So the code was still included in the binary.
2019-09-26 13:42:00 +02:00

1105 lines
44 KiB
INI

;
; PlatformIO Project Configuration File
;
; Please make sure to read documentation with examples first
; http://docs.platformio.org/en/stable/projectconf.html
;
; *********************************************************************;
; You can uncomment or add here Your favorite environment you want to work on at the moment
; (uncomment only one !)
; *********************************************************************;
[platformio]
;env_default = esp32dev
;env_default = dev_ESP8266_4096
;env_default = normal_ESP8266_1024
;env_default = normal_ESP8266_4096
; ..etc
;minimal version for esps with 512K or less flash (only has minimal plugin set)
; [env:mini_512]
; platform = ${common.platform}
;
; board = esp01
;
; build_flags = !echo -Wl,-Tesp8266.flash.512k64.ld -D BUILD_GIT=\'\"$(git describe)\"\'
; ; upload_port = /dev/ttyUSB0
; add these:
; -Werror -Wall -Wextra -pedantic -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op
; -Wmissing-include-dirs -Wnoexcept -Wold-style-cast -Woverloaded-virtual -Wredundant-decls -Wshadow -Wsign-promo -Wstrict-null-sentinel
; -Wstrict-overflow=5 -Wundef -Wno-unused -Wno-variadic-macros -Wno-parentheses -fdiagnostics-show-option
; thanks @chouffe103
[compiler_warnings]
build_flags =
-Wall -Wno-parentheses -fdiagnostics-show-option
[minimal_size]
build_flags =
-Os
-ffunction-sections
-fdata-sections
-Wl,--gc-sections
-s
[espota]
upload_protocol = espota
; each flag in a new line
; Do not use port 8266 for OTA, since that's used for ESPeasy p2p
upload_flags =
--port=18266
build_flags = -DFEATURE_ARDUINO_OTA
; *********************************************************************
; **** 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=true
; 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 BUILD_GIT='"${sysenv.TRAVIS_TAG}"'
-D NDEBUG
-lstdc++ -lsupc++
-mtarget-align
-DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY
-DVTABLES_IN_FLASH
-DPUYA_SUPPORT=1
[esp82xx_2_5_x]
build_flags = -D BUILD_GIT='"${sysenv.TRAVIS_TAG}"'
-DNDEBUG
-mtarget-align
-DVTABLES_IN_FLASH
-fno-exceptions
-lstdc++
-DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH
-DPUYA_SUPPORT=1
-DCORE_POST_2_5_0
[esp82xx_2_6_x]
build_flags = ${esp82xx_2_5_x.build_flags}
-O2
-DBEARSSL_SSL_BASIC
-DCORE_POST_2_6_0
[core_2_3_0]
platform = https://github.com/TD-er/platform-espressif8266.git#patch/v1.5.0_Puya
build_flags = -D BUILD_GIT='"${sysenv.TRAVIS_TAG}"'
-DNDEBUG
-DVTABLES_IN_FLASH
-fno-exceptions
-DPUYA_SUPPORT=1
-DARDUINO_ESP8266_RELEASE_2_3_0
-DFORCE_PRE_2_5_0
lib_ignore = ESP32_ping, ESP32WebServer, IRremoteESP8266, HeatpumpIR
[core_2_4_0]
platform = https://github.com/TD-er/platform-espressif8266.git#patch/v1.6.0_Puya
build_flags = ${esp82xx_defaults.build_flags} -DARDUINO_ESP8266_RELEASE_2_4_0 -DFORCE_PRE_2_5_0
lib_ignore = ESP32_ping, ESP32WebServer, IRremoteESP8266, HeatpumpIR
[core_2_4_1]
platform = https://github.com/TD-er/platform-espressif8266.git#patch/v1.7.3_Puya
build_flags = ${esp82xx_defaults.build_flags} -DARDUINO_ESP8266_RELEASE_2_4_1 -DFORCE_PRE_2_5_0
lib_ignore = ESP32_ping, ESP32WebServer, IRremoteESP8266, HeatpumpIR
[core_2_4_2]
platform = https://github.com/TD-er/platform-espressif8266.git#patch/v1.8.0_Puya
build_flags = ${esp82xx_defaults.build_flags} -DARDUINO_ESP8266_RELEASE_2_4_2 -DFORCE_PRE_2_5_0
lib_ignore = ESP32_ping, ESP32WebServer, IRremoteESP8266, HeatpumpIR
[core_2_5_0]
platform = espressif8266@2.0.4
build_flags = ${esp82xx_2_5_x.build_flags}
[core_2_5_2]
platform = espressif8266@2.2.3
build_flags = ${esp82xx_2_5_x.build_flags}
[core_2_6_0]
platform = https://github.com/Jason2866/platform-espressif8266.git#Tasmota
build_flags = ${esp82xx_2_6_x.build_flags}
[core_stage]
platform = https://github.com/platformio/platform-espressif8266.git#feature/stage
build_flags = ${esp82xx_2_6_x.build_flags}
[core_esp32_0_12_0]
platform = espressif32@0.12.0
lib_deps = "ESP32WebServer"
[core_esp32_1_2_0]
platform = espressif32@1.2.0
[core_esp32_1_3_0]
platform = espressif32@1.3.0
[core_esp32_1_4_0]
platform = espressif32@1.4.0
[core_esp32_1_5_0]
platform = espressif32@1.5.0
[core_esp32_1_6_0]
platform = espressif32@1.6.0
[core_esp32_1_7_0]
platform = espressif32@1.7.0
[core_esp32_1_8_0]
platform = espressif32@1.8.0
[core_esp32_1_9_0]
platform = espressif32@1.9.0
[core_esp32_1_10_0]
platform = espressif32@1.10.0
[core_esp32_stage]
platform = https://github.com/platformio/platform-espressif32.git#feature/stage
[core_esp32]
platform = ${core_esp32_1_10_0.platform}
build_unflags = -Wall
build_flags = -D BUILD_GIT='"${sysenv.TRAVIS_TAG}"'
-DCONFIG_FREERTOS_ASSERT_DISABLE
-DCONFIG_LWIP_ESP_GRATUITOUS_ARP
-DCONFIG_LWIP_GARP_TMR_INTERVAL=30
lib_ignore = AS_BH1750, ESP8266WiFi, ESP8266Ping, ESP8266WebServer, ESP8266HTTPUpdateServer, ESP8266mDNS, IRremoteESP8266, ESPEasy_ESP8266Ping, ESP32_ping, HeatpumpIR
lib_deps = https://github.com/TD-er/ESPEasySerial.git
monitor_speed = 115200
[debug_flags]
build_flags =
[mqtt_flags]
build_flags = -DMQTT_MAX_PACKET_SIZE=1024
[common]
board_build.f_cpu = 80000000L
build_flags = ${debug_flags.build_flags} ${mqtt_flags.build_flags} -DHTTPCLIENT_1_1_COMPATIBLE=0
build_unflags = -DDEBUG_ESP_PORT
lib_deps = https://github.com/TD-er/ESPEasySerial.git
lib_ignore = ESP32_ping, ESP32WebServer, IRremoteESP8266, HeatpumpIR
lib_ldf_mode = chain
lib_archive = false
upload_speed = 115200
framework = arduino
board = esp12e
monitor_speed = 115200
;targets = size, checkprogsize
targets =
[env]
framework = ${common.framework}
lib_ldf_mode = ${common.lib_ldf_mode}
lib_archive = ${common.lib_archive}
lib_deps = ${common.lib_deps}
lib_ignore = ${common.lib_ignore}
upload_speed = ${common.upload_speed}
monitor_speed = ${common.monitor_speed}
targets = ${common.targets}
[regular_platform]
build_unflags =
build_flags = ${core_2_5_2.build_flags} ${common.build_flags}
platform = ${core_2_5_2.platform}
[beta_platform]
build_unflags =
build_flags = ${core_stage.build_flags} ${common.build_flags} -DARDUINO_ESP8266_RELEASE='"2.6.0-dev"'
platform = ${core_stage.platform}
[normal]
platform = ${regular_platform.platform}
build_flags = ${regular_platform.build_flags}
[normal_240]
platform = ${core_2_4_0.platform}
build_flags = ${core_2_4_0.build_flags} ${common.build_flags}
lib_ignore = ${core_2_4_0.lib_ignore}
[normal_241]
platform = ${core_2_4_1.platform}
build_flags = ${core_2_4_1.build_flags} ${common.build_flags}
lib_ignore = ${core_2_4_1.lib_ignore}
[normal_242]
platform = ${core_2_4_2.platform}
build_flags = ${core_2_4_2.build_flags} ${common.build_flags}
lib_ignore = ${core_2_4_2.lib_ignore}
[normal_252]
platform = ${core_2_5_2.platform}
build_flags = ${core_2_5_2.build_flags} ${common.build_flags}
[normal_beta]
platform = ${beta_platform.platform}
build_flags = ${beta_platform.build_flags}
[normal_242_ota]
platform = ${core_2_4_2.platform}
build_flags = ${core_2_4_2.build_flags} -DPLUGIN_BUILD_MINIMAL_OTA
board_upload.maximum_size = 616448
[normal_252_ota]
platform = ${core_2_5_2.platform}
build_flags = ${core_2_5_2.build_flags} ${common.build_flags} -DPLUGIN_BUILD_MINIMAL_OTA
board_upload.maximum_size = ${normal_242_ota.board_upload.maximum_size}
[normal_beta_ota]
platform = ${beta_platform.platform}
build_flags = ${beta_platform.build_flags} -DPLUGIN_BUILD_MINIMAL_OTA
board_upload.maximum_size = ${normal_242_ota.board_upload.maximum_size}
[ir]
platform = ${regular_platform.platform}
build_flags = ${regular_platform.build_flags}
lib_ignore = ESP32_ping, ESP32WebServer
[minimal_ir]
platform = ${ir.platform}
build_flags = ${ir.build_flags} -DPLUGIN_BUILD_MINIMAL_IR
lib_ignore = ${ir.lib_ignore}
[minimal_ir_extended]
platform = ${ir.platform}
build_flags = ${ir.build_flags} -DPLUGIN_BUILD_MINIMAL_IRext
lib_ignore = ${ir.lib_ignore}
[normal_ir]
platform = ${ir.platform}
build_flags = ${ir.build_flags} -DPLUGIN_BUILD_NORMAL_IR
lib_ignore = ${ir.lib_ignore}
[normal_ir_extended]
platform = ${ir.platform}
build_flags = ${ir.build_flags} -DPLUGIN_BUILD_IR_EXTENDED
lib_ignore = ${ir.lib_ignore}
[normal_ir_extended_no_rx]
platform = ${ir.platform}
build_flags = ${ir.build_flags} -DPLUGIN_BUILD_IR_EXTENDED_NO_RX
lib_ignore = ${ir.lib_ignore}
[testing]
platform = ${regular_platform.platform}
build_flags = ${regular_platform.build_flags} -DPLUGIN_BUILD_TESTING
[testing_242]
platform = ${core_2_4_2.platform}
build_flags = ${core_2_4_2.build_flags} ${common.build_flags} -DPLUGIN_BUILD_TESTING
[testing_252]
platform = ${core_2_5_2.platform}
build_flags = ${core_2_5_2.build_flags} ${common.build_flags} -DPLUGIN_BUILD_TESTING
[testing_beta]
platform = ${beta_platform.platform}
build_flags = ${beta_platform.build_flags} -DPLUGIN_BUILD_TESTING
[dev]
platform = ${beta_platform.platform}
build_flags = ${beta_platform.build_flags} -DPLUGIN_BUILD_DEV
[esp8266_1M]
board = esp01_1m
board_build.flash_mode = dout
board_build.f_cpu = ${common.board_build.f_cpu}
board_upload.maximum_size = 786432
build_unflags = ${regular_platform.build_unflags}
build_flags = -Wl,-Tesp8266.flash.1m128.ld -DSIZE_1M -DBUILD_NO_DEBUG
[esp8285_1M]
board = esp8285
board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
build_unflags = ${esp8266_1M.build_unflags}
build_flags = ${esp8266_1M.build_flags} -DESP8285
[esp8266_2M256]
board = esp12e
board_build.flash_mode = dio
board_build.f_cpu = ${common.board_build.f_cpu}
build_unflags = ${regular_platform.build_unflags}
build_flags = -Wl,-Tesp8266.flash.2m256.ld
[espWroom2M]
board_build.flash_mode = dout
board_build.f_cpu = ${common.board_build.f_cpu}
board_upload.maximum_size = 1044464
board = esp_wroom_02
build_unflags = ${common.build_unflags}
build_flags = -Wl,-Tesp8266.flash.2m.ld
[espWroom2M256]
board_build.flash_mode = dout
board_build.f_cpu = ${common.board_build.f_cpu}
board_upload.maximum_size = 1044464
board = esp_wroom_02
build_unflags = ${common.build_unflags}
build_flags = -Wl,-Tesp8266.flash.2m256.ld
[esp8266_4M1M]
board = esp12e
board_build.flash_mode = dio
board_upload.maximum_size = 1044464
board_build.f_cpu = ${common.board_build.f_cpu}
build_unflags = ${regular_platform.build_unflags}
build_flags = -Wl,-Tesp8266.flash.4m1m.ld
[esp8266_4M2M]
board = esp12e
board_build.flash_mode = dio
board_upload.maximum_size = 1044464
board_build.f_cpu = ${common.board_build.f_cpu}
build_unflags = ${regular_platform.build_unflags}
build_flags = -Wl,-Tesp8266.flash.4m2m.ld
; Configuration for the Wemos D1 mini pro (16M)
; This configuration can only be used with core versions 2.5.0 or newer.
; Performance of 14M SPIFFS is really slow.
; See https://github.com/esp8266/Arduino/issues/5932
[esp8266_16M]
board = esp12e
board_build.flash_mode = dio
board_upload.maximum_size = 1044464
board_build.f_cpu = ${common.board_build.f_cpu}
build_unflags = ${regular_platform.build_unflags}
build_flags = -Wl,-Tesp8266.flash.16m14m.ld -DSPIFFS_MAX_OPEN_FILES=20
; Custom: 4096k version --------------------------
[env:custom_ESP8266_4M1M]
platform = ${beta_platform.platform}
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
build_flags = ${esp8266_4M1M.build_flags} ${beta_platform.build_flags} -DPLUGIN_BUILD_CUSTOM
lib_ignore = ESP32_ping, ESP32WebServer
extra_scripts = pre:pre_extra_script.py
; Custom: 4096k version --------------------------
[env:custom_ESP32_1M8_partition]
platform = ${core_esp32.platform}
build_unflags = ${core_esp32.build_unflags}
build_flags = ${core_esp32.build_flags} -DPLUGIN_BUILD_CUSTOM
lib_deps = ${core_esp32.lib_deps}
lib_ignore = ${core_esp32.lib_ignore}
board = esp32dev
board_build.partitions = esp32_partition_app1810k_spiffs316k.csv
board_build.f_flash = 80000000L
board_build.flash_mode = dout
board_upload.maximum_size = 1900544
extra_scripts = pre:pre_custom_esp32.py
[env:esp32test_1M8_partition]
platform = ${core_esp32.platform}
build_unflags = ${core_esp32.build_unflags}
build_flags = ${core_esp32.build_flags} -DPLUGIN_SET_TEST_ESP32
lib_deps = ${core_esp32.lib_deps}
lib_ignore = ${core_esp32.lib_ignore}
board = esp32dev
board_build.partitions = esp32_partition_app1810k_spiffs316k.csv
board_build.f_flash = 80000000L
board_build.flash_mode = dout
board_upload.maximum_size = 1900544
; Special env for memory analysis
; This may generate builds which cannot be run, so do not upload to a node.
; Has the same lib_ignore as the IR builds, or else those cannot be built for testing
[env:memanalyze_ESP8266]
platform = ${normal_252.platform}
lib_ignore = ESP32_ping, ESP32WebServer
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
build_flags = ${esp8266_4M1M.build_flags} ${normal_252.build_flags} -DMEMORY_ANALYSIS -DPLUGIN_BUILD_CUSTOM -w -DUSE_NON_STANDARD_24_TASKS -DTASKS_MAX=24
extra_scripts = pre:pre_memanalyze.py
;;; ESP32 pre-alpha test build ; ****; ****; ****; ****; ****; ****; ****; ****; ****;;;;;
; Very limited build for ESP32, to start testing regular building for ESP32. ;
; Will probably not work, not tested and guaranteed to take a few hours time of some ;
; still trying to build the version without reading this warning. ;
; *********************************************************************
[env:esp-wrover-kit_test_1M8_partition]
platform = ${core_esp32.platform}
build_unflags = ${core_esp32.build_unflags}
build_flags = ${core_esp32.build_flags} -DPLUGIN_SET_TEST_ESP32
lib_deps = ${core_esp32.lib_deps}
lib_ignore = ${core_esp32.lib_ignore}
board = esp-wrover-kit
board_build.partitions = esp32_partition_app1810k_spiffs316k.csv
board_build.f_flash = 80000000L
board_build.flash_mode = dout
board_upload.maximum_size = 1900544
upload_protocol = ftdi
debug_tool = ftdi
debug_extra_cmds = break Misc.ino:3011
; 2018-02-17 TD-er
; Disabled for now, since it does no longer fit in the default sketch partition size
;[env:esp32dev]
;board = esp32dev
;platform = ${core_esp32_1_5_0.platform}
;build_unflags = ${core_esp32.build_unflags}
;build_flags = ${core_esp32.build_flags} -DPLUGIN_SET_GENERIC_ESP32
;lib_deps = ${core_esp32.lib_deps}
;lib_ignore = ${core_esp32.lib_ignore}
[env:esp32test_1M8_partition]
platform = ${core_esp32.platform}
build_unflags = ${core_esp32.build_unflags}
build_flags = ${core_esp32.build_flags} -DPLUGIN_SET_TEST_ESP32
lib_deps = ${core_esp32.lib_deps}
lib_ignore = ${core_esp32.lib_ignore}
board = esp32dev
board_build.partitions = esp32_partition_app1810k_spiffs316k.csv
board_build.f_flash = 80000000L
board_build.flash_mode = dout
board_upload.maximum_size = 1900544
;;; NORMAL (STABLE) ***************************************************
; normal version with stable plugins ;
; *********************************************************************
; NORMAL: 1024k version --------------------------
[env:normal_ESP8266_1M]
platform = ${normal.platform}
board = ${esp8266_1M.board}
board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_unflags = ${esp8266_1M.build_unflags}
build_flags = ${esp8266_1M.build_flags} ${normal.build_flags}
[env:normal_ESP8266_1M_VCC]
platform = ${normal.platform}
board = ${esp8266_1M.board}
board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_unflags = ${esp8266_1M.build_unflags}
build_flags = ${esp8266_1M.build_flags} ${normal.build_flags} -D FEATURE_ADC_VCC=true
; NORMAL: 1024k for esp8285 ----------------------
[env:normal_ESP8285_1M]
platform = ${normal.platform}
build_flags = ${esp8285_1M.build_flags} ${normal.build_flags}
board = ${esp8285_1M.board}
board_upload.maximum_size = ${esp8285_1M.board_upload.maximum_size}
board_build.f_cpu = ${esp8285_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
build_unflags = ${esp8285_1M.build_unflags}
[env:normal_core_241_ESP8266_1M]
platform = ${normal_241.platform}
build_flags = ${normal_241.build_flags} ${esp8266_1M.build_flags}
lib_ignore = ${normal_241.lib_ignore}
board = ${esp8266_1M.board}
board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_unflags = ${esp8266_1M.build_unflags}
;[env:normal_core_242_ESP8266_1M]
;platform = ${normal_242.platform}
;build_flags = ${normal_242.build_flags} ${esp8266_1M.build_flags}
;lib_ignore = ${normal_242.lib_ignore}
;board = ${esp8266_1M.board}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;build_unflags = ${esp8266_1M.build_unflags}
;[env:normal_core_252_ESP8266_1M]
;platform = ${normal_252.platform}
;build_flags = ${normal_252.build_flags} ${esp8266_1M.build_flags}
;board = ${esp8266_1M.board}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;build_unflags = ${esp8266_1M.build_unflags}
; NORMAL: 2048k WROOM02 version --------------------------
[env:normal_WROOM02_2M]
platform = ${normal.platform}
build_flags = ${espWroom2M.build_flags} ${normal.build_flags}
board = ${espWroom2M.board}
board_upload.maximum_size = ${espWroom2M.board_upload.maximum_size}
board_build.f_cpu = ${espWroom2M.board_build.f_cpu}
board_build.flash_mode = ${espWroom2M.board_build.flash_mode}
build_unflags = ${espWroom2M.build_unflags}
; NORMAL: 2048k WROOM02 version 256k SPIFFS --------------------------
[env:normal_core_252_WROOM02_2M256]
platform = ${normal_252.platform}
build_flags = ${espWroom2M256.build_flags} ${normal_252.build_flags}
board = ${espWroom2M256.board}
board_upload.maximum_size = ${espWroom2M256.board_upload.maximum_size}
board_build.f_cpu = ${espWroom2M256.board_build.f_cpu}
board_build.flash_mode = ${espWroom2M256.board_build.flash_mode}
build_unflags = ${espWroom2M256.build_unflags}
; NORMAL: 4096k version --------------------------
[env:normal_ESP8266_4M1M]
platform = ${normal.platform}
build_flags = ${esp8266_4M1M.build_flags} ${normal.build_flags}
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
;[env:normal_core_240_ESP8266_4M1M]
;platform = ${normal_240.platform}
;build_flags = ${normal_240.build_flags} ${esp8266_4M1M.build_flags}
;lib_ignore = ${normal_240.lib_ignore}
;board = ${esp8266_4M1M.board}
;board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
;build_unflags = ${esp8266_4M1M.build_unflags}
[env:normal_core_241_ESP8266_4M1M]
platform = ${normal_241.platform}
build_flags = ${normal_241.build_flags} ${esp8266_4M1M.build_flags}
lib_ignore = ${normal_241.lib_ignore}
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
;[env:normal_core_252_ESP8266_4M1M]
;platform = ${normal_252.platform}
;build_flags = ${normal_252.build_flags} ${esp8266_4M1M.build_flags}
;board = ${esp8266_4M1M.board}
;board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
;build_unflags = ${esp8266_4M1M.build_unflags}
[env:normal_core_252_ESP8266_16M]
platform = ${normal_252.platform}
build_flags = ${normal_252.build_flags} ${esp8266_16M.build_flags}
board = ${esp8266_16M.board}
board_build.f_cpu = ${esp8266_16M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_16M.board_build.flash_mode}
build_unflags = ${esp8266_16M.build_unflags}
[env:normal_core_260_sdk222_alpha_ESP8266_4M1M]
platform = ${testing_beta.platform}
build_flags = ${esp8266_4M1M.build_flags} ${normal_beta.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22y
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
[env:normal_core_260_sdk222_alpha_ESP8266_16M]
platform = ${testing_beta.platform}
build_flags = ${esp8266_16M.build_flags} ${normal_beta.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22y
board = ${esp8266_16M.board}
board_build.f_cpu = ${esp8266_16M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_16M.board_build.flash_mode}
build_unflags = ${esp8266_16M.build_unflags}
;;; Minimal ***********************************************************
; Minimal build size for OTA ;
; *********************************************************************
[env:minimal_core_242_ESP8266_1M_OTA]
platform = ${normal_242_ota.platform}
board_upload.maximum_size = ${normal_242_ota.board_upload.maximum_size}
board = ${esp8266_1M.board}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_unflags = ${esp8266_1M.build_unflags}
build_flags = ${esp8266_1M.build_flags} ${normal_242_ota.build_flags}
[env:minimal_core_242_ESP8285_1M_OTA]
platform = ${normal_242_ota.platform}
board_upload.maximum_size = ${normal_242_ota.board_upload.maximum_size}
board = ${esp8285_1M.board}
board_build.f_cpu = ${esp8285_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
build_unflags = ${esp8285_1M.build_unflags}
build_flags = ${esp8285_1M.build_flags} ${normal_242_ota.build_flags}
[env:minimal_core_252_ESP8266_1M_OTA]
platform = ${normal_252_ota.platform}
board_upload.maximum_size = ${normal_252_ota.board_upload.maximum_size}
board = ${esp8266_1M.board}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
build_unflags = ${esp8266_1M.build_unflags}
build_flags = ${esp8266_1M.build_flags} ${normal_252_ota.build_flags}
[env:minimal_core_252_ESP8285_1M_OTA]
platform = ${normal_252_ota.platform}
board_upload.maximum_size = ${normal_252_ota.board_upload.maximum_size}
board = ${esp8285_1M.board}
board_build.f_cpu = ${esp8285_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
build_unflags = ${esp8285_1M.build_unflags}
build_flags = ${esp8285_1M.build_flags} ${normal_252_ota.build_flags}
;;; IR ***********************************************************
; IR builds ;
; *********************************************************************
; Minimal IR: 1024k version --------------------------
; Build including IR libraries, including extended AC commands
; Minimal set of other plugins
[env:minimal_IRext_ESP8266_1M]
platform = ${minimal_ir_extended.platform}
lib_ignore = ${minimal_ir_extended.lib_ignore}
build_flags = ${minimal_ir_extended.build_flags} ${esp8266_1M.build_flags}
build_unflags = ${esp8266_1M.build_unflags} -DPLUGIN_BUILD_NORMAL_IR
board = ${esp8266_1M.board}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
; Minimal IR: 4096k version --------------------------
; Build including IR libraries, INCLUDING extended AC commands
; Includes Extended IR AC commands (takes a lot more program space)
[env:minimal_IRext_ESP8266_4M1M]
platform = ${minimal_ir_extended.platform}
lib_ignore = ${minimal_ir_extended.lib_ignore}
build_flags = ${minimal_ir_extended.build_flags} ${esp8266_4M1M.build_flags}
build_unflags = ${esp8266_4M1M.build_unflags}
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
[env:minimal_IRext_ESP8266_4M2M]
platform = ${minimal_ir_extended.platform}
lib_ignore = ${minimal_ir_extended.lib_ignore}
build_flags = ${minimal_ir_extended.build_flags} ${esp8266_4M2M.build_flags}
build_unflags = ${esp8266_4M2M.build_unflags}
board = ${esp8266_4M2M.board}
board_build.f_cpu = ${esp8266_4M2M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M2M.board_build.flash_mode}
; NORMAL IR: 4096k version --------------------------
; Build including IR libraries, INCLUDING extended AC commands
; Includes Extended IR AC commands (takes a lot more program space)
[env:normal_IRext_no_rx_ESP8266_4M2M]
platform = ${normal_ir_extended_no_rx.platform}
lib_ignore = ${normal_ir_extended_no_rx.lib_ignore}
build_flags = ${normal_ir_extended_no_rx.build_flags} ${esp8266_4M2M.build_flags}
build_unflags = ${esp8266_4M2M.build_unflags}
board = ${esp8266_4M2M.board}
board_build.f_cpu = ${esp8266_4M2M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M2M.board_build.flash_mode}
;
; TESTING *************************************************************
; additional plugins (and dependend code) that are in test-stadium
; *********************************************************************
; TEST: 1024k version ----------------------------
;[env:test_ESP8266_1M]
;platform = ${testing.platform}
;build_flags = ${esp8266_1M.build_flags} ${testing.build_flags}
;board = ${esp8266_1M.board}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;build_unflags = ${esp8266_1M.build_unflags}
;
; TEST: 1024k for esp8285 ------------------------
;[env:test_ESP8285_1M]
;platform = ${testing.platform}
;build_flags = ${esp8285_1M.build_flags} ${testing.build_flags}
;board_upload.maximum_size = ${esp8285_1M.board_upload.maximum_size}
;board_build.f_cpu = ${esp8285_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
;board = ${esp8285_1M.board}
;build_unflags = ${esp8285_1M.build_unflags}
;
; TEST: 4096k version ----------------------------
;[env:test_core_242_ESP8266_4M1M]
;platform = ${testing_242.platform}
;build_flags = ${esp8266_4M1M.build_flags} ${testing_242.build_flags}
;board = ${esp8266_4M1M.board}
;board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
;build_unflags = ${esp8266_4M1M.build_unflags}
;[env:test_core_252_ESP8266_4M1M]
;platform = ${testing_252.platform}
;build_flags = ${esp8266_4M1M.build_flags} ${testing_252.build_flags}
;board = ${esp8266_4M1M.board}
;board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
;build_unflags = ${esp8266_4M1M.build_unflags}
[env:test_core_260_sdk222_alpha_ESP8266_4M1M]
platform = ${testing_beta.platform}
build_flags = ${esp8266_4M1M.build_flags} ${testing_beta.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22y
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
[env:test_core_260_sdk3_alpha_ESP8266_4M1M]
platform = ${testing_beta.platform}
build_flags = ${esp8266_4M1M.build_flags} ${testing_beta.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
;[env:test_core_252_ESP8266_16M]
;platform = ${testing_252.platform}
;build_flags = ${esp8266_16M.build_flags} ${testing_252.build_flags}
;board = ${esp8266_16M.board}
;board_build.f_cpu = ${esp8266_16M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_16M.board_build.flash_mode}
;build_unflags = ${esp8266_16M.build_unflags}
[env:test_core_260_sdk222_alpha_ESP8266_16M]
platform = ${testing_beta.platform}
build_flags = ${esp8266_16M.build_flags} ${testing_beta.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22y
board = ${esp8266_16M.board}
board_build.f_cpu = ${esp8266_16M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_16M.board_build.flash_mode}
build_unflags = ${esp8266_16M.build_unflags}
;[env:test_core_260_sdk3_alpha_ESP8266_16M]
;platform = ${testing_beta.platform}
;build_flags = ${esp8266_16M.build_flags} ${testing_beta.build_flags} -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3
;board = ${esp8266_16M.board}
;board_build.f_cpu = ${esp8266_16M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_16M.board_build.flash_mode}
;build_unflags = ${esp8266_16M.build_unflags}
; TEST: 1024k version + FEATURE_ADC_VCC ----------
;[env:test_ESP8266_1M_VCC]
;platform = ${testing.platform}
;build_flags = ${esp8266_1M.build_flags} ${testing.build_flags} -D FEATURE_ADC_VCC=true
;board = ${common.board}
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;build_unflags = ${esp8266_1M.build_unflags}
; TEST: 4096k version + FEATURE_ADC_VCC ----------
[env:test_ESP8266_4M_VCC]
platform = ${testing.platform}
build_flags = ${esp8266_4M1M.build_flags} ${testing.build_flags} -D FEATURE_ADC_VCC=true
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
;;; DEV **************************************************************
; additional plugins (and dependend code) that is in development (probably broken or incomplete)
; *********************************************************************
; DEV : 1024k version ----------------------------
;[env:dev_ESP8266_1M]
;platform = ${dev.platform}
;build_flags = ${esp8266_1M.build_flags} ${dev.build_flags}
;board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = ${esp8266_1M.board}
;build_unflags = ${esp8266_1M.build_unflags}
; DEV: 1024k for esp8285 -------------------------
;[env:dev_ESP8285_1M]
;platform = ${dev.platform}
;build_flags = ${esp8285_1M.build_flags} ${dev.build_flags}
;board_upload.maximum_size = ${esp8285_1M.board_upload.maximum_size}
;board_build.f_cpu = ${esp8285_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
;board = ${esp8285_1M.board}
;build_unflags = ${esp8285_1M.build_unflags}
; DEV : 4096k version ----------------------------
[env:dev_ESP8266_4M1M]
platform = ${dev.platform}
build_flags = ${esp8266_4M1M.build_flags} ${dev.build_flags}
board = ${esp8266_4M1M.board}
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
build_unflags = ${esp8266_4M1M.build_unflags}
;;; HARDWARE SPECIFIC VERSIONS ***********************************************************
; versions specially designed to fit, and contents only needed plugins for each hardware ;
; ****************************************************************************************
; ITEAD Products ; ****; ****; ****; ****; ****;;
; ITEAD / SONOFF BASIC version ------------------
;[env:hard_SONOFF_BASIC]
;platform = ${esp8266_1M.platform}
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_SONOFF_BASIC
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = ${esp8266_1M.board}
;build_unflags = ${esp8266_1M.build_unflags}
; ITEAD / SONOFF TH10/TH16 version -------------------
;[env:hard_SONOFF_TH1x]
;platform = ${esp8266_1M.platform}
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_SONOFF_TH1x
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = ${esp8266_1M.board}
;build_unflags = ${esp8266_1M.build_unflags}
; ITEAD / SONOFF POW & POW R2 version --------------------
; Sonoff Pow (ESP8266 - HLW8012)
; GPIO00 Button
; GPIO05 HLW8012 Sel output
; GPIO12 Red Led and Relay (0 = Off, 1 = On)
; GPIO13 HLW8012 CF1 voltage / current
; GPIO14 HLW8012 CF power
; GPIO15 Blue Led (0 = On, 1 = Off)
; Sonoff Pow R2 (ESP8266 4M flash - CSE7766)
; GPIO00 Button
; GPIO01 Serial RXD 4800 baud 8E1 CSE7766 energy sensor
; GPIO03 Serial TXD
; GPIO12 Red Led and Relay (0 = Off, 1 = On)
; GPIO13 Blue Led (0 = On, 1 = Off)
[env:hard_SONOFF_POW_4M1M]
platform = ${normal.platform}
build_flags = ${normal.build_flags} ${esp8266_4M1M.build_flags} -D PLUGIN_SET_SONOFF_POW
board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
board = ${esp8266_4M1M.board}
build_unflags = ${esp8266_4M1M.build_unflags}
;[env:hard_core_252_SONOFF_POW_4M1M]
;platform = ${normal_252.platform}
;build_flags = ${normal_252.build_flags} ${esp8266_4M1M.build_flags} -D PLUGIN_SET_SONOFF_POW
;board_build.f_cpu = ${esp8266_4M1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_4M1M.board_build.flash_mode}
;board = ${esp8266_4M1M.board}
;build_unflags = ${esp8266_4M1M.build_unflags}
; Build including power measurement plugins for those devices that have only 1M flash.
; For example those made by BlitzWolf SHP
[env:hard_other_POW_ESP8285_1M]
platform = ${normal.platform}
build_flags = ${normal.build_flags} ${esp8285_1M.build_flags} -D PLUGIN_SET_SONOFF_POW
board_build.f_cpu = ${esp8285_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
board = ${esp8285_1M.board}
build_unflags = ${esp8285_1M.build_unflags}
;[env:hard_core_252_other_POW_ESP8285_1M]
;platform = ${normal_252.platform}
;build_flags = ${normal_252.build_flags} ${esp8285_1M.build_flags} -D PLUGIN_SET_SONOFF_POW
;board_build.f_cpu = ${esp8285_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8285_1M.board_build.flash_mode}
;board = ${esp8285_1M.board}
;build_unflags = ${esp8285_1M.build_unflags}
; ITEAD / SONOFF S20 version --------------------
;[env:hard_SONOFF_S20]
;platform = ${esp8266_1M.platform}
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_SONOFF_S2x
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = ${esp8266_1M.board}
;build_unflags = ${esp8266_1M.build_unflags}
; ITEAD / SONOFF 4CH version --------------------
;[env:hard_SONOFF_4CH]
;platform = ${esp8266_1M.platform}
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_SONOFF_4CH
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = ${esp8266_1M.board}
;build_unflags = ${esp8266_1M.build_unflags}
; ITEAD / SONOFF TOUCH version ------------------
;[env:hard_SONOFF_TOUCH]
;platform = ${esp8266_1M.platform}
;build_flags = ${esp8266_1M.build_flags} -D PLUGIN_SET_SONOFF_TOUCH
;board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
;board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
;board = ${esp8266_1M.board}
;build_unflags = ${esp8266_1M.build_unflags}
;
; Shelly1 Open Source (ESP8266-2MB)
; https://shelly.cloud/shelly1-open-source/
; GPIO04 Relay (non inverted)
; GPIO05 Button
[env:hard_Shelly_1_2M256]
platform = ${normal.platform}
build_flags = ${normal.build_flags} ${esp8266_2M256.build_flags} -D PLUGIN_SET_SHELLY_1
board_build.f_cpu = ${esp8266_2M256.board_build.f_cpu}
board_build.flash_mode = ${esp8266_2M256.board_build.flash_mode}
board = ${esp8266_2M256.board}
build_unflags = ${esp8266_2M256.build_unflags}
; Ventus W266 weather station
; https://www.letscontrolit.com/wiki/index.php/VentusW266
[env:hard_Ventus_W266]
platform = ${normal.platform}
build_flags = ${normal.build_flags} ${esp8266_1M.build_flags} -D PLUGIN_SET_VENTUS_W266
board_upload.maximum_size = ${esp8266_1M.board_upload.maximum_size}
board_build.f_cpu = ${esp8266_1M.board_build.f_cpu}
board_build.flash_mode = ${esp8266_1M.board_build.flash_mode}
board = ${esp8266_1M.board}
build_unflags = ${esp8266_1M.build_unflags}