From 6664b5d073135b956508557a86bf55c68e2886c8 Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 08:59:22 +0100 Subject: [PATCH 01/13] Core 2.6.1 as release.... not develop anymore from PlatformIO crew --- platformio.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platformio.ini b/platformio.ini index 7e3eaec21..4ab8c1240 100755 --- a/platformio.ini +++ b/platformio.ini @@ -113,7 +113,7 @@ build_flags = -D NDEBUG [core_2_6_1] ; *** Esp8266 core for Arduino version 2.6.1 -platform = https://github.com/platformio/platform-espressif8266.git#develop +platform = espressif8266@~2.3.0 build_flags = ${esp82xx_defaults.build_flags} -Wl,-Teagle.flash.1m.ld -DBEARSSL_SSL_BASIC From cf6ca5c0cdb13cf96dfbaa1cb60f398510d16f14 Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 16:09:42 +0100 Subject: [PATCH 02/13] Add core 2.6.2 and platformio_override.ini --- platformio.ini | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/platformio.ini b/platformio.ini index 4ab8c1240..016032dd3 100755 --- a/platformio.ini +++ b/platformio.ini @@ -11,6 +11,7 @@ src_dir = tasmota build_dir = .pioenvs build_cache_dir = .cache +extra_configs = platformio_override.ini ; *** Build/upload environment default_envs = @@ -101,6 +102,8 @@ extra_scripts = pio/strip-floats.py ; Select one core set for platform and build_flags platform = ${core_2_6_1.platform} build_flags = ${core_2_6_1.build_flags} +;platform = ${core_2_6_2.platform} +;build_flags = ${core_2_6_2.build_flags} ;platform = ${core_stage.platform} ;build_flags = ${core_stage.build_flags} @@ -155,6 +158,50 @@ build_flags = ${esp82xx_defaults.build_flags} ; -fexceptions ; -lstdc++-exc +[core_2_6_2] +; *** Esp8266 core for Arduino version 2.6.2 +platform = espressif8266@~2.3.1 +build_flags = ${esp82xx_defaults.build_flags} + -Wl,-Teagle.flash.1m.ld + -DBEARSSL_SSL_BASIC +; NONOSDK221 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 +; NONOSDK22x_190313 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 +; NONOSDK22x_190703 = 2.2.2-dev(38a443e) (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 +; NONOSDK22x_191024 = 2.2.2-dev(5ab15d1) +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 +; NONOSDK22x_191105 = 2.2.2-dev(bb83b9b) +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 +; NONOSDK3V0 (known issues) +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 +; lwIP 1.4 +; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH +; lwIP 2 - Low Memory +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY +; lwIP 2 - Higher Bandwidth +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH +; lwIP 2 - Higher Bandwidth Low Memory no Features +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH +; lwIP 2 - Higher Bandwidth no Features (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH +; lwIP 2 - Higher Bandwidth IPv6 (use ONLY if you need IPv6, experimental!) +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_IPV6_HIGHER_BANDWIDTH +; VTABLES in Flash (Tasmota default) + -DVTABLES_IN_FLASH +; VTABLES in Heap +; -DVTABLES_IN_DRAM +; VTABLES in IRAM +; -DVTABLES_IN_IRAM +; enable one option set -> No exception recommended +; No exception code in firmware + -fno-exceptions + -lstdc++ +; Exception code in firmware /needs much space! 90k +; -fexceptions +; -lstdc++-exc + [core_stage] ; *** Esp8266 core for Arduino version latest beta platform = https://github.com/platformio/platform-espressif8266.git#feature/stage From f71483dec2cf400614d9023830a4bb68cff7fb6e Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 16:10:55 +0100 Subject: [PATCH 03/13] Update .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index f28d51334..e9c55b5b9 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ firmware.map firmware.asm tasmota*.bin tasmota*.map +platformio_override.ini ## Visual Studio Code specific ###### .vscode From 59ca4d89e620498d27bb17df31de7cd7f54c006a Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 16:13:53 +0100 Subject: [PATCH 04/13] Add files via upload --- platformio_override_sample.ini | 779 +++++++++++++++++++++++++++++++++ 1 file changed, 779 insertions(+) create mode 100644 platformio_override_sample.ini diff --git a/platformio_override_sample.ini b/platformio_override_sample.ini new file mode 100644 index 000000000..e58ea8721 --- /dev/null +++ b/platformio_override_sample.ini @@ -0,0 +1,779 @@ +; 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 + +[platformio] +src_dir = tasmota +build_dir = .pioenvs +build_cache_dir = .cache + +; *** Build/upload environment +default_envs = +; *** Uncomment the line(s) below to select version(s) + tasmota +; tasmota-debug +; tasmota-ircustom ; alternative to 'tasmota' with full IR protocols activated, you will need to disable some features to keep code not too big +; tasmota-minimal +; tasmota-basic +; tasmota-knx +; tasmota-sensors +; tasmota-display +; tasmota-ir +; tasmota-BG +; tasmota-BR +; tasmota-CN +; tasmota-CZ +; tasmota-DE +; tasmota-ES +; tasmota-FR +; tasmota-GR +; tasmota-HE +; tasmota-HU +; tasmota-IT +; tasmota-KO +; tasmota-NL +; tasmota-PL +; tasmota-PT +; tasmota-RU +; tasmota-SE +; tasmota-SK +; tasmota-TR +; tasmota-TW +; tasmota-UK + +[common] +framework = arduino +board = esp01_1m +board_build.flash_mode = dout + +platform = ${core_active.platform} +platform_packages = ${core_active.platform_packages} +build_flags = ${core_active.build_flags} + +; *** Use settings from file user_config_override.h + -DUSE_CONFIG_OVERRIDE + +; *** Optional Debug messages +; -DDEBUG_TASMOTA_CORE +; -DDEBUG_TASMOTA_DRIVER +; -DDEBUG_TASMOTA_SENSOR + +; *** Optional Firmware configurations +; -DFIRMWARE_CLASSIC +; -DFIRMWARE_MINIMAL +; -DFIRMWARE_SENSORS +; -DFIRMWARE_BASIC +; -DFIRMWARE_KNX_NO_EMULATION +; -DFIRMWARE_DISPLAYS +; -DFIRMWARE_IR +; -DFIRMWARE_IR_CUSTOM + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall +; -std=gnu++11 + +; set CPU frequency to 80MHz (default) or 160MHz +board_build.f_cpu = 80000000L +;board_build.f_cpu = 160000000L + +monitor_speed = 115200 +upload_speed = 115200 +upload_resetmethod = nodemcu + +; *** Upload Serial reset method for Wemos and NodeMCU +upload_port = COM5 +extra_scripts = + pio/strip-floats.py + pio/name-firmware.py +; pio/obj-dump.py + +; *** Upload file to OTA server using SCP +;upload_port = admin@192.168.2.20:\share\MD0_DATA\Web\data\firmwares +;extra_scripts = pio/strip-floats.py, pio/sftp-uploader.py + +; *** Upload file to OTA server in folder api/arduino using HTTP +;upload_port = domus1:80/api/upload-arduino.php +;extra_scripts = pio/strip-floats.py, pio/http-uploader.py + +; ********************************************************************* + +[core_active] +; Select one core set for platform and build_flags + +;platform = ${core_2_3_0.platform} +;build_flags = ${core_2_3_0.build_flags} + +;platform = ${core_2_4_2.platform} +;build_flags = ${core_2_4_2.build_flags} + +;platform = ${core_2_6_1.platform} +;build_flags = ${core_2_6_1.build_flags} + +platform = ${core_2_6_2.platform} +build_flags = ${core_2_6_2.build_flags} + +;platform = ${core_stage.platform} +;build_flags = ${core_stage.build_flags} +;platform_packages = ${core_stage.platform_packages} + +;platform = ${core_cstage.platform} +;build_flags = ${core_cstage.build_flags} + +; ********************************************************************* + +[esp82xx_defaults] +build_flags = -D NDEBUG + -mtarget-align + -Wl,-Map,firmware.map + +[core_2_3_0] +; *** Esp8266 core for Arduino version 2.3.0 +platform = espressif8266@~1.5.0 +build_flags = ${esp82xx_defaults.build_flags} + -Wl,-Tesp8266.flash.1m0.ld + +[core_2_4_2] +; *** Esp8266 core for Arduino version 2.4.2 +platform = espressif8266@~1.8.0 +build_flags = ${esp82xx_defaults.build_flags} + -Wl,-Teagle.flash.1m0.ld + -lstdc++ -lsupc++ +; link with an memory optimized version of lib_bearssl + -Llib_bearssl -lbearssl +; lwIP 1.4 +; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH +; lwIP 2 - Low Memory +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY +; lwIP 2 - Higher Bandwidth (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH + -DVTABLES_IN_FLASH + +[core_2_6_1] +; *** Esp8266 core for Arduino version 2.6.1 +;platform = https://github.com/Jason2866/platform-espressif8266.git#new_gcc +platform = espressif8266@~2.3.0 +build_flags = ${esp82xx_defaults.build_flags} + -Wl,-Teagle.flash.1m.ld + -DBEARSSL_SSL_BASIC +; NONOSDK221 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 +; NONOSDK22x_190313 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 +; NONOSDK22x_190703 (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 +; NONOSDK22x_191024 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 +; NONOSDK22x_191105 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 +; NONOSDK3V0 (known issues) +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 +; lwIP 1.4 +; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH +; lwIP 2 - Low Memory +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY +; lwIP 2 - Higher Bandwidth +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH +; lwIP 2 - Higher Bandwidth Low Memory no Features +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH +; lwIP 2 - Higher Bandwidth no Features (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH +; VTABLES in Flash (Tasmota default) + -DVTABLES_IN_FLASH +; VTABLES in Heap +; -DVTABLES_IN_DRAM +; VTABLES in IRAM +; -DVTABLES_IN_IRAM +; enable one option set -> No exception recommended +; No exception code in firmware + -fno-exceptions + -lstdc++ +; Exception code in firmware /needs much space! 90k +; -fexceptions +; -lstdc++-exc + +[core_2_6_2] +; *** Esp8266 core for Arduino version 2.6.2 +platform = espressif8266@~2.3.1 +build_flags = ${esp82xx_defaults.build_flags} + -Wl,-Teagle.flash.1m.ld + -DBEARSSL_SSL_BASIC +; NONOSDK221 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 +; NONOSDK22x_190313 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 +; NONOSDK22x_190703 (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 +; NONOSDK22x_191024 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 +; NONOSDK22x_191105 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 +; NONOSDK3V0 (known issues) +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 +; lwIP 1.4 +; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH +; lwIP 2 - Low Memory +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY +; lwIP 2 - Higher Bandwidth +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH +; lwIP 2 - Higher Bandwidth Low Memory no Features +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH +; lwIP 2 - Higher Bandwidth no Features (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH +; VTABLES in Flash (Tasmota default) + -DVTABLES_IN_FLASH +; VTABLES in Heap +; -DVTABLES_IN_DRAM +; VTABLES in IRAM +; -DVTABLES_IN_IRAM +; enable one option set -> No exception recommended +; No exception code in firmware + -fno-exceptions + -lstdc++ +; Exception code in firmware /needs much space! 90k +; -fexceptions +; -lstdc++-exc + +[core_stage] +; *** Esp8266 core for Arduino version latest beta +platform = espressif8266 +platform_packages = + framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git +build_flags = ${esp82xx_defaults.build_flags} + -Wl,-Teagle.flash.1m.ld + -DBEARSSL_SSL_BASIC +; NONOSDK221 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 +; NONOSDK22x_190313 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 +; NONOSDK22x_190703 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 +; NONOSDK22x_191024 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 +; NONOSDK22x_191105 + -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 +; NONOSDK3V0 (known issues) +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 +; lwIP 1.4 +; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH +; lwIP 2 - Low Memory +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY +; lwIP 2 - Higher Bandwidth +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH +; lwIP 2 - Higher Bandwidth Low Memory no Features +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH +; lwIP 2 - Higher Bandwidth no Features (Tasmota default) + -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH +; VTABLES in Flash (Tasmota default) + -DVTABLES_IN_FLASH +; VTABLES in Heap +; -DVTABLES_IN_DRAM +; VTABLES in IRAM +; -DVTABLES_IN_IRAM +; enable one option set -> No exception recommended +; No exception code in firmware + -fno-exceptions + -lstdc++ +; Exception code in firmware /needs much space! 90k +; -fexceptions +; -lstdc++-exc + +[core_cstage] +; *** Arduino Esp8266 -> Wstring optimization +platform = https://github.com/Jason2866/platform-espressif8266.git#feature/stage +build_flags = ${esp82xx_defaults.build_flags} + -Wl,-Tesp8266.flash.1m.ld + -DBEARSSL_SSL_BASIC +; NONOSDK221 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 +; NONOSDK22x_190313 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 +; NONOSDK22x_190703 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 +; NONOSDK22x_191024 +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 +; NONOSDK22x_191105 + -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 +; NONOSDK3V0 (known issues) +; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 +; lwIP 1.4 +; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH +; lwIP 2 - Low Memory +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY +; lwIP 2 - Higher Bandwidth +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH +; lwIP 2 - Higher Bandwidth Low Memory no Features +; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH +; lwIP 2 - Higher Bandwidth no Features + -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH +; VTABLES in Flash (default) + -DVTABLES_IN_FLASH +; VTABLES in Heap +; -DVTABLES_IN_DRAM +; VTABLES in IRAM +; -DVTABLES_IN_IRAM +; enable one option set -> No exception recommended +; No exception code in firmware + -fno-exceptions + -lstdc++ +; Exception code in firmware /needs much space! 90k +; -fexceptions +; -lstdc++-exc + +[env:tasmota] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-debug] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_type = debug +check_tool = cppcheck, clangtidy +check_flags = + clangtidy: --check=-*,performance-*,clang-analyzer-* --fix +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-minimal] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DFIRMWARE_MINIMAL +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-basic] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DFIRMWARE_BASIC +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-knx] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DFIRMWARE_KNX_NO_EMULATION +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-sensors] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DFIRMWARE_SENSORS +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-display] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DFIRMWARE_DISPLAYS +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-ir] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DUSE_IR_REMOTE_FULL -DFIRMWARE_IR +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-ircustom] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DUSE_IR_REMOTE_FULL +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-BG] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=bg-BG +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-BR] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=pt-BR +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-CN] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=zh-CN +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-CZ] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=cs-CZ +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-DE] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=de-DE +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-ES] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=es-ES +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-FR] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=fr-FR +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-GR] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=el-GR +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-HE] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=he-HE +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-HU] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=hu-HU +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-IT] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=it-IT +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-KO] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=ko-KO +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-NL] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=nl-NL +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-PL] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=pl-PL +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-PT] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=pt-PT +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-RU] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=ru-RU +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-SE] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=sv-SE +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-SK] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=sk-SK +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-TR] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=tr-TR +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-TW] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=zh-TW +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} + +[env:tasmota-UK] +platform = ${common.platform} +framework = ${common.framework} +platform_packages = ${common.platform_packages} +board = ${common.board} +board_build.flash_mode = ${common.board_build.flash_mode} +board_build.f_cpu = ${common.board_build.f_cpu} +build_unflags = ${common.build_unflags} +build_flags = ${common.build_flags} -DMY_LANGUAGE=uk-UK +monitor_speed = ${common.monitor_speed} +upload_port = ${common.upload_port} +upload_resetmethod = ${common.upload_resetmethod} +upload_speed = ${common.upload_speed} +extra_scripts = ${common.extra_scripts} From 00da8ead3542765f4fa4bf4467d7feb6de47411b Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 16:27:12 +0100 Subject: [PATCH 05/13] Update platformio.ini --- platformio.ini | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/platformio.ini b/platformio.ini index 016032dd3..cdce62e9d 100755 --- a/platformio.ini +++ b/platformio.ini @@ -116,7 +116,7 @@ build_flags = -D NDEBUG [core_2_6_1] ; *** Esp8266 core for Arduino version 2.6.1 -platform = espressif8266@~2.3.0 +platform = espressif8266@2.3.0 build_flags = ${esp82xx_defaults.build_flags} -Wl,-Teagle.flash.1m.ld -DBEARSSL_SSL_BASIC @@ -160,7 +160,7 @@ build_flags = ${esp82xx_defaults.build_flags} [core_2_6_2] ; *** Esp8266 core for Arduino version 2.6.2 -platform = espressif8266@~2.3.1 +platform = espressif8266@2.3.1 build_flags = ${esp82xx_defaults.build_flags} -Wl,-Teagle.flash.1m.ld -DBEARSSL_SSL_BASIC From 7606efa2a7efc04719f1d4c3d8569414dc42b3e2 Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 16:54:34 +0100 Subject: [PATCH 06/13] Update platformio_override_sample.ini --- platformio_override_sample.ini | 750 +-------------------------------- 1 file changed, 3 insertions(+), 747 deletions(-) diff --git a/platformio_override_sample.ini b/platformio_override_sample.ini index e58ea8721..0285242eb 100644 --- a/platformio_override_sample.ini +++ b/platformio_override_sample.ini @@ -1,4 +1,4 @@ -; PlatformIO Project Configuration File +; PlatformIO Project Configuration Override File ; ; Build options: build flags, source filter, extra scripting ; Upload options: custom port, speed and extra flags @@ -7,10 +7,6 @@ ; Please visit documentation for the other options and examples ; http://docs.platformio.org/en/stable/projectconf.html -[platformio] -src_dir = tasmota -build_dir = .pioenvs -build_cache_dir = .cache ; *** Build/upload environment default_envs = @@ -24,756 +20,16 @@ default_envs = ; tasmota-sensors ; tasmota-display ; tasmota-ir -; tasmota-BG -; tasmota-BR -; tasmota-CN -; tasmota-CZ -; tasmota-DE -; tasmota-ES -; tasmota-FR -; tasmota-GR -; tasmota-HE -; tasmota-HU -; tasmota-IT -; tasmota-KO -; tasmota-NL -; tasmota-PL -; tasmota-PT -; tasmota-RU -; tasmota-SE -; tasmota-SK -; tasmota-TR -; tasmota-TW -; tasmota-UK + [common] -framework = arduino -board = esp01_1m -board_build.flash_mode = dout - -platform = ${core_active.platform} -platform_packages = ${core_active.platform_packages} -build_flags = ${core_active.build_flags} - ; *** Use settings from file user_config_override.h - -DUSE_CONFIG_OVERRIDE - -; *** Optional Debug messages -; -DDEBUG_TASMOTA_CORE -; -DDEBUG_TASMOTA_DRIVER -; -DDEBUG_TASMOTA_SENSOR - -; *** Optional Firmware configurations -; -DFIRMWARE_CLASSIC -; -DFIRMWARE_MINIMAL -; -DFIRMWARE_SENSORS -; -DFIRMWARE_BASIC -; -DFIRMWARE_KNX_NO_EMULATION -; -DFIRMWARE_DISPLAYS -; -DFIRMWARE_IR -; -DFIRMWARE_IR_CUSTOM - -; *** Fix espressif8266@1.7.0 induced undesired all warnings -build_unflags = -Wall -; -std=gnu++11 - -; set CPU frequency to 80MHz (default) or 160MHz -board_build.f_cpu = 80000000L -;board_build.f_cpu = 160000000L - -monitor_speed = 115200 -upload_speed = 115200 -upload_resetmethod = nodemcu + -DUSE_CONFIG_OVERRIDE ; *** Upload Serial reset method for Wemos and NodeMCU upload_port = COM5 -extra_scripts = - pio/strip-floats.py - pio/name-firmware.py -; pio/obj-dump.py - -; *** Upload file to OTA server using SCP -;upload_port = admin@192.168.2.20:\share\MD0_DATA\Web\data\firmwares -;extra_scripts = pio/strip-floats.py, pio/sftp-uploader.py - -; *** Upload file to OTA server in folder api/arduino using HTTP -;upload_port = domus1:80/api/upload-arduino.php -;extra_scripts = pio/strip-floats.py, pio/http-uploader.py - -; ********************************************************************* [core_active] -; Select one core set for platform and build_flags - -;platform = ${core_2_3_0.platform} -;build_flags = ${core_2_3_0.build_flags} - -;platform = ${core_2_4_2.platform} -;build_flags = ${core_2_4_2.build_flags} - -;platform = ${core_2_6_1.platform} -;build_flags = ${core_2_6_1.build_flags} platform = ${core_2_6_2.platform} build_flags = ${core_2_6_2.build_flags} - -;platform = ${core_stage.platform} -;build_flags = ${core_stage.build_flags} -;platform_packages = ${core_stage.platform_packages} - -;platform = ${core_cstage.platform} -;build_flags = ${core_cstage.build_flags} - -; ********************************************************************* - -[esp82xx_defaults] -build_flags = -D NDEBUG - -mtarget-align - -Wl,-Map,firmware.map - -[core_2_3_0] -; *** Esp8266 core for Arduino version 2.3.0 -platform = espressif8266@~1.5.0 -build_flags = ${esp82xx_defaults.build_flags} - -Wl,-Tesp8266.flash.1m0.ld - -[core_2_4_2] -; *** Esp8266 core for Arduino version 2.4.2 -platform = espressif8266@~1.8.0 -build_flags = ${esp82xx_defaults.build_flags} - -Wl,-Teagle.flash.1m0.ld - -lstdc++ -lsupc++ -; link with an memory optimized version of lib_bearssl - -Llib_bearssl -lbearssl -; lwIP 1.4 -; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH -; lwIP 2 - Low Memory -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY -; lwIP 2 - Higher Bandwidth (Tasmota default) - -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH - -DVTABLES_IN_FLASH - -[core_2_6_1] -; *** Esp8266 core for Arduino version 2.6.1 -;platform = https://github.com/Jason2866/platform-espressif8266.git#new_gcc -platform = espressif8266@~2.3.0 -build_flags = ${esp82xx_defaults.build_flags} - -Wl,-Teagle.flash.1m.ld - -DBEARSSL_SSL_BASIC -; NONOSDK221 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 -; NONOSDK22x_190313 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 -; NONOSDK22x_190703 (Tasmota default) - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 -; NONOSDK22x_191024 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 -; NONOSDK22x_191105 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 -; NONOSDK3V0 (known issues) -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 -; lwIP 1.4 -; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH -; lwIP 2 - Low Memory -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY -; lwIP 2 - Higher Bandwidth -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH -; lwIP 2 - Higher Bandwidth Low Memory no Features -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH -; lwIP 2 - Higher Bandwidth no Features (Tasmota default) - -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH -; VTABLES in Flash (Tasmota default) - -DVTABLES_IN_FLASH -; VTABLES in Heap -; -DVTABLES_IN_DRAM -; VTABLES in IRAM -; -DVTABLES_IN_IRAM -; enable one option set -> No exception recommended -; No exception code in firmware - -fno-exceptions - -lstdc++ -; Exception code in firmware /needs much space! 90k -; -fexceptions -; -lstdc++-exc - -[core_2_6_2] -; *** Esp8266 core for Arduino version 2.6.2 -platform = espressif8266@~2.3.1 -build_flags = ${esp82xx_defaults.build_flags} - -Wl,-Teagle.flash.1m.ld - -DBEARSSL_SSL_BASIC -; NONOSDK221 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 -; NONOSDK22x_190313 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 -; NONOSDK22x_190703 (Tasmota default) - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 -; NONOSDK22x_191024 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 -; NONOSDK22x_191105 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 -; NONOSDK3V0 (known issues) -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 -; lwIP 1.4 -; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH -; lwIP 2 - Low Memory -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY -; lwIP 2 - Higher Bandwidth -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH -; lwIP 2 - Higher Bandwidth Low Memory no Features -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH -; lwIP 2 - Higher Bandwidth no Features (Tasmota default) - -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH -; VTABLES in Flash (Tasmota default) - -DVTABLES_IN_FLASH -; VTABLES in Heap -; -DVTABLES_IN_DRAM -; VTABLES in IRAM -; -DVTABLES_IN_IRAM -; enable one option set -> No exception recommended -; No exception code in firmware - -fno-exceptions - -lstdc++ -; Exception code in firmware /needs much space! 90k -; -fexceptions -; -lstdc++-exc - -[core_stage] -; *** Esp8266 core for Arduino version latest beta -platform = espressif8266 -platform_packages = - framework-arduinoespressif8266 @ https://github.com/esp8266/Arduino.git -build_flags = ${esp82xx_defaults.build_flags} - -Wl,-Teagle.flash.1m.ld - -DBEARSSL_SSL_BASIC -; NONOSDK221 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 -; NONOSDK22x_190313 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 -; NONOSDK22x_190703 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 -; NONOSDK22x_191024 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 -; NONOSDK22x_191105 - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 -; NONOSDK3V0 (known issues) -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 -; lwIP 1.4 -; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH -; lwIP 2 - Low Memory -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY -; lwIP 2 - Higher Bandwidth -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH -; lwIP 2 - Higher Bandwidth Low Memory no Features -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH -; lwIP 2 - Higher Bandwidth no Features (Tasmota default) - -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH -; VTABLES in Flash (Tasmota default) - -DVTABLES_IN_FLASH -; VTABLES in Heap -; -DVTABLES_IN_DRAM -; VTABLES in IRAM -; -DVTABLES_IN_IRAM -; enable one option set -> No exception recommended -; No exception code in firmware - -fno-exceptions - -lstdc++ -; Exception code in firmware /needs much space! 90k -; -fexceptions -; -lstdc++-exc - -[core_cstage] -; *** Arduino Esp8266 -> Wstring optimization -platform = https://github.com/Jason2866/platform-espressif8266.git#feature/stage -build_flags = ${esp82xx_defaults.build_flags} - -Wl,-Tesp8266.flash.1m.ld - -DBEARSSL_SSL_BASIC -; NONOSDK221 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK221 -; NONOSDK22x_190313 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190313 -; NONOSDK22x_190703 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_190703 -; NONOSDK22x_191024 -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191024 -; NONOSDK22x_191105 - -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK22x_191105 -; NONOSDK3V0 (known issues) -; -DPIO_FRAMEWORK_ARDUINO_ESPRESSIF_SDK3 -; lwIP 1.4 -; -DPIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH -; lwIP 2 - Low Memory -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY -; lwIP 2 - Higher Bandwidth -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH -; lwIP 2 - Higher Bandwidth Low Memory no Features -; -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY_LOW_FLASH -; lwIP 2 - Higher Bandwidth no Features - -DPIO_FRAMEWORK_ARDUINO_LWIP2_HIGHER_BANDWIDTH_LOW_FLASH -; VTABLES in Flash (default) - -DVTABLES_IN_FLASH -; VTABLES in Heap -; -DVTABLES_IN_DRAM -; VTABLES in IRAM -; -DVTABLES_IN_IRAM -; enable one option set -> No exception recommended -; No exception code in firmware - -fno-exceptions - -lstdc++ -; Exception code in firmware /needs much space! 90k -; -fexceptions -; -lstdc++-exc - -[env:tasmota] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-debug] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_type = debug -check_tool = cppcheck, clangtidy -check_flags = - clangtidy: --check=-*,performance-*,clang-analyzer-* --fix -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-minimal] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DFIRMWARE_MINIMAL -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-basic] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DFIRMWARE_BASIC -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-knx] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DFIRMWARE_KNX_NO_EMULATION -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-sensors] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DFIRMWARE_SENSORS -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-display] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DFIRMWARE_DISPLAYS -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-ir] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DUSE_IR_REMOTE_FULL -DFIRMWARE_IR -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-ircustom] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DUSE_IR_REMOTE_FULL -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-BG] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=bg-BG -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-BR] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=pt-BR -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-CN] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=zh-CN -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-CZ] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=cs-CZ -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-DE] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=de-DE -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-ES] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=es-ES -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-FR] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=fr-FR -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-GR] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=el-GR -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-HE] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=he-HE -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-HU] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=hu-HU -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-IT] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=it-IT -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-KO] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=ko-KO -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-NL] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=nl-NL -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-PL] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=pl-PL -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-PT] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=pt-PT -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-RU] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=ru-RU -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-SE] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=sv-SE -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-SK] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=sk-SK -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-TR] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=tr-TR -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-TW] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=zh-TW -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} - -[env:tasmota-UK] -platform = ${common.platform} -framework = ${common.framework} -platform_packages = ${common.platform_packages} -board = ${common.board} -board_build.flash_mode = ${common.board_build.flash_mode} -board_build.f_cpu = ${common.board_build.f_cpu} -build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags} -DMY_LANGUAGE=uk-UK -monitor_speed = ${common.monitor_speed} -upload_port = ${common.upload_port} -upload_resetmethod = ${common.upload_resetmethod} -upload_speed = ${common.upload_speed} -extra_scripts = ${common.extra_scripts} From 92c8e862f43842ee3c82a6a322c169535f48d24e Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 17:04:37 +0100 Subject: [PATCH 07/13] Update platformio_override_sample.ini --- platformio_override_sample.ini | 2 ++ 1 file changed, 2 insertions(+) diff --git a/platformio_override_sample.ini b/platformio_override_sample.ini index 0285242eb..18febe513 100644 --- a/platformio_override_sample.ini +++ b/platformio_override_sample.ini @@ -7,6 +7,7 @@ ; Please visit documentation for the other options and examples ; http://docs.platformio.org/en/stable/projectconf.html +[platformio] ; *** Build/upload environment default_envs = @@ -24,6 +25,7 @@ default_envs = [common] ; *** Use settings from file user_config_override.h +build_flags = -DUSE_CONFIG_OVERRIDE ; *** Upload Serial reset method for Wemos and NodeMCU From 43cc365147dbd0d388c24fd8739bb8fcd76f218c Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 17:04:47 +0100 Subject: [PATCH 08/13] Update platformio_override_sample.ini From 472318b685501c5bb5f4b4324596bca655d000ca Mon Sep 17 00:00:00 2001 From: Jason2866 Date: Thu, 28 Nov 2019 17:42:00 +0100 Subject: [PATCH 09/13] Update platformio_override_sample.ini --- platformio_override_sample.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platformio_override_sample.ini b/platformio_override_sample.ini index 18febe513..bd4ed2a13 100644 --- a/platformio_override_sample.ini +++ b/platformio_override_sample.ini @@ -25,7 +25,7 @@ default_envs = [common] ; *** Use settings from file user_config_override.h -build_flags = +build_flags = ${core_active.build_flags} -DUSE_CONFIG_OVERRIDE ; *** Upload Serial reset method for Wemos and NodeMCU From 96a0f5b1ff8f345b2b27a6a5511814d6d6aa661f Mon Sep 17 00:00:00 2001 From: Hadinger Date: Thu, 28 Nov 2019 21:07:59 +0100 Subject: [PATCH 10/13] Fix postpone saving settings to flash until Fade is complete, avoids pause in Fade --- tasmota/CHANGELOG.md | 1 + tasmota/xdrv_04_light.ino | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/tasmota/CHANGELOG.md b/tasmota/CHANGELOG.md index 2d0acc894..8934d00ee 100644 --- a/tasmota/CHANGELOG.md +++ b/tasmota/CHANGELOG.md @@ -6,6 +6,7 @@ - Change new Fade system much smoother, Speed now up to 40 (#6942, #3714) - Fix Arduino IDE function prototyping compile error (#6982) - Change update lib IRremoteESP8266 updated to v2.7.1, -2.7k flash and -1.5k RAM for Tasmota-IR +- Fix postpone saving settings to flash until Fade is complete, avoids pause in Fade ### 7.0.0.5 20191118 diff --git a/tasmota/xdrv_04_light.ino b/tasmota/xdrv_04_light.ino index 3e06446ec..67fd0788a 100644 --- a/tasmota/xdrv_04_light.ino +++ b/tasmota/xdrv_04_light.ino @@ -1795,6 +1795,12 @@ void LightApplyFade(void) { // Note: Settings.light_speed is the number of half-seconds for a 100% fade, // i.e. light_speed=1 means 1024 steps in 10 ticks (500ms) Light.fade_duration = (distance * Settings.light_speed * 10) / 1024; + // Also postpone the save_data for the duration of the Fade (in seconds) + uint32_t delay_seconds = 1 + (Light.fade_duration + 19) / 20; // add one more second + // AddLog_P2(LOG_LEVEL_INFO, PSTR("delay_seconds %d, save_data_counter %d"), delay_seconds, save_data_counter); + if (save_data_counter < delay_seconds) { + save_data_counter = delay_seconds; // pospone + } } else { // no fade needed, we keep the duration at zero, it will fallback directly to end of fade } From 211f9da68b7f454afc268bdb0fb11ab2fa1a8865 Mon Sep 17 00:00:00 2001 From: Hadinger Date: Thu, 28 Nov 2019 21:25:11 +0100 Subject: [PATCH 11/13] auto--power on/off when setting channel to non-zero or zero value, when SetOption68 1 --- tasmota/CHANGELOG.md | 1 + tasmota/xdrv_04_light.ino | 39 ++++++++++++++++++--------------------- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/tasmota/CHANGELOG.md b/tasmota/CHANGELOG.md index 2d0acc894..0444fba6b 100644 --- a/tasmota/CHANGELOG.md +++ b/tasmota/CHANGELOG.md @@ -6,6 +6,7 @@ - Change new Fade system much smoother, Speed now up to 40 (#6942, #3714) - Fix Arduino IDE function prototyping compile error (#6982) - Change update lib IRremoteESP8266 updated to v2.7.1, -2.7k flash and -1.5k RAM for Tasmota-IR +- Fix auto--power on/off when setting channel to non-zero or zero value, when SetOption68 1 ### 7.0.0.5 20191118 diff --git a/tasmota/xdrv_04_light.ino b/tasmota/xdrv_04_light.ino index 3e06446ec..07e5d23a1 100644 --- a/tasmota/xdrv_04_light.ino +++ b/tasmota/xdrv_04_light.ino @@ -1444,27 +1444,24 @@ void LightPreparePower(power_t channels = 0xFFFFFFFF) { // 1 = only RGB, 2 = #endif // If multi-channels, then we only switch off channels with a value of zero if (Light.pwm_multi_channels) { -// for (uint32_t i = 0; i < Light.subtype; i++) { -// // if channel is non-null, channel is supposed to be on, but it is off, do Power On -// if ((Light.current_color[i]) && (bitRead(Light.power, i)) && (0 == bitRead(power, i + Light.device - 1))) { -// ExecuteCommandPower(Light.device + i, POWER_ON_NO_STATE, SRC_LIGHT); -// //bitSet(Settings.power, i + Light.device - 1); -// #ifdef DEBUG_LIGHT -// AddLog_P2(LOG_LEVEL_DEBUG, "ExecuteCommandPower ON device=%d", Light.device + i); -// #endif -// } -// // if channel is zero and channel is on, set it off -// if ((0 == Light.current_color[i]) && bitRead(power, i + Light.device - 1)) { -// ExecuteCommandPower(Light.device + i, POWER_OFF_NO_STATE, SRC_LIGHT); -// //bitClear(Settings.power, i + Light.device - 1); -// #ifdef DEBUG_LIGHT -// AddLog_P2(LOG_LEVEL_DEBUG, "ExecuteCommandPower OFF device=%d", Light.device + i); -// #endif -// } -// #ifdef USE_DOMOTICZ -// DomoticzUpdatePowerState(Light.device + i); -// #endif // USE_DOMOTICZ -// } + for (uint32_t i = 0; i < Light.subtype; i++) { + if (bitRead(channels, i)) { + // if channel is non-null, channel is supposed to be on, but it is off, do Power On + if ((Light.current_color[i]) && (!bitRead(Light.power, i))) { + if (!Settings.flag.not_power_linked) { // SetOption20 - Control power in relation to Dimmer/Color/Ct changes + ExecuteCommandPower(Light.device + i, POWER_ON_NO_STATE, SRC_LIGHT); + } + } else { + // if channel is zero and channel is on, set it off + if ((0 == Light.current_color[i]) && bitRead(Light.power, i)) { + ExecuteCommandPower(Light.device + i, POWER_OFF_NO_STATE, SRC_LIGHT); + } + } + #ifdef USE_DOMOTICZ + DomoticzUpdatePowerState(Light.device + i); + #endif // USE_DOMOTICZ + } + } } else { if (light_controller.isCTRGBLinked()) { // linked, standard if (light_state.getBri() && !(Light.power)) { From 68a24eb1f22ea05dabc0da939bd2442d0df18e4e Mon Sep 17 00:00:00 2001 From: Theo Arends <11044339+arendst@users.noreply.github.com> Date: Thu, 28 Nov 2019 22:10:46 +0100 Subject: [PATCH 12/13] DIsable cache --- .travis.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index ee82b6f06..911f3423e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,10 +7,7 @@ install: - platformio upgrade - platformio update -cache: - directories: - - .cache - - $HOME/.platformio +cache: false env: - ENV=tasmota From 62f25474d07a9b48798a3e322b679daea05f0494 Mon Sep 17 00:00:00 2001 From: Theo Arends <11044339+arendst@users.noreply.github.com> Date: Thu, 28 Nov 2019 22:38:40 +0100 Subject: [PATCH 13/13] Update RELEASENOTES.md --- RELEASENOTES.md | 66 +++++++++++++++++++++++++++---------------------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index a07bd3e5e..afb4c18ee 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -128,33 +128,39 @@ The following binary downloads have been compiled with ESP8266/Arduino library c ### Version 7.1.0 Betty - - Remove update support for versions before 6.0 - - Remove driver xsns_12_ads1115_i2cdev replaced by xsns_12_ads1115 - - Remove most IR protocols from non dedicated IR firmware except NEC, RC5 and RC6 - - Change repository name from Sonoff-Tasmota to Tasmota and all code references from Sonoff to Tasmota - - Change default GUI to dark theme - - Change ArduinoSlave to TasmotaSlave - - Change IRremoteESP8266 library to v2.7.0 - - Change supported PCF8574 I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time - - Change supported PCF8574A I2C address range to 0x39 - 0x3F allowing other I2C devices with address 0x38 to be used at the same time - - Change supported MCP230xx I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time - - Change Reset erase end address from as seen by SDK (getFlashChipSize) to full flash size (getFlashChipRealSize) - - Fix better control of RGB/White when ``SetOption37`` >128, added ``Dimmer1`` and ``Dimmer2`` commands (#6714) - - Fix random crash caused by UPNP flood - - Fix Wifi instability when light is on, due to sleep=0 (#6961, #6608) - - Add support for Tuya battery powered devices (#6735) - - Add support for Honeywell I2C HIH series Humidity and Temperetaure sensor (#6808) - - Add support for Honeywell HPMA115S0 particle concentration sensor by David Hunt (#6843) - - Add support for I2C sensor TLS2591 Light Intensity sensor (#6873) - - Add command ``SetOption73 0/1`` to re-enable HTTP Cross-Origin Resource Sharing (CORS) now default disabled (#6767) - - Add command ``SetOption74 0/1`` to enable DS18x20 internal pull-up and remove define DS18B20_INTERNAL_PULLUP (#6795) - - Add command ``SetOption75 0/1`` to switch between grouptopic (0) using fulltopic replacing %topic% or (1) is cmnd/\ (#6779) - - Add command ``SetOption76 0/1`` to enable incrementing bootcount when deepsleep is enabled (#6930) - - Add command ``I2cDriver`` for I2C driver runtime control using document I2CDEVICES.md - - Add command ``TempOffset -12.6 .. 12.6`` to set global temperature sensor offset (#6958) - - Add command ``WebColor19`` to control color of Module and Name (#6811) - - Add command ``WifiPower 0 .. 20.5`` to set Wifi Output Power which will be default set to 17dBm - - Add frequency to ADE7953 energy monitor as used in Shelly 2.5 by ljakob (#6778) - - Add hide Alexa objects with friendlyname starting with '$' (#6722, #6762) - - Add Zigbee command support, considered as v1.0 for full Zigbee support - - Add colorpicker to WebUI by Christian Staars (#6984) +- Remove update support for versions before 6.0 +- Remove driver xsns_12_ads1115_i2cdev replaced by xsns_12_ads1115 +- Remove most IR protocols from non dedicated IR firmware except NEC, RC5 and RC6 +- Change repository name from Sonoff-Tasmota to Tasmota and all code references from Sonoff to Tasmota +- Change documentation from wiki to [documentation repository](https://tasmota.github.io/docs/) by @Blakadder +- Change default GUI to dark theme +- Change ArduinoSlave to TasmotaSlave +- Change IRremoteESP8266 library to v2.7.1 +- Change supported PCF8574 I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time +- Change supported PCF8574A I2C address range to 0x39 - 0x3F allowing other I2C devices with address 0x38 to be used at the same time +- Change supported MCP230xx I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time +- Change Reset erase end address from as seen by SDK (getFlashChipSize) to full flash size (getFlashChipRealSize) +- Change new Fade system much smoother, Speed now up to 40 (#6942, #3714) +- Fix better control of RGB/White when ``SetOption37`` >128, added ``Dimmer1`` and ``Dimmer2`` commands (#6714) +- Fix random crash caused by UPNP flood +- Fix check deepsleep for valid values in Settings (#6961) +- Fix Wifi instability when light is on, due to ``Sleep 0`` (#6961, #6608) +- Fix auto-power on/off when setting channel to non-zero or zero value, when ``SetOption68 1`` +- Fix postpone saving settings to flash until Fade is complete, avoids pause in Fade +- Add support for Tuya battery powered devices (#6735) +- Add support for Honeywell I2C HIH series Humidity and Temperetaure sensor (#6808) +- Add support for Honeywell HPMA115S0 particle concentration sensor by David Hunt (#6843) +- Add support for I2C sensor TLS2591 Light Intensity sensor (#6873) +- Add command ``SetOption73 0/1`` to re-enable HTTP Cross-Origin Resource Sharing (CORS) now default disabled (#6767) +- Add command ``SetOption74 0/1`` to enable DS18x20 internal pull-up and remove define DS18B20_INTERNAL_PULLUP (#6795) +- Add command ``SetOption75 0/1`` to switch between grouptopic (0) using fulltopic replacing %topic% or (1) is cmnd/\ (#6779) +- Add command ``SetOption76 0/1`` to enable incrementing bootcount when deepsleep is enabled (#6930) +- Add command ``I2cDriver`` for I2C driver runtime control using document I2CDEVICES.md +- Add command ``TempOffset -12.6 .. 12.6`` to set global temperature sensor offset (#6958) +- Add command ``WebColor19`` to control color of Module and Name (#6811) +- Add command ``WifiPower 0 .. 20.5`` to set Wifi Output Power which will be default set to 17dBm +- Add frequency to ADE7953 energy monitor as used in Shelly 2.5 by ljakob (#6778) +- Add hide Alexa objects with friendlyname starting with '$' (#6722, #6762) +- Add Zigbee command support, considered as v1.0 for full Zigbee support +- Add hardware detection to be overruled with ``SetOption51`` (#6969) +- Add Colorpicker to WebUI by Christian Staars (#6984)