From 67d24047fc66b59f2bc90a6c1ad39ea362726d51 Mon Sep 17 00:00:00 2001 From: Paul C Diem Date: Tue, 9 Mar 2021 13:41:14 -0600 Subject: [PATCH] Add device_group_tie in SettingsDefaultSet2 and show all groups --- tasmota/i18n.h | 2 +- tasmota/settings.ino | 3 +++ tasmota/support_command.ino | 10 ++++++++-- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/tasmota/i18n.h b/tasmota/i18n.h index 2a4000d98..061b240b4 100644 --- a/tasmota/i18n.h +++ b/tasmota/i18n.h @@ -330,7 +330,7 @@ #define D_CMND_DEVGROUP_SEND "DevGroupSend" #define D_CMND_DEVGROUP_SHARE "DevGroupShare" #define D_CMND_DEVGROUPSTATUS "DevGroupStatus" -#define D_CMND_DEVGROUP_DEVICE "DevGroupTie" +#define D_CMND_DEVGROUP_TIE "DevGroupTie" #define D_CMND_SERIALSEND "SerialSend" #define D_CMND_SERIALDELIMITER "SerialDelimiter" #define D_CMND_BAUDRATE "Baudrate" diff --git a/tasmota/settings.ino b/tasmota/settings.ino index db0b620fc..c1996da99 100644 --- a/tasmota/settings.ino +++ b/tasmota/settings.ino @@ -999,6 +999,9 @@ void SettingsDefaultSet2(void) { Settings.dimmer_step = DEFAULT_DIMMER_STEP; + // Device Groups + *(uint32_t *)&Settings.device_group_tie = 0x04030201; + // Display // Settings.display_model = 0; Settings.display_mode = 1; diff --git a/tasmota/support_command.ino b/tasmota/support_command.ino index 1a16279ad..d4b94a8c6 100644 --- a/tasmota/support_command.ino +++ b/tasmota/support_command.ino @@ -36,7 +36,7 @@ const char kTasmotaCommands[] PROGMEM = "|" // No prefix #ifdef USE_DEVICE_GROUPS_SEND D_CMND_DEVGROUP_SEND "|" #endif // USE_DEVICE_GROUPS_SEND - D_CMND_DEVGROUP_SHARE "|" D_CMND_DEVGROUPSTATUS "|" D_CMND_DEVGROUP_DEVICE "|" + D_CMND_DEVGROUP_SHARE "|" D_CMND_DEVGROUPSTATUS "|" D_CMND_DEVGROUP_TIE "|" #endif // USE_DEVICE_GROUPS D_CMND_SENSOR "|" D_CMND_DRIVER #ifdef ESP32 @@ -2138,7 +2138,13 @@ void CmndDevGroupTie(void) if (XdrvMailbox.data_len > 0) { Settings.device_group_tie[XdrvMailbox.index - 1] = XdrvMailbox.payload; } - ResponseCmndIdxNumber(Settings.device_group_tie[XdrvMailbox.index - 1]); + char * ptr = TasmotaGlobal.mqtt_data; + *ptr++ = '{'; + for (uint32_t i = 0; i < MAX_DEV_GROUP_NAMES; i++) { + ptr += sprintf(ptr, PSTR("\"%s%u\":%u,"), D_CMND_DEVGROUP_TIE, i + 1, Settings.device_group_tie[i]); + } + *(ptr - 1) = '}'; + *ptr = 0; } } #endif // USE_DEVICE_GROUPS