From d96191888de857f38327e47768f1e9b6f387489d Mon Sep 17 00:00:00 2001 From: arendst Date: Fri, 18 Aug 2017 18:04:49 +0200 Subject: [PATCH] v5.6.1 5.6.1 20170818 * Change module list order in webpage * Fix Sonoff T1 1CH and 2CH configuration (#751) * * 5.6.0 20170818 * Fix Sonoff Pow intermittent exception 0 * Change Sonoff Pow sending Domoticz telemetry data only * Add Ai-Thinker RGBW led (AiLight) (experimental) * Add NeoPixelBus library to Sonoff Led for Hue support * Add user configurable GPIO4 and GPIO5 to module Sonoff Bridge * Add Sonoff B1 RGBCW led support with command Color RRGGBBCCWW (#676) * Add command CT 152..500 to Sonoff Led and Sonoff B1 to control Color Temperature * Add Cold-Warm slider to web page for Sonoff Led and Sonoff B1 * Add CT parameter to Hue * Add Sonoff T1 support (#582) * Add AnalogInput0 if configured as Analog Input to webpage (#697, #746) * Add command SetOption14 0|1 to enable interlock mode (#719, #721) * Fix Mitsubishi HVAC IR power controll (#740) --- README.md | 2 +- sonoff/_releasenotes.ino | 6 ++++- sonoff/settings.h | 2 +- sonoff/sonoff.ino | 2 +- sonoff/sonoff_template.h | 47 +++++++++++++++++++++++++++++++++------- sonoff/webserver.ino | 11 ++++++---- 6 files changed, 54 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 272975e3b..f6dd7a812 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ ## Sonoff-Tasmota Provide ESP8266 based Sonoff by [iTead Studio](https://www.itead.cc/) and ElectroDragon IoT Relay with Serial, Web and MQTT control allowing 'Over the Air' or OTA firmware updates using Arduino IDE. -Current version is **5.6.0** - See [sonoff/_releasenotes.ino](https://github.com/arendst/Sonoff-Tasmota/blob/master/sonoff/_releasenotes.ino) for change information. +Current version is **5.6.1** - See [sonoff/_releasenotes.ino](https://github.com/arendst/Sonoff-Tasmota/blob/master/sonoff/_releasenotes.ino) for change information. ### ATTENTION All versions diff --git a/sonoff/_releasenotes.ino b/sonoff/_releasenotes.ino index 64fbef156..3c522d69b 100644 --- a/sonoff/_releasenotes.ino +++ b/sonoff/_releasenotes.ino @@ -1,4 +1,8 @@ -/* 5.6.0 20170818 +/* 5.6.1 20170818 + * Change module list order in webpage + * Fix Sonoff T1 1CH and 2CH configuration (#751) + * + * 5.6.0 20170818 * Fix Sonoff Pow intermittent exception 0 * Change Sonoff Pow sending Domoticz telemetry data only * Add Ai-Thinker RGBW led (AiLight) (experimental) diff --git a/sonoff/settings.h b/sonoff/settings.h index c08889332..5f6d787bf 100644 --- a/sonoff/settings.h +++ b/sonoff/settings.h @@ -36,7 +36,7 @@ typedef union { // Restricted by MISRA-C Rule 18.4 bu uint32_t button_swap : 1; // bit 11 (v5.1.6) uint32_t stop_flash_rotate : 1; // bit 12 (v5.2.0) uint32_t button_single : 1; // bit 13 (v5.4.0) - uint32_t interlock : 1; // bit 14 (v5.5.2k) + uint32_t interlock : 1; // bit 14 (v5.6.0) uint32_t spare15 : 1; uint32_t spare16 : 1; uint32_t spare17 : 1; diff --git a/sonoff/sonoff.ino b/sonoff/sonoff.ino index 25f79ab64..a0c609eb9 100644 --- a/sonoff/sonoff.ino +++ b/sonoff/sonoff.ino @@ -25,7 +25,7 @@ - Select IDE Tools - Flash Size: "1M (no SPIFFS)" ====================================================*/ -#define VERSION 0x05060000 // 5.6.0 +#define VERSION 0x05060100 // 5.6.1 enum log_t {LOG_LEVEL_NONE, LOG_LEVEL_ERROR, LOG_LEVEL_INFO, LOG_LEVEL_DEBUG, LOG_LEVEL_DEBUG_MORE, LOG_LEVEL_ALL}; enum week_t {Last, First, Second, Third, Fourth}; diff --git a/sonoff/sonoff_template.h b/sonoff/sonoff_template.h index 061892623..0737293f8 100644 --- a/sonoff/sonoff_template.h +++ b/sonoff/sonoff_template.h @@ -171,6 +171,39 @@ typedef struct MYTMPLT { myio gp; } mytmplt; +const uint8_t nicelist[MAXMODULE] PROGMEM = { + SONOFF_BASIC, + SONOFF_RF, + SONOFF_TH, + SONOFF_DUAL, + SONOFF_POW, + SONOFF_4CH, + SONOFF_4CHPRO, + SONOFF_SV, + SONOFF_DEV, + S20, + SLAMPHER, + SONOFF_TOUCH, + SONOFF_T11, + SONOFF_T12, + SONOFF_T13, + SONOFF_SC, + SONOFF_B1, + SONOFF_LED, + SONOFF_BN, + SONOFF_BRIDGE, + CH1, + CH4, + MOTOR, + ELECTRODRAGON, + EXS_RELAY, + WION, + H801, + HUAFAN_SS, + AILIGHT, + WEMOS +}; + // Default module settings const mytmplt modules[MAXMODULE] PROGMEM = { { "Sonoff Basic", // Sonoff Basic (ESP8266) @@ -528,17 +561,15 @@ const mytmplt modules[MAXMODULE] PROGMEM = { 0, 0 }, { "Sonoff T1 1CH", // Sonoff T1 1CH (ESP8285) - 0, + GPIO_KEY1, // GPIO00 Button 1 GPIO_USER, // GPIO01 Serial RXD and Optional sensor 0, GPIO_USER, // GPIO03 Serial TXD and Optional sensor - 0, - GPIO_REL1, // GPIO05 Blue Led and Relay 1 (0 = Off, 1 = On) + 0, 0, 0, 0, 0, // Flash connection - GPIO_KEY1, // GPIO09 Button 1 - 0, + 0, 0, 0, // Flash connection - 0, + GPIO_REL1, // GPIO12 Blue Led and Relay 1 (0 = Off, 1 = On) GPIO_LED1_INV, // GPIO13 Blue Led (0 = On, 1 = Off) 0, 0, 0, 0 }, @@ -547,11 +578,11 @@ const mytmplt modules[MAXMODULE] PROGMEM = { GPIO_USER, // GPIO01 Serial RXD and Optional sensor 0, GPIO_USER, // GPIO03 Serial TXD and Optional sensor - GPIO_REL2, // GPIO04 Blue Led and Relay 2 (0 = Off, 1 = On) 0, + GPIO_REL2, // GPIO05 Blue Led and Relay 2 (0 = Off, 1 = On) 0, 0, 0, // Flash connection + GPIO_KEY2, // GPIO09 Button 2 0, - GPIO_KEY2, // GPIO10 Button 2 0, // Flash connection GPIO_REL1, // GPIO12 Blue Led and Relay 1 (0 = Off, 1 = On) GPIO_LED1_INV, // GPIO13 Blue Led (0 = On, 1 = Off) diff --git a/sonoff/webserver.ino b/sonoff/webserver.ino index 4455a7dfa..8c40dc859 100644 --- a/sonoff/webserver.ino +++ b/sonoff/webserver.ino @@ -639,7 +639,9 @@ void handleModule() if (httpUser()) { return; } - char stemp[20], line[128]; + char stemp[20]; + char line[128]; + uint8_t midx; addLog_P(LOG_LEVEL_DEBUG, PSTR("HTTP: Module config")); @@ -650,10 +652,11 @@ void handleModule() snprintf_P(stemp, sizeof(stemp), modules[MODULE].name); page.replace(F("{mt}"), stemp); - for (byte i = 0; i < MAXMODULE; i++) { - snprintf_P(stemp, sizeof(stemp), modules[i].name); + for (byte i = 0; i < MAXMODULE; i++) { + midx = pgm_read_byte(nicelist + i); + snprintf_P(stemp, sizeof(stemp), modules[midx].name); snprintf_P(line, sizeof(line), PSTR("%02d %s"), - (i == sysCfg.module) ? " selected" : "", i, i +1, stemp); + (midx == sysCfg.module) ? " selected" : "", midx, midx +1, stemp); page += line; } page += F("
");