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)
This commit is contained in:
arendst 2017-08-18 18:04:49 +02:00
parent fa0b7d7784
commit d96191888d
6 changed files with 54 additions and 16 deletions

View File

@ -1,7 +1,7 @@
## Sonoff-Tasmota ## 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. 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 ### ATTENTION All versions

View File

@ -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 * Fix Sonoff Pow intermittent exception 0
* Change Sonoff Pow sending Domoticz telemetry data only * Change Sonoff Pow sending Domoticz telemetry data only
* Add Ai-Thinker RGBW led (AiLight) (experimental) * Add Ai-Thinker RGBW led (AiLight) (experimental)

View File

@ -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 button_swap : 1; // bit 11 (v5.1.6)
uint32_t stop_flash_rotate : 1; // bit 12 (v5.2.0) uint32_t stop_flash_rotate : 1; // bit 12 (v5.2.0)
uint32_t button_single : 1; // bit 13 (v5.4.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 spare15 : 1;
uint32_t spare16 : 1; uint32_t spare16 : 1;
uint32_t spare17 : 1; uint32_t spare17 : 1;

View File

@ -25,7 +25,7 @@
- Select IDE Tools - Flash Size: "1M (no SPIFFS)" - 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 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}; enum week_t {Last, First, Second, Third, Fourth};

View File

@ -171,6 +171,39 @@ typedef struct MYTMPLT {
myio gp; myio gp;
} mytmplt; } 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 // Default module settings
const mytmplt modules[MAXMODULE] PROGMEM = { const mytmplt modules[MAXMODULE] PROGMEM = {
{ "Sonoff Basic", // Sonoff Basic (ESP8266) { "Sonoff Basic", // Sonoff Basic (ESP8266)
@ -528,17 +561,15 @@ const mytmplt modules[MAXMODULE] PROGMEM = {
0, 0 0, 0
}, },
{ "Sonoff T1 1CH", // Sonoff T1 1CH (ESP8285) { "Sonoff T1 1CH", // Sonoff T1 1CH (ESP8285)
0, GPIO_KEY1, // GPIO00 Button 1
GPIO_USER, // GPIO01 Serial RXD and Optional sensor GPIO_USER, // GPIO01 Serial RXD and Optional sensor
0, 0,
GPIO_USER, // GPIO03 Serial TXD and Optional sensor GPIO_USER, // GPIO03 Serial TXD and Optional sensor
0, 0, 0,
GPIO_REL1, // GPIO05 Blue Led and Relay 1 (0 = Off, 1 = On)
0, 0, 0, // Flash connection 0, 0, 0, // Flash connection
GPIO_KEY1, // GPIO09 Button 1 0, 0,
0,
0, // Flash connection 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) GPIO_LED1_INV, // GPIO13 Blue Led (0 = On, 1 = Off)
0, 0, 0, 0 0, 0, 0, 0
}, },
@ -547,11 +578,11 @@ const mytmplt modules[MAXMODULE] PROGMEM = {
GPIO_USER, // GPIO01 Serial RXD and Optional sensor GPIO_USER, // GPIO01 Serial RXD and Optional sensor
0, 0,
GPIO_USER, // GPIO03 Serial TXD and Optional sensor GPIO_USER, // GPIO03 Serial TXD and Optional sensor
GPIO_REL2, // GPIO04 Blue Led and Relay 2 (0 = Off, 1 = On)
0, 0,
GPIO_REL2, // GPIO05 Blue Led and Relay 2 (0 = Off, 1 = On)
0, 0, 0, // Flash connection 0, 0, 0, // Flash connection
GPIO_KEY2, // GPIO09 Button 2
0, 0,
GPIO_KEY2, // GPIO10 Button 2
0, // Flash connection 0, // Flash connection
GPIO_REL1, // GPIO12 Blue Led and Relay 1 (0 = Off, 1 = On) GPIO_REL1, // GPIO12 Blue Led and Relay 1 (0 = Off, 1 = On)
GPIO_LED1_INV, // GPIO13 Blue Led (0 = On, 1 = Off) GPIO_LED1_INV, // GPIO13 Blue Led (0 = On, 1 = Off)

View File

@ -639,7 +639,9 @@ void handleModule()
if (httpUser()) { if (httpUser()) {
return; return;
} }
char stemp[20], line[128]; char stemp[20];
char line[128];
uint8_t midx;
addLog_P(LOG_LEVEL_DEBUG, PSTR("HTTP: Module config")); addLog_P(LOG_LEVEL_DEBUG, PSTR("HTTP: Module config"));
@ -650,10 +652,11 @@ void handleModule()
snprintf_P(stemp, sizeof(stemp), modules[MODULE].name); snprintf_P(stemp, sizeof(stemp), modules[MODULE].name);
page.replace(F("{mt}"), stemp); page.replace(F("{mt}"), stemp);
for (byte i = 0; i < MAXMODULE; i++) { for (byte i = 0; i < MAXMODULE; i++) {
snprintf_P(stemp, sizeof(stemp), modules[i].name); midx = pgm_read_byte(nicelist + i);
snprintf_P(stemp, sizeof(stemp), modules[midx].name);
snprintf_P(line, sizeof(line), PSTR("<option%s value='%d'>%02d %s</option>"), snprintf_P(line, sizeof(line), PSTR("<option%s value='%d'>%02d %s</option>"),
(i == sysCfg.module) ? " selected" : "", i, i +1, stemp); (midx == sysCfg.module) ? " selected" : "", midx, midx +1, stemp);
page += line; page += line;
} }
page += F("</select></br>"); page += F("</select></br>");