27 lines
682 B
Python
Executable file
27 lines
682 B
Python
Executable file
import time
|
|
from weather_station.pubsub import PubSub
|
|
from weather_station.timer import Timer
|
|
from weather_station.bme280 import BME280
|
|
from weather_station.airlift import AirLift
|
|
|
|
pubsub = PubSub()
|
|
airlift = AirLift(pubsub)
|
|
bme280 = BME280(pubsub)
|
|
timers = [
|
|
Timer(pubsub, 120),
|
|
]
|
|
|
|
while True:
|
|
try:
|
|
airlift.mqtt_client.loop()
|
|
for timer in timers:
|
|
t = time.time()
|
|
timer.tick(t)
|
|
except (ValueError, RuntimeError, ConnectionError) as e:
|
|
print("Ran into problem\n", e)
|
|
airlift.esp.reset()
|
|
time.sleep(5)
|
|
airlift.connect()
|
|
airlift.mqtt_client.reconnect()
|
|
time.sleep(5)
|
|
continue
|