feat(patterns): add expanded animation pack with smoke tests
Add a broad set of new pattern modules and matching pattern smoke scripts so the new effects can be validated directly on-device.
This commit is contained in:
40
tests/patterns/aurora.py
Normal file
40
tests/patterns/aurora.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_aurora", {
|
||||
"p": "aurora",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_aurora")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/bar_graph.py
Normal file
40
tests/patterns/bar_graph.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_bar_graph", {
|
||||
"p": "bar_graph",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_bar_graph")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/breathing_dual.py
Normal file
40
tests/patterns/breathing_dual.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_breathing_dual", {
|
||||
"p": "breathing_dual",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_breathing_dual")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/clock_sweep.py
Normal file
40
tests/patterns/clock_sweep.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_clock_sweep", {
|
||||
"p": "clock_sweep",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_clock_sweep")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/comet_dual.py
Normal file
40
tests/patterns/comet_dual.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_comet_dual", {
|
||||
"p": "comet_dual",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_comet_dual")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/fireflies.py
Normal file
40
tests/patterns/fireflies.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_fireflies", {
|
||||
"p": "fireflies",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_fireflies")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
39
tests/patterns/gradient_scroll.py
Normal file
39
tests/patterns/gradient_scroll.py
Normal file
@@ -0,0 +1,39 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
print("Test gradient_scroll")
|
||||
p.edit("gradient_test", {
|
||||
"p": "gradient_scroll",
|
||||
"b": 220,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 255, 0), (0, 0, 255)],
|
||||
"n1": 2,
|
||||
"a": True,
|
||||
})
|
||||
p.select("gradient_test")
|
||||
run_for(p, wdt, 4000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/heartbeat.py
Normal file
40
tests/patterns/heartbeat.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_heartbeat", {
|
||||
"p": "heartbeat",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_heartbeat")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/marquee.py
Normal file
40
tests/patterns/marquee.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_marquee", {
|
||||
"p": "marquee",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_marquee")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
41
tests/patterns/meteor_rain.py
Normal file
41
tests/patterns/meteor_rain.py
Normal file
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
print("Test meteor_rain")
|
||||
p.edit("meteor_test", {
|
||||
"p": "meteor_rain",
|
||||
"b": 200,
|
||||
"d": 40,
|
||||
"c": [(255, 80, 0), (0, 120, 255)],
|
||||
"n1": 10,
|
||||
"n2": 1,
|
||||
"n3": 200,
|
||||
"a": True,
|
||||
})
|
||||
p.select("meteor_test")
|
||||
run_for(p, wdt, 4000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/orbit.py
Normal file
40
tests/patterns/orbit.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_orbit", {
|
||||
"p": "orbit",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_orbit")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/palette_morph.py
Normal file
40
tests/patterns/palette_morph.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_palette_morph", {
|
||||
"p": "palette_morph",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_palette_morph")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/plasma.py
Normal file
40
tests/patterns/plasma.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_plasma", {
|
||||
"p": "plasma",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_plasma")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/rain_drops.py
Normal file
40
tests/patterns/rain_drops.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_rain_drops", {
|
||||
"p": "rain_drops",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_rain_drops")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/scanner.py
Normal file
40
tests/patterns/scanner.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
print("Test scanner")
|
||||
p.edit("scanner_test", {
|
||||
"p": "scanner",
|
||||
"b": 255,
|
||||
"d": 30,
|
||||
"c": [(255, 0, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"a": True,
|
||||
})
|
||||
p.select("scanner_test")
|
||||
run_for(p, wdt, 4000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/segment_chase.py
Normal file
40
tests/patterns/segment_chase.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_segment_chase", {
|
||||
"p": "segment_chase",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_segment_chase")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/snowfall.py
Normal file
40
tests/patterns/snowfall.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_snowfall", {
|
||||
"p": "snowfall",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_snowfall")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/sparkle_trail.py
Normal file
40
tests/patterns/sparkle_trail.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_sparkle_trail", {
|
||||
"p": "sparkle_trail",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_sparkle_trail")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/strobe_burst.py
Normal file
40
tests/patterns/strobe_burst.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_strobe_burst", {
|
||||
"p": "strobe_burst",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_strobe_burst")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
tests/patterns/wave.py
Normal file
40
tests/patterns/wave.py
Normal file
@@ -0,0 +1,40 @@
|
||||
#!/usr/bin/env python3
|
||||
import utime
|
||||
from machine import WDT
|
||||
from settings import Settings
|
||||
from presets import Presets, run_tick
|
||||
|
||||
|
||||
def run_for(p, wdt, ms):
|
||||
start = utime.ticks_ms()
|
||||
while utime.ticks_diff(utime.ticks_ms(), start) < ms:
|
||||
wdt.feed()
|
||||
run_tick(p)
|
||||
utime.sleep_ms(10)
|
||||
|
||||
|
||||
def main():
|
||||
s = Settings()
|
||||
p = Presets(pin=s.get("led_pin", 10), num_leds=s.get("num_leds", 30))
|
||||
wdt = WDT(timeout=10000)
|
||||
|
||||
p.edit("test_wave", {
|
||||
"p": "wave",
|
||||
"b": 200,
|
||||
"d": 60,
|
||||
"c": [(255, 0, 0), (0, 0, 255), (0, 255, 0)],
|
||||
"n1": 4,
|
||||
"n2": 2,
|
||||
"n3": 120,
|
||||
"a": True,
|
||||
})
|
||||
p.select("test_wave")
|
||||
run_for(p, wdt, 3000)
|
||||
|
||||
p.edit("cleanup_off", {"p": "off"})
|
||||
p.select("cleanup_off")
|
||||
run_for(p, wdt, 100)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user