From f9c702f8ebe388a5aef890a8647efea1c6c94d41 Mon Sep 17 00:00:00 2001 From: Theo Arends Date: Wed, 25 Apr 2018 12:06:53 +0200 Subject: [PATCH] v5.12.0m - Add MQTT_TELE_RETAIN 5.12.0m * Add define MQTT_TELE_RETAIN compile option default set to 0 (#1071) --- platformio.ini | 361 ++++++++++++++++++++++++++++++--------- sonoff/_releasenotes.ino | 1 + sonoff/sonoff.ino | 4 +- sonoff/user_config.h | 3 + sonoff/xdrv_10_rules.ino | 2 + 5 files changed, 292 insertions(+), 79 deletions(-) diff --git a/platformio.ini b/platformio.ini index c74fe3c8d..39a9e974d 100644 --- a/platformio.ini +++ b/platformio.ini @@ -33,13 +33,23 @@ src_dir = sonoff [env:sonoff] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -52,7 +62,7 @@ monitor_baud = 115200 ; *** Upload file to OTA server using SCP ;upload_port = user@host:/path -;extra_scripts = pio/sftp-uploader.py +;extra_scripts = pio/strip-floats.py, pio/sftp-uploader.py ; *** Upload file to OTA server using HTTP ;upload_port = domus1:80/api/upload-arduino.php @@ -60,14 +70,24 @@ monitor_baud = 115200 [env:sonoff-minimal] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DBE_MINIMAL -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DBE_MINIMAL -DUSE_CONFIG_OVERRIDE +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DBE_MINIMAL +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; Serial Monitor options @@ -75,13 +95,24 @@ monitor_baud = 115200 [env:sonoff-classic] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_CLASSIC -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_CLASSIC -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DUSE_CLASSIC +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; Serial Monitor options @@ -89,13 +120,24 @@ monitor_baud = 115200 [env:sonoff-knx] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_KNX_NO_EMULATION -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_KNX_NO_EMULATION -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DUSE_KNX_NO_EMULATION +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; Serial Monitor options @@ -103,13 +145,24 @@ monitor_baud = 115200 [env:sonoff-allsensors] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_ALL_SENSORS -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_ALL_SENSORS -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DUSE_ALL_SENSORS +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; Serial Monitor options @@ -117,13 +170,24 @@ monitor_baud = 115200 [env:sonoff-BG] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=bg-BG -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=bg-BG -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=bg-BG +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -131,13 +195,24 @@ monitor_baud = 115200 [env:sonoff-CN] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=zh-CN -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=zh-CN -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=zh-CN +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -145,13 +220,24 @@ monitor_baud = 115200 [env:sonoff-CZ] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=cs-CZ -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=cs-CZ -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=cs-CZ +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -159,13 +245,24 @@ monitor_baud = 115200 [env:sonoff-DE] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=de-DE -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=de-DE -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=de-DE +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -173,13 +270,24 @@ monitor_baud = 115200 [env:sonoff-ES] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=es-AR -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=es-AR -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=es-AR +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -187,13 +295,24 @@ monitor_baud = 115200 [env:sonoff-FR] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=fr-FR -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=fr-FR -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=fr-FR +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -201,13 +320,24 @@ monitor_baud = 115200 [env:sonoff-GR] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=el-GR -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=el-GR -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=el-GR +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -215,13 +345,24 @@ monitor_baud = 115200 [env:sonoff-HU] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=hu-HU -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=hu-HU -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=hu-HU +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -229,13 +370,24 @@ monitor_baud = 115200 [env:sonoff-IT] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=it-IT -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=it-IT -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=it-IT +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -243,13 +395,24 @@ monitor_baud = 115200 [env:sonoff-NL] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=nl-NL -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=nl-NL -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=nl-NL +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -257,13 +420,24 @@ monitor_baud = 115200 [env:sonoff-PL] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=pl-PL -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=pl-PL -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=pl-PL +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -271,13 +445,24 @@ monitor_baud = 115200 [env:sonoff-PT] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=pt-PT -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=pt-PT -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=pt-PT +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -285,13 +470,24 @@ monitor_baud = 115200 [env:sonoff-RU] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=ru-RU -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=ru-RU -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=ru-RU +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options @@ -299,13 +495,24 @@ monitor_baud = 115200 [env:sonoff-TW] ;platform = espressif8266@1.5.0 ; v2.3.0 -;platform = espressif8266@1.6.0 ; v2.4.0 -platform = espressif8266 +platform = espressif8266@1.6.0 ; v2.4.0 +;platform = espressif8266@1.7.0 ; v2.4.1 +;platform = espressif8266 framework = arduino board = esp01_1m board_flash_mode = dout -build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=zh-TW -;build_flags = -Wl,-Tesp8266.flash.1m0.ld -DMY_LANGUAGE=zh-TW -DUSE_CONFIG_OVERRIDE + +; *** Fix espressif8266@1.7.0 induced undesired all warnings +build_unflags = -Wall + +build_flags = + -Wl,-Tesp8266.flash.1m0.ld + -DVTABLES_IN_FLASH + -DPIO_FRAMEWORK_ARDUINO_LWIP2_LOW_MEMORY + -DMY_LANGUAGE=zh-TW +; -DUSE_CONFIG_OVERRIDE + +; *** Fix Esp/Arduino core 2.4.x induced Tasmota unused floating point includes extra_scripts = pio/strip-floats.py ; *** Serial Monitor options diff --git a/sonoff/_releasenotes.ino b/sonoff/_releasenotes.ino index 454f24137..c56d6fda0 100644 --- a/sonoff/_releasenotes.ino +++ b/sonoff/_releasenotes.ino @@ -3,6 +3,7 @@ * Remove sonoff-xxl * Add sonoff-classic, sonoff-allsensors and sonoff-knx * Add some coloring to important web buttons + * Add define MQTT_TELE_RETAIN compile option default set to 0 (#1071) * Add user selectable defines for Sunrise/set Dawn option (#2378) * Add random window to timers (#2447) * Add optional KNX IP Protocol Support (#2402) diff --git a/sonoff/sonoff.ino b/sonoff/sonoff.ino index 4bb89b6e6..71a2a33d4 100644 --- a/sonoff/sonoff.ino +++ b/sonoff/sonoff.ino @@ -1459,10 +1459,10 @@ void PerformEverySecond() mqtt_data[0] = '\0'; MqttShowState(); - MqttPublishPrefixTopic_P(TELE, PSTR(D_RSLT_STATE)); + MqttPublishPrefixTopic_P(TELE, PSTR(D_RSLT_STATE), MQTT_TELE_RETAIN); mqtt_data[0] = '\0'; - if (MqttShowSensor()) MqttPublishPrefixTopic_P(TELE, PSTR(D_RSLT_SENSOR), Settings.flag.mqtt_sensor_retain); + if (MqttShowSensor()) { MqttPublishPrefixTopic_P(TELE, PSTR(D_RSLT_SENSOR), Settings.flag.mqtt_sensor_retain); } } } diff --git a/sonoff/user_config.h b/sonoff/user_config.h index 92dd23dda..6bfa6e1cd 100644 --- a/sonoff/user_config.h +++ b/sonoff/user_config.h @@ -191,6 +191,9 @@ // Alternative MQTT driver does not block network when MQTT server is unavailable. No TLS support //#define MQTT_LIBRARY_TYPE MQTT_ESPMQTTARDUINO // Use (patched) esp-mqtt-arduino library (+4k8 code, +4k mem) - non-TLS only +// -- MQTT ---------------------------------------- +#define MQTT_TELE_RETAIN 0 // Tele messages may send retain flag (0 = off, 1 = on) + // -- MQTT - Domoticz ----------------------------- #define USE_DOMOTICZ // Enable Domoticz (+6k code, +0.3k mem) #define DOMOTICZ_IN_TOPIC "domoticz/in" // Domoticz Input Topic diff --git a/sonoff/xdrv_10_rules.ino b/sonoff/xdrv_10_rules.ino index 2697f3d32..afe6baa18 100644 --- a/sonoff/xdrv_10_rules.ino +++ b/sonoff/xdrv_10_rules.ino @@ -63,7 +63,9 @@ #define MAX_RULE_TIMERS 8 +#ifndef ULONG_MAX #define ULONG_MAX 0xffffffffUL +#endif #define D_CMND_RULE "Rule" #define D_CMND_RULETIMER "RuleTimer"