diff --git a/sonoff/_changelog.ino b/sonoff/_changelog.ino index 00d134c75..23bdb5185 100644 --- a/sonoff/_changelog.ino +++ b/sonoff/_changelog.ino @@ -1,4 +1,9 @@ -/* 6.5.0.8 20190413 +/* 6.5.0.9 20190418 + * Add command SetOption63 0/1 to disable relay state feedback scan at restart (#5594, #5663) + * Fix TasmotaSerial at 9600 bps solving DFPlayer comms (#5528) + * Fix Shelly 2.5 overtemp + * + * 6.5.0.8 20190413 * Add Tuya Dimmer 10 second heartbeat serial packet required by some Tuya dimmer secondary MCUs * Fix use of SerialDelimiter value 128 (#5634) * Fix lost syslog connection regression from 6.5.0.4 diff --git a/sonoff/settings.h b/sonoff/settings.h index 1bb48ab8b..f00e1bfa8 100644 --- a/sonoff/settings.h +++ b/sonoff/settings.h @@ -76,7 +76,7 @@ typedef union { // Restricted by MISRA-C Rule 18.4 bu uint32_t sleep_normal : 1; // bit 10 (v6.3.0.15) - SetOption60 - Enable normal sleep instead of dynamic sleep uint32_t button_switch_force_local : 1;// bit 11 (v6.3.0.16) - SetOption61 - Force local operation when button/switch topic is set uint32_t no_hold_retain : 1; // bit 12 (v6.4.1.19) - SetOption62 - Don't use retain flag on HOLD messages - uint32_t spare13 : 1; + uint32_t no_power_feedback : 1; // bit 13 (v6.5.0.9) - SetOption63 - Don't scan relay power state at restart uint32_t spare14 : 1; uint32_t spare15 : 1; uint32_t spare16 : 1; diff --git a/sonoff/sonoff.ino b/sonoff/sonoff.ino index 07f95244e..ee8251265 100755 --- a/sonoff/sonoff.ino +++ b/sonoff/sonoff.ino @@ -2693,8 +2693,10 @@ void setup(void) // Issue #526 and #909 for (uint8_t i = 0; i < devices_present; i++) { - if ((i < MAX_RELAYS) && (pin[GPIO_REL1 +i] < 99)) { - bitWrite(power, i, digitalRead(pin[GPIO_REL1 +i]) ^ bitRead(rel_inverted, i)); + if (!Settings.flag3.no_power_feedback) { // #5594 and #5663 + if ((i < MAX_RELAYS) && (pin[GPIO_REL1 +i] < 99)) { + bitWrite(power, i, digitalRead(pin[GPIO_REL1 +i]) ^ bitRead(rel_inverted, i)); + } } if ((i < MAX_PULSETIMERS) && (bitRead(power, i) || (POWER_ALL_OFF_PULSETIME_ON == Settings.poweronstate))) { SetPulseTimer(i, Settings.pulse_timer[i]); diff --git a/sonoff/sonoff_version.h b/sonoff/sonoff_version.h index c0399c306..f60681349 100644 --- a/sonoff/sonoff_version.h +++ b/sonoff/sonoff_version.h @@ -20,6 +20,6 @@ #ifndef _SONOFF_VERSION_H_ #define _SONOFF_VERSION_H_ -const uint32_t VERSION = 0x06050008; +const uint32_t VERSION = 0x06050009; #endif // _SONOFF_VERSION_H_