diff --git a/controllerHomie/controllerHomie.ino b/controllerHomie/controllerHomie.ino index 4e54975..34d84ed 100644 --- a/controllerHomie/controllerHomie.ino +++ b/controllerHomie/controllerHomie.ino @@ -206,13 +206,22 @@ void loopHandler() { sleep = !sleep; //switch on/off flag_updatePWM=true; //update pwm values } + if (sleep && flag_btnAholdstart ) { //in sleep mode and brightness button held down + sleep=false; //enabled light + set_brightness=0; //reset brightness + brightness=set_brightness; //immediately + } if (!sleep) { //only change values if not in sleep mode // Button A Longpress Handling if (flag_btnAholdstart) { - if (set_brightness>=BRIGHTNESS_MAX || set_brightness<=BRIGHTNESS_MIN) { //if hold started with brightness at one extreme - holdDirection_brightness=!holdDirection_brightness; //invert direction + if (set_brightness>=BRIGHTNESS_MAX) { //if hold started with brightness at one extreme + holdDirection_brightness=false; //direction decrease } + if (set_brightness<=BRIGHTNESS_MIN) { //if hold started with brightness at one extreme + holdDirection_brightness=true; //direction increase + } + } if (flag_btnAhold) { //brightness if (holdDirection_brightness) { @@ -234,6 +243,12 @@ void loopHandler() { if (set_temperature>=TEMPERATURE_MAX || set_temperature<=TEMPERATURE_MIN) { //if hold started with brightness at one extreme holdDirection_temperature=!holdDirection_temperature; //invert direction } + if (set_temperature>=TEMPERATURE_MAX) { //if hold started with brightness at one extreme + holdDirection_temperature=false; //direction decrease + } + if (set_temperature<=TEMPERATURE_MIN) { //if hold started with brightness at one extreme + holdDirection_temperature=true; //direction increase + } } if (flag_btnBhold) { //brightness if (holdDirection_temperature) {