Always On Mode
This commit is contained in:
22
ug/button.py
22
ug/button.py
@@ -170,13 +170,13 @@ class FoodoorMQTT:
|
|||||||
|
|
||||||
|
|
||||||
class StateMenu:
|
class StateMenu:
|
||||||
OFF = 0
|
LOW_POWER = 0
|
||||||
SHOW_STATE = 1
|
SHOW_STATE = 1
|
||||||
CHANGE = 2
|
CHANGE = 2
|
||||||
PROGRESS = 3
|
PROGRESS = 3
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.state = StateMenu.OFF
|
self.state = StateMenu.LOW_POWER
|
||||||
self.change_target = None
|
self.change_target = None
|
||||||
self.target_state = None
|
self.target_state = None
|
||||||
self.anim = []
|
self.anim = []
|
||||||
@@ -205,7 +205,7 @@ class StateMenu:
|
|||||||
}
|
}
|
||||||
|
|
||||||
def reset_state(self):
|
def reset_state(self):
|
||||||
self.state = StateMenu.OFF
|
self.state = StateMenu.LOW_POWER
|
||||||
self.change_target = None
|
self.change_target = None
|
||||||
self.target_state = None
|
self.target_state = None
|
||||||
self.anim.clear()
|
self.anim.clear()
|
||||||
@@ -213,11 +213,11 @@ class StateMenu:
|
|||||||
self.next_state = None
|
self.next_state = None
|
||||||
|
|
||||||
def button_pressed(self, btn):
|
def button_pressed(self, btn):
|
||||||
if self.state == StateMenu.OFF:
|
if btn not in self.doors: # door sensor
|
||||||
self.set_state(StateMenu.SHOW_STATE, 10)
|
if self.state == StateMenu.LOW_POWER:
|
||||||
elif btn not in self.doors:
|
self.set_state(StateMenu.SHOW_STATE, 10)
|
||||||
pass # the following states should not be triggered by the door sensor
|
|
||||||
elif self.state == StateMenu.SHOW_STATE:
|
elif self.state in (StateMenu.LOW_POWER, StateMenu.SHOW_STATE):
|
||||||
self.set_state(StateMenu.CHANGE, 10)
|
self.set_state(StateMenu.CHANGE, 10)
|
||||||
self.change_target = btn
|
self.change_target = btn
|
||||||
elif self.state == StateMenu.CHANGE:
|
elif self.state == StateMenu.CHANGE:
|
||||||
@@ -246,9 +246,11 @@ class StateMenu:
|
|||||||
|
|
||||||
def draw(self):
|
def draw(self):
|
||||||
self.anim.clear()
|
self.anim.clear()
|
||||||
|
self.strip.brightness = 0.5 # full brightness
|
||||||
|
|
||||||
if self.state == StateMenu.OFF:
|
if self.state == StateMenu.LOW_POWER:
|
||||||
self.strip.fill(color.BLACK)
|
# self.strip.fill(color.BLACK)
|
||||||
|
self.strip.brightness = 0.1
|
||||||
elif self.state == StateMenu.SHOW_STATE:
|
elif self.state == StateMenu.SHOW_STATE:
|
||||||
self.strip_oben.fill(color.GREEN if self.mqtt.is_open("oben") else color.RED)
|
self.strip_oben.fill(color.GREEN if self.mqtt.is_open("oben") else color.RED)
|
||||||
self.strip_unten.fill(color.GREEN if self.mqtt.is_open("unten") else color.RED)
|
self.strip_unten.fill(color.GREEN if self.mqtt.is_open("unten") else color.RED)
|
||||||
|
|||||||
Reference in New Issue
Block a user