; *** Example PlatformIO Project Configuration Override File *** ; *** Changes done here override settings in platformio.ini *** ; ; ***************************************************************** ; *** to activate rename this file to platformio_override.ini *** ; ***************************************************************** ; ; Please visit documentation for the options and examples ; http://docs.platformio.org/en/stable/projectconf.html [platformio] ; For best Gitpod performance remove the ";" in the next line. Needed Platformio files are cached and installed at first run ;core_dir = .platformio extra_configs = platformio_tasmota_cenv.ini ; *** Build/upload environment default_envs = ; *** Uncomment the line(s) below to select version(s) tasmota ; tasmota-debug ; tasmota-ircustom ; tasmota-minimal ; tasmota-lite ; tasmota-knx ; tasmota-sensors ; tasmota-display ; tasmota-zbbridge ; tasmota-ir ; tasmota32 ; tasmota32-bluetooth ; tasmota32-webcam ; tasmota32-knx ; tasmota32-sensors ; tasmota32-display ; tasmota32-ir ; tasmota32-ircustom ; tasmota32solo1 ; tasmota32c3 ; tasmota32s2 ; tasmota32-odroidgo ; tasmota32-core2 [common] platform_packages = ${core.platform_packages} build_unflags = ${core.build_unflags} build_flags = ${core.build_flags} ; *** Optional Debug messages ; -DDEBUG_TASMOTA_CORE ; -DDEBUG_TASMOTA_DRIVER ; -DDEBUG_TASMOTA_SENSOR ; *** CAUTION *** This setting is ONLY possible since 12.01.2021 with development version !!! ; *** Enable only if you exactly know what are you doing ; *** If you try with earlier builds a serial erase and flash is probably needed ; ; Build variant 1MB = 1MB firmware no filesystem (default) ;board = esp8266_1M ; Build variant 2MB = 1MB firmware, 1MB filesystem (most Shelly devices) ;board = esp8266_2M1M ; Build variant 4MB = 1MB firmware, 1MB OTA, 2MB filesystem (WEMOS D1 Mini, NodeMCU, Sonoff POW) ;board = esp8266_4M2M ; set CPU frequency to 80MHz (default) or 160MHz ;board_build.f_cpu = 160000000L ; set Flash chip frequency to 40MHz (default), 20MHz, 26Mhz, 80Mhz ;board_build.f_flash = 20000000L ;board_build.f_flash = 26000000L ;board_build.f_flash = 80000000L ; *** Upload Serial reset method for Wemos and NodeMCU upload_port = COM5 extra_scripts = ${scripts_defaults.extra_scripts} ; pio-tools/obj-dump.py lib_extra_dirs = ${library.lib_extra_dirs} [core] ; Activate only (one set) if you want to override the standard core defined in platformio.ini !!! ;platform_packages = ${tasmota_stage.platform_packages} ;build_unflags = ${tasmota_stage.build_unflags} ;build_flags = ${tasmota_stage.build_flags} ; platform_packages = ${core_stage.platform_packages} build_unflags = ${core_stage.build_unflags} build_flags = ${core_stage.build_flags} [tasmota_stage] ; *** Esp8266 core for Arduino version Tasmota stage. Backport for PWM selection platform_packages = tasmota/framework-arduinoespressif8266 @ ~2.7.4 build_unflags = ${esp_defaults.build_unflags} build_flags = ${esp82xx_defaults.build_flags} ; *** Use ONE of the two PWM variants. Tasmota default is Locked PWM ;-DWAVEFORM_LOCKED_PHASE -DWAVEFORM_LOCKED_PWM [core_stage] ; *** Esp8266 core for Arduino version stage platform_packages = framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git ; *** Use Xtensa build chain 10.2. GNU13 from https://github.com/earlephilhower/esp-quick-toolchain tasmota/toolchain-xtensa @ 5.100200.210303 build_unflags = ${esp_defaults.build_unflags} -Wswitch-unreachable build_flags = ${esp82xx_defaults.build_flags} ; *** Use ONE of the two PWM variants. Tasmota default is Locked PWM ;-DWAVEFORM_LOCKED_PHASE -DWAVEFORM_LOCKED_PWM -Wno-switch-unreachable [common32] platform_packages = ${core32.platform_packages} build_unflags = ${core32.build_unflags} build_flags = ${core32.build_flags} upload_port = COM4 lib_extra_dirs = ${library.lib_extra_dirs} ; *** ESP32 lib. ALWAYS needed for ESP32 !!! lib/libesp32 ; *** comment the following line if you dont use LVGL in a Tasmota32 build. Reduces compile time lib/libesp32_lvgl ; *** comment the following line if you dont use Bluetooth or Apple Homekit in a Tasmota32 build. Reduces compile time lib/libesp32_div ; *** uncomment the following line if you dont use Epaper driver epidy in your Tasmota32 build. Reduces compile time lib/libesp32_epdiy [core32] ; Activate Stage Core32 by removing ";" in next 3 lines, if you want to override the standard core32 ;platform_packages = ${core32_stage.platform_packages} ;build_unflags = ${core32_stage.build_unflags} ;build_flags = ${core32_stage.build_flags} [core32_stage] platform_packages = framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git platformio/tool-mklittlefs @ ~1.203.200522 build_unflags = ${esp32_defaults.build_unflags} build_flags = ${esp32_defaults.build_flags} -DESP32_STAGE=true [library] shared_libdeps_dir = lib ; *** Library disable / enable for variant Tasmota(32). Disable reduces compile time ; *** !!! Disabling needed libs will generate compile errors !!! ; *** The resulting firmware will NOT be different if you leave all libs enabled ; *** Disabling by putting a ";" in front of the lib name ; *** If you dont know what it is all about, do not change lib_extra_dirs = ; *** Only disabled for Tasmota minimal and Tasmota light. For all other variants needed! lib/lib_basic ; **** I2C devices. Most sensors. Disable only if you dont have ANY I2C device enabled lib/lib_i2c ; *** Displays. Disable if you dont have any Display activated lib/lib_display ; *** Bear SSL and base64. Disable if you dont have SSL or TLS activated lib/lib_ssl ; *** Audio needs a lot of time to compile. Mostly not used functions. Recommended to disable lib/lib_audio ; *** RF 433 stuff (not RF Bridge). Recommended to disable lib/lib_rf ; *** Mostly not used functions. Recommended to disable lib/lib_div ; *** EXPERIMENTAL Tasmota version for ESP32-S2 [env:tasmota32s2] extends = env:tasmota32_base board = esp32s2 board_build.flash_mode = qio platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/v.2.0.0.pre/framework-arduinoespressif32-master-cf457d412.tar.gz platformio/tool-mklittlefs @ ~1.203.200522 platformio/tool-esptoolpy @ ~1.30000.0 build_unflags = ${esp32_defaults.build_unflags} build_flags = ${common32.build_flags} -DFIRMWARE_LITE lib_extra_dirs = lib/libesp32 lib_ignore = NimBLE-Arduino Micro-RTSP ESP32-HomeKit ; *** EXPERIMENTAL Tasmota version for ESP32-C3 [env:tasmota32c3] extends = env:tasmota32_base board = esp32c3 platform = https://github.com/Jason2866/platform-espressif32.git#feature/arduino-c3 platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/v.2.0.0.pre/framework-arduinoespressif32-master-cf457d412.tar.gz tasmota/toolchain-riscv32 platformio/tool-mklittlefs @ ~1.203.200522 build_unflags = ${esp32_defaults.build_unflags} -mtarget-align build_flags = ${esp32_defaults.build_flags} -DFIRMWARE_LITE -I$PROJECT_DIR/include -include "fix_esp32c3.h" ;-DESP32_STAGE=true lib_extra_dirs = lib/libesp32 lib_ignore = NimBLE-Arduino Micro-RTSP ; *** EXPERIMENTAL Tasmota version for ESP32 IDF4.4. [env:tasmota32idf4] extends = env:tasmota32_base platform = https://github.com/Jason2866/platform-espressif32.git#feature/arduino-idf-v4.4 platform_packages = framework-arduinoespressif32 @ https://github.com/Jason2866/esp32-arduino-lib-builder/releases/download/v.2.0.0.pre/framework-arduinoespressif32-master-cf457d412.tar.gz platformio/tool-mklittlefs @ ~1.203.200522 build_unflags = ${esp32_defaults.build_unflags} build_flags = ${esp32_defaults.build_flags} ;-DESP32_STAGE=true ; *** Debug version used for PlatformIO Home Project Inspection [env:tasmota-debug] build_type = debug build_unflags = ${esp_defaults.build_unflags} build_flags = ${esp82xx_defaults.build_flags} ; -Wstack-usage=300 [env:tasmota32-debug] extends = env:tasmota32_base build_type = debug build_unflags = ${esp32_defaults.build_unflags} build_flags = ${esp32_defaults.build_flags} ; -Wstack-usage=300