Refactor main.py: initialize temperature sensors and update TemperatureMonitor setup for clarity

This commit is contained in:
Aaron 2025-11-04 19:34:18 -05:00
parent adc7049492
commit 295576857f

22
main.py
View File

@ -3,6 +3,7 @@ import time
from scripts.networking import connect_wifi from scripts.networking import connect_wifi
from scripts.discord_webhook import send_discord_message from scripts.discord_webhook import send_discord_message
from scripts.monitors import TemperatureMonitor, WiFiMonitor, run_monitors from scripts.monitors import TemperatureMonitor, WiFiMonitor, run_monitors
from scripts.temperature_sensor import TemperatureSensor
# Initialize pins (LED light onboard) # Initialize pins (LED light onboard)
led = Pin("LED", Pin.OUT) led = Pin("LED", Pin.OUT)
@ -15,10 +16,29 @@ wifi = connect_wifi(led)
if wifi and wifi.isconnected(): if wifi and wifi.isconnected():
send_discord_message("Pico W online and connected ✅") send_discord_message("Pico W online and connected ✅")
# Initialize temperature sensors
inside_sensor = TemperatureSensor(pin=10, label="Inside")
outside_sensor = TemperatureSensor(pin=11, label="Outside")
# Set up monitors # Set up monitors
monitors = [ monitors = [
WiFiMonitor(wifi, led, interval=5, reconnect_cooldown=60), WiFiMonitor(wifi, led, interval=5, reconnect_cooldown=60),
TemperatureMonitor(pin=10, interval=300, alert_high=85.0, alert_low=32.0), TemperatureMonitor(
sensor=inside_sensor,
label="Inside",
interval=300, # 5 minutes
alert_high=85.0,
alert_low=32.0,
log_file="/temp_logs.csv"
),
TemperatureMonitor(
sensor=outside_sensor,
label="Outside",
interval=300, # 5 minutes
alert_high=100.0,
alert_low=20.0,
log_file="/temp_logs.csv"
),
# Add more monitors here later: # Add more monitors here later:
# SoilMoistureMonitor(pin=26, interval=600), # SoilMoistureMonitor(pin=26, interval=600),
# LightLevelMonitor(pin=27, interval=900), # LightLevelMonitor(pin=27, interval=900),