Refactor relay state handling to use a dedicated method and update last button press time on LCD

This commit is contained in:
Aaro Varis
2026-01-15 10:49:19 +02:00
parent e649b1ca99
commit 811c438343

View File

@@ -38,6 +38,9 @@ class AlarmClock:
while True: while True:
self.loop() self.loop()
def setRelayState(self, state: bool):
self.relayGpio.write(1 if state else 0)
def loop(self): def loop(self):
currentButtonState = not self.buttonGpio.read() currentButtonState = not self.buttonGpio.read()
if currentButtonState != self.lastKnownButtonState: if currentButtonState != self.lastKnownButtonState:
@@ -49,7 +52,7 @@ class AlarmClock:
print(f"Button '{button}' pressed state: {state}") print(f"Button '{button}' pressed state: {state}")
if button == "button": if button == "button":
self.lastButtonPressTime = time() self.lastButtonPressTime = time()
self.relayGpio.write(1 if state else 0) self.setRelayState(not self.relayGpio.read())
self.setLcdText(self.lastButtonPressTime.__str__()) self.setLcdText(self.lastButtonPressTime.__str__())
def setLcdText(self, text: str): def setLcdText(self, text: str):