diff --git a/tasmota/settings.h b/tasmota/settings.h index 150e5558d..507efdf43 100644 --- a/tasmota/settings.h +++ b/tasmota/settings.h @@ -245,8 +245,8 @@ typedef union { uint32_t telegram_send_enable : 1; // bit 0 (v9.4.0.3) - CMND_TMSTATE 0/1 - Enable Telegram send uint32_t telegram_recv_enable : 1; // bit 1 (v9.4.0.3) - CMND_TMSTATE 2/3 - Enable Telegram receive uint32_t telegram_echo_enable : 1; // bit 2 (v9.4.0.3) - CMND_TMSTATE 4/5 - Enable Telegram echo - uint32_t spare03 : 1; // bit 3 - uint32_t spare04 : 1; // bit 4 + uint32_t range_extender : 1; // bit 3 (v9.5.0.5) - CMND_RGXSTATE - Enable range extender + uint32_t range_extender_napt : 1; // bit 4 (v9.5.0.5) - CMND_RGXNAPT - Enable range extender NAPT uint32_t spare05 : 1; // bit 5 uint32_t spare06 : 1; // bit 6 uint32_t spare07 : 1; // bit 7 @@ -599,8 +599,10 @@ typedef struct { uint16_t pulse_timer[MAX_PULSETIMERS]; // 532 uint16_t button_debounce; // 542 uint32_t ipv4_address[5]; // 544 + uint32_t ipv4_rgx_address; // 558 + uint32_t ipv4_rgx_subnetmask; // 55C - uint8_t free_558[100]; // 558 + uint8_t free_560[92]; // 560 SysMBitfield1 flag2; // 5BC unsigned long pulse_counter[MAX_COUNTERS]; // 5C0 diff --git a/tasmota/settings.ino b/tasmota/settings.ino index f751ede1d..a0a861f97 100644 --- a/tasmota/settings.ino +++ b/tasmota/settings.ino @@ -860,6 +860,8 @@ void SettingsDefaultSet2(void) { ParseIPv4(&Settings->ipv4_address[2], PSTR(WIFI_SUBNETMASK)); ParseIPv4(&Settings->ipv4_address[3], PSTR(WIFI_DNS)); ParseIPv4(&Settings->ipv4_address[4], PSTR(WIFI_DNS2)); + ParseIPv4(&Settings->ipv4_rgx_address, PSTR(WIFI_RGX_IP_ADDRESS)); + ParseIPv4(&Settings->ipv4_rgx_subnetmask, PSTR(WIFI_RGX_SUBNETMASK)); Settings->sta_config = WIFI_CONFIG_TOOL; // Settings->sta_active = 0; SettingsUpdateText(SET_STASSID1, PSTR(STA_SSID1)); @@ -867,6 +869,8 @@ void SettingsDefaultSet2(void) { SettingsUpdateText(SET_STAPWD1, PSTR(STA_PASS1)); SettingsUpdateText(SET_STAPWD2, PSTR(STA_PASS2)); SettingsUpdateText(SET_HOSTNAME, WIFI_HOSTNAME); + SettingsUpdateText(SET_RGX_SSID, PSTR(WIFI_RGX_SSID)); + SettingsUpdateText(SET_RGX_PASSWORD, PSTR(WIFI_RGX_PASSWORD)); // Syslog SettingsUpdateText(SET_SYSLOG_HOST, PSTR(SYS_LOG_HOST)); @@ -1381,6 +1385,12 @@ void SettingsDelta(void) { Settings->energy_kWhtotal = Settings->ipv4_address[4]; ParseIPv4(&Settings->ipv4_address[4], PSTR(WIFI_DNS2)); } + if (Settings->version < 0x09050005) { + ParseIPv4(&Settings->ipv4_rgx_address, PSTR(WIFI_RGX_IP_ADDRESS)); + ParseIPv4(&Settings->ipv4_rgx_subnetmask, PSTR(WIFI_RGX_SUBNETMASK)); + SettingsUpdateText(SET_RGX_SSID, PSTR(WIFI_RGX_SSID)); + SettingsUpdateText(SET_RGX_PASSWORD, PSTR(WIFI_RGX_PASSWORD)); + } Settings->version = VERSION; SettingsSave(1); diff --git a/tasmota/tasmota.h b/tasmota/tasmota.h index 0fc1b662c..86f2143b6 100644 --- a/tasmota/tasmota.h +++ b/tasmota/tasmota.h @@ -368,6 +368,7 @@ enum SettingsTextIndex { SET_OTAURL, SET_SWITCH_TXT25, SET_SWITCH_TXT26, SET_SWITCH_TXT27, SET_SWITCH_TXT28, // MAX_SWITCHES_TXT #endif // ESP32 SET_SHD_PARAM, + SET_RGX_SSID, SET_RGX_PASSWORD, SET_MAX }; enum SpiInterfaces { SPI_NONE, SPI_MOSI, SPI_MISO, SPI_MOSI_MISO }; diff --git a/tasmota/tasmota_globals.h b/tasmota/tasmota_globals.h index be3d67f96..11246252e 100644 --- a/tasmota/tasmota_globals.h +++ b/tasmota/tasmota_globals.h @@ -156,6 +156,10 @@ String EthernetMacAddress(void); #endif // ESP32 +/*********************************************************************************************\ + * Fallback parameters +\*********************************************************************************************/ + #ifdef USE_PID #define USE_TIMEPROP #endif @@ -340,6 +344,19 @@ String EthernetMacAddress(void); #define STARTING_OFFSET 30 // NOVA SDS parameter used in settings #endif +#ifndef WIFI_RGX_SSID +#define WIFI_RGX_SSID "" +#endif +#ifndef WIFI_RGX_PASSWORD +#define WIFI_RGX_PASSWORD "" +#endif +#ifndef WIFI_RGX_IP_ADDRESS +#define WIFI_RGX_IP_ADDRESS "192.168.99.1" +#endif +#ifndef WIFI_RGX_SUBNETMASK +#define WIFI_RGX_SUBNETMASK "255.255.255.0" +#endif + /*********************************************************************************************\ * UserConfig related parameters \*********************************************************************************************/ diff --git a/tasmota/tasmota_version.h b/tasmota/tasmota_version.h index d732eaef6..bb18eec6f 100644 --- a/tasmota/tasmota_version.h +++ b/tasmota/tasmota_version.h @@ -20,6 +20,6 @@ #ifndef _TASMOTA_VERSION_H_ #define _TASMOTA_VERSION_H_ -const uint32_t VERSION = 0x09050004; +const uint32_t VERSION = 0x09050005; #endif // _TASMOTA_VERSION_H_