From 75c87665bc29c84f49bca9e7d5f3a0de085e5b2b Mon Sep 17 00:00:00 2001 From: fvanroie <15969459+fvanroie@users.noreply.github.com> Date: Tue, 31 Aug 2021 02:19:37 +0200 Subject: [PATCH] #208 Keep last dimmer valie when toggling state on/off --- src/sys/gpio/hasp_gpio.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/sys/gpio/hasp_gpio.cpp b/src/sys/gpio/hasp_gpio.cpp index 504827ac..7561aa9e 100644 --- a/src/sys/gpio/hasp_gpio.cpp +++ b/src/sys/gpio/hasp_gpio.cpp @@ -585,7 +585,11 @@ static void gpio_set_normalized_value(hasp_gpio_config_t* gpio, hasp_update_valu case hasp_gpio_type_t::SERIAL_DIMMER: case hasp_gpio_type_t::SERIAL_DIMMER_AU: case hasp_gpio_type_t::SERIAL_DIMMER_EU: - val = map(val, value.min, value.max, 0, gpio->max); + if(value.max == 1) { + val = gpio->val; // only switch power, keep current val + } else { + val = map(val, value.min, value.max, 0, gpio->max); // update power and val + } break; default: