mirror of https://github.com/arendst/Tasmota.git
144 lines
6.8 KiB
INI
144 lines
6.8 KiB
INI
; 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
|
|
platformio_tasmota_cenv.ini
|
|
|
|
[common]
|
|
platform = ${core.platform}
|
|
platform_packages = ${core.platform_packages}
|
|
framework = arduino
|
|
board = esp8266_1M
|
|
board_build.filesystem = littlefs
|
|
board_build.variants_dir = variants/tasmota
|
|
custom_unpack_dir = unpacked_littlefs
|
|
build_unflags = ${core.build_unflags}
|
|
build_flags = ${core.build_flags}
|
|
monitor_speed = 115200
|
|
monitor_echo = yes
|
|
; *** Upload Serial reset method for Wemos and NodeMCU
|
|
upload_resetmethod = nodemcu
|
|
check_skip_packages = yes
|
|
extra_scripts = ${esp_defaults.extra_scripts}
|
|
lib_archive = no
|
|
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]
|
|
; 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) at all
|
|
;disable_bin_gz = 1
|
|
; Uncomment if you want additionally gzipped esp32x firmware file(s)
|
|
;enable_esp32_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/
|
|
; Global build flags (used for all env) can be overridden in "platformio_override.ini"
|
|
build_unflags =
|
|
build_flags =
|
|
|
|
[scripts_defaults]
|
|
extra_scripts = pre:pio-tools/pre_source_dir.py
|
|
pre:pio-tools/set_partition_table.py
|
|
pre:pio-tools/override_copy.py
|
|
post:pio-tools/strip-flags.py
|
|
|
|
[esp_defaults]
|
|
extra_scripts = post:pio-tools/name-firmware.py
|
|
post:pio-tools/gzip-firmware.py
|
|
post:pio-tools/metrics-firmware.py
|
|
post:pio-tools/custom_target.py
|
|
; post:pio-tools/obj-dump.py
|
|
${scripts_defaults.extra_scripts}
|
|
; *** remove undesired all warnings
|
|
build_unflags = ${tasmota.build_unflags}
|
|
-Wall
|
|
; -mtarget-align
|
|
-Wdeprecated-declarations
|
|
build_flags = ${tasmota.build_flags}
|
|
-DCORE_DEBUG_LEVEL=0
|
|
-Wl,-Map,firmware.map
|
|
-Wno-deprecated-declarations
|
|
; -mno-target-align
|
|
-mtarget-align
|
|
-free
|
|
-fipa-pta
|
|
-Wreturn-type
|
|
-DTASMOTA ; flag indicating that we are compiling Tasmota
|
|
; *********************************************************************
|
|
; *** Use custom settings from file user_config_override.h
|
|
-DUSE_CONFIG_OVERRIDE
|
|
; *********************************************************************
|
|
|
|
[esp82xx_defaults]
|
|
extra_scripts = ${esp_defaults.extra_scripts}
|
|
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
|
|
; -DPIO_FRAMEWORK_ARDUINO_LWIP2_IPV6_HIGHER_BANDWIDTH -DUSE_IPV6 ; enables IPv6
|
|
; 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
|
|
lib_ignore =
|
|
ESP8266LLMNR
|
|
ESP8266NetBIOS
|
|
ESP8266SSDP
|
|
ESP8266WiFiMesh
|
|
GDBStub
|
|
ESP8266HTTPUpdateServer
|
|
SPISlave
|
|
Hash
|
|
; Disable next if you want to use ArduinoOTA in Tasmota (default disabled)
|
|
ArduinoOTA
|
|
|
|
[core]
|
|
; *** Esp8266 Tasmota modified Arduino core based on core 2.7.4. Added Backport for PWM selection
|
|
platform = https://github.com/tasmota/platform-espressif8266/releases/download/2024.09.00/platform-espressif8266.zip
|
|
platform_packages =
|
|
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
|