diff --git a/73_AutoShuttersControl.pm b/73_AutoShuttersControl.pm index 8f9dcee..41c4945 100644 --- a/73_AutoShuttersControl.pm +++ b/73_AutoShuttersControl.pm @@ -2181,23 +2181,29 @@ sub SunSetShuttersAfterTimerFn($) { and IsAfterShuttersManualBlocking($shuttersDev) ) { - $shutters->setLastDrive( - ( - $funcHash->{privacyMode} == 1 - ? 'privacy position' - : 'night close' - ) - ); - $shutters->setSunset(1); - ShuttersCommandSet( - $hash, - $shuttersDev, - ( - $funcHash->{privacyMode} == 1 - ? $shutters->getPrivacyDownPos - : $posValue - ) + my $queryShuttersPosPrivacyDown = ( + $shutters->getShuttersPosCmdValueNegate + ? $shutters->getStatus > $shutters->getPrivacyDownPos + : $shutters->getStatus < $shutters->getPrivacyDownPos ); + + if ( $funcHash->{privacyMode} == 1 + and not $queryShuttersPosPrivacyDown ) + { + $shutters->setLastDrive('privacy position'); + ShuttersCommandSet( + $hash, + $shuttersDev, + $shutters->getPrivacyDownPos ); + } + elsif ( $funcHash->{privacyMode} == 0 ) { + $shutters->setSunset(1); + $shutters->setLastDrive('night close'); + ShuttersCommandSet( + $hash, + $shuttersDev, + $posValue ); + } } CreateSunRiseSetShuttersTimer( $hash, $shuttersDev );