Bump version to 7.1.2.5

Change some Settings locations freeing up space for future single char allowing variable length text
This commit is contained in:
Theo Arends 2019-12-13 12:05:07 +01:00
parent 645518cf28
commit 21fa1fa04e
6 changed files with 52 additions and 25 deletions

View File

@ -47,12 +47,13 @@ The following binary downloads have been compiled with ESP8266/Arduino library c
## Changelog
### Version 7.1.2.4
### Version 7.1.2.5
- Change Exception reporting removing exception details from ``Status 1`` and consolidated in ``Status 12`` if available
- Change HTTP CORS from command ``SetOption73 0/1`` to ``Cors <cors_domain>`` allowing user control of specific CORS domain by Shantur Rathore (#7066)
- Change GUI Shutter button text to Up and Down Arrows based on PR by Xavier Muller (#7166)
- Change amount of supported DHT sensors from 3 to 4 by Xavier Muller (#7167)
- Change some Settings locations freeing up space for future single char allowing variable length text
- Fix flashing H801 led at boot by Stefan Hadinger (#7165, #649)
- Fix duplicated ``Backlog`` when using Event inside a Backlog by Adrian Scillato (#7178, #7147)
- Fix Gui Timer when using a negative zero offset of -00:00 by Peter Ooms (#7174)

View File

@ -1,5 +1,9 @@
## Unreleased (development)
### 7.1.2.5 20191213
- Change some Settings locations freeing up space for future single char allowing variable length text
### 7.1.2.4 20191209
- Change HTTP CORS from command ``SetOption73 0/1`` to ``Cors <cors_domain>`` allowing user control of specific CORS domain by Shantur Rathore (#7066)

View File

@ -248,26 +248,34 @@ struct SYSCFG {
SysBitfield flag; // 010
int16_t save_data; // 014
int8_t timezone; // 016
// Start of single char array
char ota_url[101]; // 017
char mqtt_prefix[3][11]; // 07C
uint8_t ex_baudrate; // 09D - Free since 6.6.0.9
uint8_t seriallog_level; // 09E
uint8_t sta_config; // 09F
uint8_t sta_active; // 0A0
uint8_t ex_seriallog_level; // 09E
uint8_t ex_sta_config; // 09F
uint8_t ex_sta_active; // 0A0
char sta_ssid[2][33]; // 0A1 - Keep together with sta_pwd as being copied as one chunck with reset 5
char sta_pwd[2][65]; // 0E3 - Keep together with sta_ssid as being copied as one chunck with reset 5
char hostname[33]; // 165
char syslog_host[33]; // 186
uint8_t rule_stop; // 1A7
uint16_t syslog_port; // 1A8
uint8_t syslog_level; // 1AA
uint8_t webserver; // 1AB
uint8_t weblog_level; // 1AC
uint8_t mqtt_fingerprint[2][20]; // 1AD
uint8_t adc_param_type; // 1D5
uint8_t ex_rule_stop; // 1A7
uint16_t ex_syslog_port; // 1A8
uint8_t ex_syslog_level; // 1AA
uint8_t ex_webserver; // 1AB
uint8_t ex_weblog_level; // 1AC
uint8_t ex_mqtt_fingerprint[2][20]; // 1AD
uint8_t ex_adc_param_type; // 1D5
uint8_t free_1d6[10]; // 1D6
// End of single char array of 446 chars max (phase 3)
SysBitfield4 flag4; // 1E0
uint8_t serial_config; // 1E4
uint8_t wifi_output_power; // 1E5
@ -282,6 +290,9 @@ struct SYSCFG {
char mqtt_topic[33]; // 26F - Keep together with above items as being copied as one chunck with reset 6
char button_topic[33]; // 290
char mqtt_grptopic[33]; // 2B1
// Optional end of single char array of 698 chars max (phase 5)
uint8_t display_model; // 2D2
uint8_t display_mode; // 2D3
uint8_t display_refresh; // 2D4
@ -302,7 +313,9 @@ struct SYSCFG {
int16_t toffset[2]; // 30E
uint8_t display_font; // 312
char state_text[4][11]; // 313
uint8_t ex_energy_power_delta; // 33F - Free since 6.6.0.20
uint16_t domoticz_update_timer; // 340
uint16_t pwm_range; // 342
unsigned long domoticz_relay_idx[MAX_DOMOTICZ_IDX]; // 344
@ -338,7 +351,7 @@ struct SYSCFG {
char friendlyname[MAX_FRIENDLYNAMES][33]; // 3AC
char switch_topic[33]; // 430
char serial_delimiter; // 451
uint8_t ex_sbaudrate; // 452 - Free since 6.6.0.9
uint8_t seriallog_level; // 452
uint8_t sleep; // 453
uint16_t domoticz_switch_idx[MAX_DOMOTICZ_IDX]; // 454
uint16_t domoticz_sensor_idx[MAX_DOMOTICZ_SNS_IDX]; // 45C
@ -398,7 +411,6 @@ struct SYSCFG {
uint16_t baudrate; // 778
uint16_t sbaudrate; // 77A
EnergyUsage energy_usage; // 77C
// uint32_t drivers[3]; // 794 - 6.5.0.12 replaced by below three entries
uint32_t adc_param1; // 794
uint32_t adc_param2; // 798
int adc_param3; // 79C
@ -414,7 +426,9 @@ struct SYSCFG {
unsigned long energy_frequency_calibration; // 7C8 also used by HX711 to save last weight
uint16_t web_refresh; // 7CC
char mems[MAX_RULE_MEMS][10]; // 7CE
char rules[MAX_RULE_SETS][MAX_RULE_SIZE]; // 800 uses 512 bytes in v5.12.0m, 3 x 512 bytes in v5.14.0b
TuyaFnidDpidMap tuya_fnid_map[MAX_TUYA_FUNCTIONS]; // E00 32 bytes
uint16_t ina226_r_shunt[4]; // E20
uint16_t ina226_i_fs[4]; // E28
@ -436,8 +450,17 @@ struct SYSCFG {
uint8_t weight_change; // E9F
uint8_t web_color2[2][3]; // EA0 - Needs to be on integer / 3 distance from web_color
char cors_domain[33]; // EA6
uint8_t sta_config; // EC7
uint8_t sta_active; // EC8
uint8_t rule_stop; // EC9
uint16_t syslog_port; // ECA
uint8_t syslog_level; // ECC
uint8_t webserver; // ECD
uint8_t weblog_level; // ECE
uint8_t mqtt_fingerprint[2][20]; // ECF
uint8_t adc_param_type; // EF7
uint8_t free_ec7[293]; // EC7
uint8_t free_ef8[244]; // EF8
uint32_t i2c_drivers[3]; // FEC I2cDriver
uint32_t cfg_timestamp; // FF8

View File

@ -1230,8 +1230,8 @@ void SettingsDelta(void)
}
}
if (Settings.version < 0x06060009) {
Settings.baudrate = Settings.ex_baudrate * 4;
Settings.sbaudrate = Settings.ex_sbaudrate * 4;
Settings.baudrate = APP_BAUDRATE / 300;
Settings.sbaudrate = SOFT_BAUDRATE / 300;
}
if (Settings.version < 0x0606000A) {
uint8_t tuyaindex = 0;
@ -1336,6 +1336,12 @@ void SettingsDelta(void)
Settings.cors_domain[0] = 0;
}
}
if (Settings.version < 0x07010205) {
Settings.seriallog_level = Settings.ex_seriallog_level; // 09E -> 452
Settings.sta_config = Settings.ex_sta_config; // 09F -> EC7
Settings.sta_active = Settings.ex_sta_active; // 0A0 -> EC8
memcpy((char*)&Settings.rule_stop, (char*)&Settings.ex_rule_stop, 47); // 1A7 -> EC9
}
Settings.version = VERSION;
SettingsSave(1);

View File

@ -27,24 +27,17 @@
struct STATS {
// uint32_t str_size = 1151; // Total number of characters reserved as char array in Settings
uint32_t str_len = 0; // Total number of characters used within char array
uint32_t str_char = 0; // Total number of character '|' within all char arrays
} Stats;
void StatisticsChar(const char* text)
{
uint32_t len = strlen(text);
Stats.str_len += len;
for (uint32_t i = 0; i < len; i++) {
if ('|' == text[i]) { // Text string separator as currently used in GetTextIndexed()
Stats.str_char++;
}
}
}
String GetStatistics(void)
{
Stats.str_len = 0;
Stats.str_char = 0;
for (uint32_t i = 0; i < 2; i++) {
StatisticsChar(Settings.sta_ssid[i]);
@ -77,7 +70,7 @@ String GetStatistics(void)
StatisticsChar(Settings.cors_domain);
char data[40];
snprintf_P(data, sizeof(data), PSTR(",\"CR\":\"%d/1151/%d\""), Stats.str_len, Stats.str_char); // Char Usage Ratio
snprintf_P(data, sizeof(data), PSTR(",\"CR\":\"%d/1151\""), Stats.str_len); // Char Usage Ratio
return String(data);
}

View File

@ -20,6 +20,6 @@
#ifndef _TASMOTA_VERSION_H_
#define _TASMOTA_VERSION_H_
const uint32_t VERSION = 0x07010204;
const uint32_t VERSION = 0x07010205;
#endif // _TASMOTA_VERSION_H_