From 09f0b89ab0030aa4dd953874372f2431dbde4419 Mon Sep 17 00:00:00 2001 From: SteWers <42718143+SteWers@users.noreply.github.com> Date: Sun, 8 Dec 2024 21:19:01 +0100 Subject: [PATCH 1/3] Language improvements (#22607) Some language improvements --- tasmota/language/af_AF.h | 5 +++-- tasmota/language/bg_BG.h | 5 +++-- tasmota/language/ca_AD.h | 5 +++-- tasmota/language/cs_CZ.h | 5 +++-- tasmota/language/de_DE.h | 9 +++++---- tasmota/language/el_GR.h | 5 +++-- tasmota/language/en_GB.h | 5 +++-- tasmota/language/es_ES.h | 5 +++-- tasmota/language/fr_FR.h | 5 +++-- tasmota/language/fy_NL.h | 5 +++-- tasmota/language/he_HE.h | 5 +++-- tasmota/language/hu_HU.h | 5 +++-- tasmota/language/it_IT.h | 5 +++-- tasmota/language/ko_KO.h | 5 +++-- tasmota/language/nl_NL.h | 5 +++-- tasmota/language/pl_PL.h | 5 +++-- tasmota/language/pt_BR.h | 5 +++-- tasmota/language/pt_PT.h | 5 +++-- tasmota/language/ro_RO.h | 5 +++-- tasmota/language/ru_RU.h | 5 +++-- tasmota/language/sk_SK.h | 5 +++-- tasmota/language/sv_SE.h | 5 +++-- tasmota/language/tr_TR.h | 5 +++-- tasmota/language/uk_UA.h | 5 +++-- tasmota/language/vi_VN.h | 5 +++-- tasmota/language/zh_CN.h | 5 +++-- tasmota/language/zh_TW.h | 5 +++-- tasmota/tasmota_xdrv_driver/xdrv_01_9_webserver.ino | 2 +- tasmota/tasmota_xdrv_driver/xdrv_79_esp32_ble.ino | 4 ++-- 29 files changed, 86 insertions(+), 59 deletions(-) diff --git a/tasmota/language/af_AF.h b/tasmota/language/af_AF.h index c94c35a22..e0a26ee7a 100644 --- a/tasmota/language/af_AF.h +++ b/tasmota/language/af_AF.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Luggehalte" #define D_AP "AP" // Access Point #define D_AS "as" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/bg_BG.h b/tasmota/language/bg_BG.h index e4adb6dbb..f0b317798 100644 --- a/tasmota/language/bg_BG.h +++ b/tasmota/language/bg_BG.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Качество на въздуха" #define D_AP "Точка за достъп" // Access Point #define D_AS "като" +#define D_AT "at" #define D_AUTO "АВТОМАТИЧНО" #define D_BATTERY "Battery" #define D_BATT "Бат." // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/ca_AD.h b/tasmota/language/ca_AD.h index 5c4638ddc..abcb53f07 100644 --- a/tasmota/language/ca_AD.h +++ b/tasmota/language/ca_AD.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Qualitat Aire" #define D_AP "PA" // Access Point #define D_AS "com" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Bat" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/cs_CZ.h b/tasmota/language/cs_CZ.h index f09bb97d3..d776d1111 100644 --- a/tasmota/language/cs_CZ.h +++ b/tasmota/language/cs_CZ.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Kvalita vzduchu" #define D_AP "AP" // Access Point #define D_AS "jako" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/de_DE.h b/tasmota/language/de_DE.h index f6f5d16af..4c43ec325 100644 --- a/tasmota/language/de_DE.h +++ b/tasmota/language/de_DE.h @@ -28,7 +28,7 @@ * Use online command StateText to translate ON, OFF, HOLD and TOGGLE. * Use online command Prefix to translate cmnd, stat and tele. * - * Updated until v14.3.0.7 - Last update 07.12.2024 + * Updated until v14.3.0.7 - Last update 08.12.2024 \*********************************************************************/ //#define LANGUAGE_MODULE_NAME // Enable to display "Module Generic" (ie Spanish), Disable to display "Generic Module" (ie English) @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Luftqualität" #define D_AP "AP" // Access Point #define D_AS "als" +#define D_AT "an" #define D_AUTO "AUTO" #define D_BATTERY "Batterie" #define D_BATT "Batt" // Short for Battery @@ -571,10 +572,10 @@ #define D_THERMOSTAT_AUTOTUNE_HYBRID "Autotune (Hybrid)" // xdrv_79_esp32_ble.ino -#define D_CONFIGURE_BLE "BLE Einstellungen" +#define D_CONFIGURE_BLE "BLE" #define D_BLE_PARAMETERS "BLE Parameter" -#define D_MQTT_BLE_ENABLE "BLE aktivieren" -#define D_MQTT_BLE_ACTIVESCAN "Aktiv scannen (*)" +#define D_BLE_ENABLE "BLE aktivieren" +#define D_BLE_ACTIVESCAN "Aktiv scannen (*)" #define D_BLE_DEVICES "Erkannte Geräte" #define D_BLE_REMARK "Mit (*) markierte Geräte werden nicht gespeichert." diff --git a/tasmota/language/el_GR.h b/tasmota/language/el_GR.h index cfe3e1a39..4a75cae60 100644 --- a/tasmota/language/el_GR.h +++ b/tasmota/language/el_GR.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Ποιότητα αέρα" #define D_AP "AP" // Access Point #define D_AS "ως" +#define D_AT "at" #define D_AUTO "ΑΥΤΟΜΑΤΟ" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/en_GB.h b/tasmota/language/en_GB.h index ccf249610..19312fd4e 100644 --- a/tasmota/language/en_GB.h +++ b/tasmota/language/en_GB.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Air quality" #define D_AP "AP" // Access Point #define D_AS "as" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/es_ES.h b/tasmota/language/es_ES.h index ff49b3058..3d4ad847e 100644 --- a/tasmota/language/es_ES.h +++ b/tasmota/language/es_ES.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Calidad del Aire" #define D_AP "AP" // Access Point #define D_AS "como" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Bat" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/fr_FR.h b/tasmota/language/fr_FR.h index 1b07f5e8b..e87a1193c 100644 --- a/tasmota/language/fr_FR.h +++ b/tasmota/language/fr_FR.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Qualité de l'Air" #define D_AP "AP" // Access Point #define D_AS "comme" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/fy_NL.h b/tasmota/language/fy_NL.h index 189e2297a..e00a178c2 100644 --- a/tasmota/language/fy_NL.h +++ b/tasmota/language/fy_NL.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Luchtkwaliteit" #define D_AP "AP" // Access Point #define D_AS "als" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/he_HE.h b/tasmota/language/he_HE.h index 6a04467ac..1179797b6 100644 --- a/tasmota/language/he_HE.h +++ b/tasmota/language/he_HE.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "איכות אוויר" #define D_AP "AP" // Access Point #define D_AS "-כ" +#define D_AT "at" #define D_AUTO "אוטומטי" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/hu_HU.h b/tasmota/language/hu_HU.h index 9f07ff5cc..64b10fb22 100644 --- a/tasmota/language/hu_HU.h +++ b/tasmota/language/hu_HU.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Levegőminőség" #define D_AP "AP" // Access Point #define D_AS "mint" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/it_IT.h b/tasmota/language/it_IT.h index c18525eed..00254ca7a 100644 --- a/tasmota/language/it_IT.h +++ b/tasmota/language/it_IT.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Qualità dell'aria" #define D_AP "AP" // Access Point #define D_AS "come" +#define D_AT "in" #define D_AUTO "AUTO" #define D_BATTERY "Batteria" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "BLE" #define D_BLE_PARAMETERS "Impostazioni Bluetooth" -#define D_MQTT_BLE_ENABLE "Abilita Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Abilita scansione attiva (*)" +#define D_BLE_ENABLE "Abilita Bluetooth" +#define D_BLE_ACTIVESCAN "Abilita scansione attiva (*)" #define D_BLE_DEVICES "Scansione dispositivi" #define D_BLE_REMARK "gli elementi segnati con (*) non sono memorizzati in config" diff --git a/tasmota/language/ko_KO.h b/tasmota/language/ko_KO.h index d47bee947..314f246bc 100644 --- a/tasmota/language/ko_KO.h +++ b/tasmota/language/ko_KO.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "공기질" #define D_AP "AP" // Access Point #define D_AS "as" +#define D_AT "at" #define D_AUTO "자동" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/nl_NL.h b/tasmota/language/nl_NL.h index dac4c6eee..9a27938c9 100644 --- a/tasmota/language/nl_NL.h +++ b/tasmota/language/nl_NL.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Lucht kwaliteit" #define D_AP "AP" // Access Point #define D_AS "als" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/pl_PL.h b/tasmota/language/pl_PL.h index e48f1e00d..c1c9650ad 100644 --- a/tasmota/language/pl_PL.h +++ b/tasmota/language/pl_PL.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Jakość powietrza" #define D_AP "AP" // Access Point #define D_AS "jak" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Bateria" #define D_BATT "Bat" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Konfiguracja BLE" #define D_BLE_PARAMETERS "Ustawienia Bluetooth" -#define D_MQTT_BLE_ENABLE "Załącz Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Załącz Aktywne Skanowanie(*)" +#define D_BLE_ENABLE "Załącz Bluetooth" +#define D_BLE_ACTIVESCAN "Załącz Aktywne Skanowanie(*)" #define D_BLE_DEVICES "Znalezione Urządzenia" #define D_BLE_REMARK "rzeczy oznaczone (*) nie są zapisywane w konfiguracji" diff --git a/tasmota/language/pt_BR.h b/tasmota/language/pt_BR.h index 4dfaf2058..a940abfd6 100644 --- a/tasmota/language/pt_BR.h +++ b/tasmota/language/pt_BR.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Qualidade do ar" #define D_AP "Ponto de acesso" // Ponto de Acesso #define D_AS "como" +#define D_AT "at" #define D_AUTO "Auto" #define D_BATTERY "Battery" #define D_BATT "Bat" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/pt_PT.h b/tasmota/language/pt_PT.h index 4735ffe3f..fe4a4714d 100644 --- a/tasmota/language/pt_PT.h +++ b/tasmota/language/pt_PT.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Qualidade do Ar" #define D_AP "AP" // Ponto de Acesso #define D_AS "como" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/ro_RO.h b/tasmota/language/ro_RO.h index 96a0f506d..3408016a9 100644 --- a/tasmota/language/ro_RO.h +++ b/tasmota/language/ro_RO.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Calitatea aerului" #define D_AP "AP" // Access Point #define D_AS "as" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/ru_RU.h b/tasmota/language/ru_RU.h index 0a70d129c..ef655916d 100644 --- a/tasmota/language/ru_RU.h +++ b/tasmota/language/ru_RU.h @@ -57,6 +57,7 @@ #define D_AIR_QUALITY "Качество воздуха" #define D_AP "AP" // Access Point #define D_AS "как" +#define D_AT "at" #define D_AUTO "АВТО" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -574,8 +575,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/sk_SK.h b/tasmota/language/sk_SK.h index 91ba8d635..a906456cb 100644 --- a/tasmota/language/sk_SK.h +++ b/tasmota/language/sk_SK.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Kvalita vzduchu" #define D_AP "AP" // Access Point #define D_AS "ako" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/sv_SE.h b/tasmota/language/sv_SE.h index 8bf23eb8d..0d160b4f2 100644 --- a/tasmota/language/sv_SE.h +++ b/tasmota/language/sv_SE.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Luftkvalitet" #define D_AP "AP" // Access Point #define D_AS "som" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/tr_TR.h b/tasmota/language/tr_TR.h index d73fbd1ab..320c058cf 100644 --- a/tasmota/language/tr_TR.h +++ b/tasmota/language/tr_TR.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Hava Kalitesi" #define D_AP "AP" // Access Point #define D_AS "as" +#define D_AT "at" #define D_AUTO "OTOMATIK" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/uk_UA.h b/tasmota/language/uk_UA.h index 0cf2ac690..7d6471957 100644 --- a/tasmota/language/uk_UA.h +++ b/tasmota/language/uk_UA.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Якість повітря" #define D_AP "Точка доступу" // Access Point #define D_AS "як" +#define D_AT "at" #define D_AUTO "АВТО" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/vi_VN.h b/tasmota/language/vi_VN.h index 4b625a7c0..42c68305d 100644 --- a/tasmota/language/vi_VN.h +++ b/tasmota/language/vi_VN.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "Chất lượng không khí" #define D_AP "Mạng wifi" // Access Point #define D_AS "với tên gọi" +#define D_AT "at" #define D_AUTO "AUTO" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/zh_CN.h b/tasmota/language/zh_CN.h index 70d2c5d97..cd5692717 100644 --- a/tasmota/language/zh_CN.h +++ b/tasmota/language/zh_CN.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "空气质量" #define D_AP "AP" // Access Point #define D_AS "名称:" +#define D_AT "at" #define D_AUTO "自动" #define D_BATTERY "Battery" #define D_BATT "Batt" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/language/zh_TW.h b/tasmota/language/zh_TW.h index 2b721c2ab..29125d6ea 100644 --- a/tasmota/language/zh_TW.h +++ b/tasmota/language/zh_TW.h @@ -56,6 +56,7 @@ #define D_AIR_QUALITY "空氣品質" #define D_AP "存取點" // Access Point #define D_AS "名稱:" +#define D_AT "at" #define D_AUTO "自動" #define D_BATTERY "Battery" #define D_BATT "電池" // Short for Battery @@ -573,8 +574,8 @@ // xdrv_79_esp32_ble.ino #define D_CONFIGURE_BLE "Configure BLE" #define D_BLE_PARAMETERS "Bluetooth Settings" -#define D_MQTT_BLE_ENABLE "Enable Bluetooth" -#define D_MQTT_BLE_ACTIVESCAN "Enable Active Scan(*)" +#define D_BLE_ENABLE "Enable Bluetooth" +#define D_BLE_ACTIVESCAN "Enable Active Scan(*)" #define D_BLE_DEVICES "Devices Seen" #define D_BLE_REMARK "items marked (*) are not stored in config" diff --git a/tasmota/tasmota_xdrv_driver/xdrv_01_9_webserver.ino b/tasmota/tasmota_xdrv_driver/xdrv_01_9_webserver.ino index c3758c86c..e0b92a731 100644 --- a/tasmota/tasmota_xdrv_driver/xdrv_01_9_webserver.ino +++ b/tasmota/tasmota_xdrv_driver/xdrv_01_9_webserver.ino @@ -2845,7 +2845,7 @@ void HandleInformation(void) { WSContentSend_P(PSTR("}1" D_CORE_AND_SDK_VERSION "}2" ARDUINO_CORE_RELEASE "/%s"), ESP.getSdkVersion()); WSContentSend_P(PSTR("}1" D_UPTIME "}2%s"), GetUptime().c_str()); #ifdef ESP8266 - WSContentSend_P(PSTR("}1" D_FLASH_WRITE_COUNT "}2%d at 0x%X"), Settings->save_flag, GetSettingsAddress()); + WSContentSend_P(PSTR("}1" D_FLASH_WRITE_COUNT "}2%d " D_AT " 0x%X"), Settings->save_flag, GetSettingsAddress()); #endif // ESP8266 #ifdef ESP32 WSContentSend_P(PSTR("}1" D_FLASH_WRITE_COUNT "}2%d"), Settings->save_flag); diff --git a/tasmota/tasmota_xdrv_driver/xdrv_79_esp32_ble.ino b/tasmota/tasmota_xdrv_driver/xdrv_79_esp32_ble.ino index 0528d579f..81a6f779a 100644 --- a/tasmota/tasmota_xdrv_driver/xdrv_79_esp32_ble.ino +++ b/tasmota/tasmota_xdrv_driver/xdrv_79_esp32_ble.ino @@ -3573,8 +3573,8 @@ const char HTTP_BTN_MENU_BLE[] PROGMEM = const char HTTP_FORM_BLE[] PROGMEM = "
 " D_BLE_PARAMETERS " " "
" - "

" - "

" + "

" + "

" "

" D_BLE_REMARK "

"; From 23e5a4dec295c27140c4cd396a21fd587989739d Mon Sep 17 00:00:00 2001 From: Theo Arends <11044339+arendst@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:17:04 +0100 Subject: [PATCH 2/3] Change RG-15 sensor name from RG-15 to RG15 (#22612) --- CHANGELOG.md | 1 + RELEASENOTES.md | 1 + tasmota/tasmota_xsns_sensor/xsns_90_hrg15.ino | 2 +- 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 27277195b..bcdb4bba8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -29,6 +29,7 @@ All notable changes to this project will be documented in this file. - Prevent active BLE operations with unencrypted MI-format beacons (#22453) - ESP32 replaced NeoPixelBus with TasmotaLED (#22556) - ESP32 Platform from 2024.11.31 to 2024.12.30, Framework (Arduino Core) from v3.1.0.241117 to v3.1.0.241206 and IDF to 5.3.2 (#22600) +- RG-15 sensor name from RG-15 to RG15 (#22612) ### Fixed - ESP32 upgrade by file upload response based on file size (#22500) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 68f4116ac..c3af050ca 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -161,6 +161,7 @@ The latter links can be used for OTA upgrades too like ``OtaUrl https://ota.tasm - Redesign GUI adding feedback to buttons, shutters and lights - Add GUI submenu headers and refresh configuration button text (#22592) - Use command `WebButton1` to change GUI shutter 1 name +- RG-15 sensor name from RG-15 to RG15 [#22612](https://github.com/arendst/Tasmota/issues/22612) - Unit (k)VAr(h) to (k)var(h) [#22435](https://github.com/arendst/Tasmota/issues/22435) - AHT1X/AHT2X/AHT3X ready for virtual I2C [#22427](https://github.com/arendst/Tasmota/issues/22427) - SGP4X ready for virtual I2C [#22427](https://github.com/arendst/Tasmota/issues/22427) diff --git a/tasmota/tasmota_xsns_sensor/xsns_90_hrg15.ino b/tasmota/tasmota_xsns_sensor/xsns_90_hrg15.ino index ff5dc7775..1126b21bb 100644 --- a/tasmota/tasmota_xsns_sensor/xsns_90_hrg15.ino +++ b/tasmota/tasmota_xsns_sensor/xsns_90_hrg15.ino @@ -31,7 +31,7 @@ #define XSNS_90 90 -#define RG15_NAME "RG-15" +#define RG15_NAME "RG15" #define RG15_BAUDRATE 9600 #define RG15_READ_TIMEOUT 500 #define RG15_EVENT_TIMEOUT 60 From 71dfae2d9d642468fee4b0180a8e9f5085f77e0d Mon Sep 17 00:00:00 2001 From: Theo Arends <11044339+arendst@users.noreply.github.com> Date: Mon, 9 Dec 2024 15:16:30 +0100 Subject: [PATCH 3/3] Fix ESP8266 Device Group exception due to lack of stack space (#22271) --- CHANGELOG.md | 1 + RELEASENOTES.md | 7 +++--- tasmota/tasmota_support/support.ino | 10 ++++++--- tasmota/tasmota_support/support_command.ino | 22 +++++++++++++------ .../tasmota_xdrv_driver/xdrv_02_9_mqtt.ino | 3 ++- 5 files changed, 29 insertions(+), 14 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bcdb4bba8..08c46f65b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -41,6 +41,7 @@ All notable changes to this project will be documented in this file. - ESP32-C2 TasmotaLED from not present I2S to SPI (#22575) - KNX Scenes index change regression from v14.2.0.4 (#22405) - Add GUI submenu headers and refresh configuration button text (#22592) +- ESP8266 Device Group exception due to lack of stack space (#22271) ### Removed diff --git a/RELEASENOTES.md b/RELEASENOTES.md index c3af050ca..553ea8a4f 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -36,9 +36,9 @@ While fallback or downgrading is common practice it was never supported due to S This release will be supported from ESP8266/Arduino library Core version **2.7.8** due to reported security and stability issues on previous Core version. This will also support gzipped binaries. -This release will be supported from ESP32/Arduino library Core version **v3.1.0.240926**. +This release will be supported from ESP32/Arduino library Core version **v3.1.0.241206**. -Support of ESP8266 Core versions before 2.7.8 and ESP32 Core versions before v3.1.0.240926 have been removed. +Support of ESP8266 Core versions before 2.7.8 and ESP32 Core versions before v3.1.0.241206 have been removed. ## Support of TLS @@ -80,7 +80,7 @@ Historical binaries can be downloaded from The latter links can be used for OTA upgrades too like ``OtaUrl http://ota.tasmota.com/tasmota/release/tasmota.bin.gz`` ### ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-S2 and ESP32-S3 based -The following binary downloads have been compiled with ESP32/Arduino library core version **v3.1.0.240926**. +The following binary downloads have been compiled with ESP32/Arduino library core version **v3.1.0.241206**. - **tasmota32.bin** = The Tasmota version with most drivers including additional sensors and KNX for 4M+ flash. **RECOMMENDED RELEASE BINARY** - **tasmota32solo1.bin** = The Tasmota version with most drivers including additional sensors and KNX for single core ESP32 and 4M+ flash. @@ -188,6 +188,7 @@ The latter links can be used for OTA upgrades too like ``OtaUrl https://ota.tasm - Mitsubishi Electric HVAC Standby Stage for MiElHVAC [#22430](https://github.com/arendst/Tasmota/issues/22430) - EQ3 TRV firmware version 1.46 fails if the default true is used in subscribe on the notify characteristic [#22328](https://github.com/arendst/Tasmota/issues/22328) - Ethernet on -DFRAMEWORK_ARDUINO_ITEAD framework regression from v14.3.0 [#22367](https://github.com/arendst/Tasmota/issues/22367) +- ESP8266 Device Group exception due to lack of stack space (#22271)[#22271](https://github.com/arendst/Tasmota/issues/22271) - ESP32 Upgrade by file upload response based on file size [#22500](https://github.com/arendst/Tasmota/issues/22500) - ESP32 Arduino Core IPv6 zones used by Matter [#22378](https://github.com/arendst/Tasmota/issues/22378) - ESP32, ESP32-S2 and ESP32-S3 re-enable touch buttons [#22446](https://github.com/arendst/Tasmota/issues/22446) diff --git a/tasmota/tasmota_support/support.ino b/tasmota/tasmota_support/support.ino index b9619a90c..4dc5fdff2 100755 --- a/tasmota/tasmota_support/support.ino +++ b/tasmota/tasmota_support/support.ino @@ -2654,11 +2654,12 @@ void AddLogData(uint32_t loglevel, const char* log_data, const char* log_data_pa // Each entry has this format: [index][loglevel][log data]['\1'] // Truncate log messages longer than MAX_LOGSZ which is the log buffer size minus 64 spare + char *too_long = nullptr; uint32_t log_data_len = strlen(log_data) + strlen(log_data_payload) + strlen(log_data_retained); - char too_long[TOPSZ]; if (log_data_len > MAX_LOGSZ) { - snprintf_P(too_long, sizeof(too_long) - 20, PSTR("%s%s"), log_data, log_data_payload); // 20 = strlen("... 123456 truncated") - snprintf_P(too_long, sizeof(too_long), PSTR("%s... %d truncated"), too_long, log_data_len); + too_long = (char*)malloc(TOPSZ); // Use heap in favour of stack + snprintf_P(too_long, TOPSZ - 20, PSTR("%s%s"), log_data, log_data_payload); // 20 = strlen("... 123456 truncated") + snprintf_P(too_long, TOPSZ, PSTR("%s... %d truncated"), too_long, log_data_len); log_data = too_long; log_data_payload = empty; log_data_retained = empty; @@ -2679,6 +2680,9 @@ void AddLogData(uint32_t loglevel, const char* log_data, const char* log_data_pa } snprintf_P(TasmotaGlobal.log_buffer, LOG_BUFFER_SIZE, PSTR("%s%c%c%s%s%s%s\1"), TasmotaGlobal.log_buffer, TasmotaGlobal.log_buffer_pointer++, '0'+loglevel, mxtime, log_data, log_data_payload, log_data_retained); + if (too_long) { + free(too_long); + } TasmotaGlobal.log_buffer_pointer &= 0xFF; if (!TasmotaGlobal.log_buffer_pointer) { TasmotaGlobal.log_buffer_pointer++; // Index 0 is not allowed as it is the end of char string diff --git a/tasmota/tasmota_support/support_command.ino b/tasmota/tasmota_support/support_command.ino index 2c25cdd28..727da3273 100644 --- a/tasmota/tasmota_support/support_command.ino +++ b/tasmota/tasmota_support/support_command.ino @@ -348,6 +348,13 @@ void ExecuteCommand(const char *cmnd, uint32_t source) CommandHandler(stopic, svalue, strlen(svalue)); } +bool GetFallbackTopicFlag(char* topicBuf) { + // Use this function to free CommandHandler stack space from TOPSZ + char stemp1[TOPSZ]; + GetFallbackTopic_P(stemp1, ""); // Full Fallback topic = cmnd/DVES_xxxxxxxx_fb/ + return (!strncmp(topicBuf, stemp1, strlen(stemp1))); +} + /********************************************************************************************/ // topicBuf: /power1 dataBuf: toggle = Console command @@ -369,9 +376,7 @@ void CommandHandler(char* topicBuf, char* dataBuf, uint32_t data_len) { } } - char stemp1[TOPSZ]; - GetFallbackTopic_P(stemp1, ""); // Full Fallback topic = cmnd/DVES_xxxxxxxx_fb/ - TasmotaGlobal.fallback_topic_flag = (!strncmp(topicBuf, stemp1, strlen(stemp1))); + TasmotaGlobal.fallback_topic_flag = GetFallbackTopicFlag(topicBuf); char *type = strrchr(topicBuf, '/'); // Last part of received topic is always the command (type) @@ -416,11 +421,13 @@ void CommandHandler(char* topicBuf, char* dataBuf, uint32_t data_len) { } Response_P(PSTR("_1")); // Signal error message for either Command Error or Command Unknown - char number[12]; - char command_line[64]; - snprintf_P(command_line, sizeof(command_line), PSTR("%s%s%s%s"), + char stemp1[16]; +// char command_line[64]; +// snprintf_P(command_line, sizeof(command_line), PSTR("%s%s%s%s"), + char *command_line = (char*)malloc(64); // Use heap in favour of stack + snprintf_P(command_line, 64, PSTR("%s%s%s%s"), type, - (index != 1) ? itoa(index, number, 10) : "", + (index != 1) ? itoa(index, stemp1, 10) : "", (data_len) ? " " : "", (data_len) ? (binary_data) ? HexToString((uint8_t*)dataBuf, data_len).c_str() : EscapeJSONString(dataBuf).c_str() : ""); @@ -483,6 +490,7 @@ void CommandHandler(char* topicBuf, char* dataBuf, uint32_t data_len) { } ResponseAppend_P(PSTR(",\"Input\":\"%s\"}"), command_line); } + free(command_line); if (ResponseLength()) { if (TasmotaGlobal.no_mqtt_response){ // If it is activated, Tasmota will not publish MQTT messages, but it will proccess event trigger rules diff --git a/tasmota/tasmota_xdrv_driver/xdrv_02_9_mqtt.ino b/tasmota/tasmota_xdrv_driver/xdrv_02_9_mqtt.ino index 9fe1517a9..0e19c0c0e 100644 --- a/tasmota/tasmota_xdrv_driver/xdrv_02_9_mqtt.ino +++ b/tasmota/tasmota_xdrv_driver/xdrv_02_9_mqtt.ino @@ -566,7 +566,8 @@ bool MqttPublishLib(const char* topic, const uint8_t* payload, unsigned int plen MqttClient.endPublish(); - yield(); // #3313 +// yield(); // #3313 + delay(0); return true; }