Я хочу создать скрипт, который отключит мой Raspberry Pi Touchscreen, если никто не коснется экрана в течение 30 секунд.(В будущем я хочу, чтобы опция сбрасывала этот 30-секундный таймер с другими программами - например, REST API).
Это то, что у меня в данный момент есть
from pynput import mouse
import time
import rpi_backlight as bl
bl.set_power(False) # Turn Off the Screen Initially
def on_move(x, y):
control_screen()
def on_click(x, y, button, pressed):
control_screen()
def control_screen():
if (bl.get_power() == False): # If the Screen is OFF
bl.set_power(True) # Turn On Screen
bl.set_brightness(200, smooth=True, duration=3)
time.sleep(30) # Wait 30 Seconds
bl.set_power(False) # Turn Screen Off Again
# Collect events until released
with mouse.Listener(
on_move=on_move,
on_click=on_click) as listener:
listener.join()
Проблема с этим кодом в том, что экран спит, а затем сразу же снова просыпается (может быть, при этом срабатывает on_click / on_move)?Кроме того, я не думаю, что режим сна (30) - лучший подход, так как я хочу, чтобы таймер сна запускался заново после касания экрана.Любые советы?
Спасибо