diff --git a/rpi_backlight/cli.py b/rpi_backlight/cli.py index c65e1ba..18bfb89 100644 --- a/rpi_backlight/cli.py +++ b/rpi_backlight/cli.py @@ -102,8 +102,12 @@ def main(): "-b/--set-brightness must be used without other options except for -d/--duration" ) # backlight.fade context manager can be used always as args.fade defaults to zero + if (backlight.power is False) and (args.set_brightness > 0): + backlight.power = True with backlight.fade(duration=args.duration): backlight.brightness = args.set_brightness + if (backlight.power is True) and (args.set_brightness == 0): + backlight.power = False return if args.set_power: @@ -122,6 +126,19 @@ def main(): backlight.power = True with backlight.fade(duration=args.duration): backlight.brightness = 100 + elif args.set_power == "on": + # Ensure brightness is 0 when we turn the display on + backlight.brightness = 0 + if args.board_type == "raspberry-pi": + backlight.power = True + with backlight.fade(duration=args.duration): + backlight.brightness = 100 + elif args.set_power == "off": + if backlight.power: + with backlight.fade(duration=args.duration): + backlight.brightness = 0 + if args.board_type == "raspberry-pi": + backlight.power = False else: backlight.power = True if args.set_power == "on" else False return