#!/usr/bin/env python3 import uasyncio as asyncio from machine import WDT from settings import Settings from patterns import Patterns async def main(): s = Settings() pin = s.get("led_pin", 10) num = s.get("num_leds", 30) p = Patterns(pin=pin, num_leds=num) p.load() print(p) p.save() # print(p) # wdt = WDT(timeout=10000) # # Baseline params # p.set_param("br", 64) # p.set_param("dl", 500) # p.set_param("cl", [(255, 0, 0), (0, 0, 255)]) # p.set_param("n1", 200) # p.set_param("n2", 200) # p.set_param("n3", 1) # p.set_param("n4", 1) # for name, fn in p.patterns.items(): # if fn is None: # continue # print(name) # p.set_param("pt", name) # task = asyncio.create_task(p.run()) # end = asyncio.get_event_loop().time() + 2.0 # while asyncio.get_event_loop().time() < end: # wdt.feed() # await asyncio.sleep_ms(10) # p.stopped = True # await task # p.stopped = False # p.set_param("pt", "off") # task = asyncio.create_task(p.run()) # await asyncio.sleep_ms(200) # p.stopped = True # await task if __name__ == "__main__": asyncio.run(main())