1
0
Fork 0
wasp-os/wasp/manager.py
Daniel Thompson 3892f07e62 wasp: Add simple clock app
At this point both the simulator and a PineTime will come up
and show a clock (although in the case of the PineTime the clock
will just come up at 12:00).
2020-02-03 19:26:08 +00:00

42 lines
1.1 KiB
Python

import clock
import gc
import machine
class Manager(object):
def __init__(self, watch):
self.watch = watch
self.switch(clock.ClockApp())
self.sleep_at = watch.rtc.uptime + 90
def switch(self, app):
self.app = app
app.draw(self.watch)
def tick(self):
if self.sleep_at:
if self.watch.rtc.update():
self.app.update(self.watch)
if self.watch.button.value():
self.sleep_at = self.watch.rtc.uptime + 15
if self.watch.rtc.uptime > self.sleep_at:
self.watch.backlight.set(0)
self.watch.display.poweroff()
self.sleep_at = None
else:
self.watch.rtc.update()
if self.watch.button.value():
self.watch.display.poweron()
self.app.update(self.watch)
self.watch.backlight.set(2)
self.sleep_at = self.watch.rtc.uptime + 15
gc.collect()
def run(self):
while True:
self.tick()
machine.deepsleep()