diff --git a/sonoff/settings.h b/sonoff/settings.h index 032ea530d..c1f568ca1 100644 --- a/sonoff/settings.h +++ b/sonoff/settings.h @@ -67,7 +67,7 @@ typedef union { // Restricted by MISRA-C Rule 18.4 bu uint32_t user_esp8285_enable : 1; // bit 1 (v6.1.1.14) uint32_t time_append_timezone : 1; // bit 2 (v6.2.1.2) uint32_t gui_hostname_ip : 1; // bit 3 (v6.2.1.20) - uint32_t spare04 : 1; + uint32_t tuya_apply_o20 : 1; uint32_t spare05 : 1; uint32_t spare06 : 1; uint32_t spare07 : 1; diff --git a/sonoff/xdrv_16_tuyadimmer.ino b/sonoff/xdrv_16_tuyadimmer.ino index bf8213da2..06926acba 100644 --- a/sonoff/xdrv_16_tuyadimmer.ino +++ b/sonoff/xdrv_16_tuyadimmer.ino @@ -207,7 +207,7 @@ void TuyaPacketProcess() } tuya_new_dim = round(tuya_buffer[13] * (100. / 255.)); - if((power) && (tuya_new_dim > 0) && (abs(tuya_new_dim - Settings.light_dimmer) > 2)) { + if((power || Settings.flag3.tuya_apply_o20) && (tuya_new_dim > 0) && (abs(tuya_new_dim - Settings.light_dimmer) > 1)) { snprintf_P(scmnd, sizeof(scmnd), PSTR(D_CMND_DIMMER " %d"), tuya_new_dim );