Tasmota/platformio.ini

117 lines
5.3 KiB
Python

; PlatformIO Project Configuration File
;
; Build options: build flags, source filter, extra scripting
; Upload options: custom port, speed and extra flags
; Library options: dependencies, extra library storages
;
; Please visit documentation for the other options and examples
; http://docs.platformio.org/en/stable/projectconf.html
;
; *********************************************************************
; *** Selection of Tasmota build variant is done with VSC
; *** alternatively can be done in: platformio_override.ini
; *** See example: platformio_override_sample.ini
; *********************************************************************
[platformio]
description = Provide ESP8266 / ESP32 based devices with Web, MQTT and OTA firmware
src_dir = tasmota
lib_dir = lib/default
boards_dir = boards
build_cache_dir = .cache
extra_configs = platformio_tasmota32.ini
platformio_tasmota_env.ini
platformio_tasmota_env32.ini
platformio_override.ini
[common]
platform = ${core.platform}
platform_packages = ${core.platform_packages}
framework = arduino
board = esp8266_1M
board_build.filesystem = littlefs
custom_unpack_dir = unpacked_littlefs
build_unflags = ${core.build_unflags}
build_flags = ${core.build_flags}
monitor_speed = 115200
monitor_port = COM5
; *** Upload Serial reset method for Wemos and NodeMCU
upload_resetmethod = nodemcu
upload_port = COM5
extra_scripts = ${scripts_defaults.extra_scripts}
lib_ldf_mode = chain
lib_compat_mode = strict
shared_libdeps_dir = lib
lib_extra_dirs =
lib/lib_basic
lib/lib_i2c
lib/lib_display
lib/lib_ssl
lib/lib_audio
lib/lib_rf
lib/lib_div
[tasmota]
; *** Settings here do NOT affect firmware building ***
; Uncomment if you do NOT want gzipped map file(s)
;disable_map_gz = 1
; Uncomment and specify a folder where to place the map file(s) (default set to folder build_output)
;map_dir = /tmp/map_files/
; Uncomment if you do NOT want additionally gzipped firmware file(s)
;disable_bin_gz = 1
; Uncomment and specify a folder where to place the firmware file(s) (default set to folder build_output)
;bin_dir = /tmp/bin_files/
[scripts_defaults]
extra_scripts = pio-tools/strip-floats.py
pio-tools/name-firmware.py
pio-tools/gzip-firmware.py
pio-tools/override_copy.py
pio-tools/download_fs.py
[esp_defaults]
; *** remove undesired all warnings
build_unflags = -Wall
; -mtarget-align
-Wdeprecated-declarations
build_flags = -DCORE_DEBUG_LEVEL=0
-Wl,-Map,firmware.map
-Wno-deprecated-declarations
; -mno-target-align
-mtarget-align
-free
-fipa-pta
-Wreturn-type
; *********************************************************************
; *** Use custom settings from file user_config_override.h
-DUSE_CONFIG_OVERRIDE
; *********************************************************************
[esp82xx_defaults]
build_flags = ${esp_defaults.build_flags}
-DNDEBUG
-DFP_IN_IROM
-DBEARSSL_SSL_BASIC
; NONOSDK22x_190703 = 2.2.2-dev(38a443e)
-DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703
-DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH
; VTABLES in Flash
-DVTABLES_IN_FLASH
; remove the 4-bytes alignment for PSTR()
-DPSTR_ALIGN=1
; restrict to minimal mime-types
-DMIMETYPE_MINIMAL
; uncomment the following to enable TLS with 4096 RSA certificates
;-DUSE_4K_RSA
[core]
; *** Esp8266 Tasmota modified Arduino core based on core 2.7.4. Added Backport for PWM selection
platform = espressif8266 @ 2.6.3
platform_packages = tasmota/framework-arduinoespressif8266 @ ~2.7.4
platformio/tool-esptoolpy @ ~1.30100
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