-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
44 lines (33 loc) · 1.23 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import configurator
import status_light
import machine
import time
import os
configurator = configurator.Configurator()
brightnessReduction = configurator["brightnessReduction"] or 0
statusLight = status_light.StatusLight(configurator["segments"], brightnessReduction)
def main():
statusLight.initializing(0)
print("Configuring...")
while not configurator.configureNetwork():
machine.idle()
time.sleep(1)
machine.idle()
print("Configuring...")
print("Configuration complete: {0} {1}".format(configurator.wlan.isconnected(), configurator.wlan.status()))
statusLight.initializing(3)
if configurator.wlan.isconnected():
print("status light configuration {0} {1}".format(configurator["mqttServerIp"], configurator["mqttTopic"]))
statusLight.setup(configurator["mqttServerIp"], configurator["mqttUser"], configurator["mqttPassword"], configurator["mqttTopic"])
statusLight.main()
def restore() :
os.rename("main_store.py", "main.py")
print("Restoring main.py")
machine.reset()
if __name__ == "__main__":
skipBootPin = machine.Pin(14, machine.Pin.IN, machine.Pin.PULL_UP)
if(skipBootPin.value() == 0):
os.rename("main.py", "main_store.py")
print("Skipping initialization")
else:
main()