From 27dd98c539f8603acc9a3102918ece348f32d642 Mon Sep 17 00:00:00 2001 From: thirug010 <30732819+thirug010@users.noreply.github.com> Date: Sun, 19 May 2019 09:46:44 -0500 Subject: [PATCH] Revert "Update xdrv_16_tuyadimmer.ino" This reverts commit 7b71331cf67ccbf7092f88491dc1f998841d274c. --- sonoff/xdrv_16_tuyadimmer.ino | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/sonoff/xdrv_16_tuyadimmer.ino b/sonoff/xdrv_16_tuyadimmer.ino index 202674ac5..4b0ebfcd8 100644 --- a/sonoff/xdrv_16_tuyadimmer.ino +++ b/sonoff/xdrv_16_tuyadimmer.ino @@ -123,12 +123,23 @@ bool TuyaSetPower(void) int16_t source = XdrvMailbox.payload; if (source != SRC_SWITCH && TuyaSerial) { // ignore to prevent loop from pushing state from faceplate interaction - TuyaSendBool(deviceid, bitRead(rpower, deviceid-1)); + TuyaSendBool(deviceid, TuyaGetPower(rpower, deviceid)); status = true; } return status; } +uint8_t TuyaGetPower(uint8_t p, uint8_t d) { + uint8_t g = 0; + for(int i = 7 ; i >= 0 ; i--) { + g = p >> i; + //AddLog_P2(LOG_LEVEL_DEBUG, PSTR("TYA: --SetDevicePower3-- for Device = %d, Power=%d"),i, k&1); + if (i== d-1) + { + return g&1; + } + } +} bool TuyaSetChannels(void) { LightSerialDuty(((uint8_t*)XdrvMailbox.data)[0]);