1
1
import time
2
2
import board
3
3
import busio
4
- from digitalio import DigitalInOut , Direction , Pull
4
+ from digitalio import DigitalInOut
5
5
import neopixel
6
6
from adafruit_esp32spi import adafruit_esp32spi , adafruit_esp32spi_wifimanager
7
- from adafruit_io .adafruit_io import IO_HTTP , AdafruitIO_RequestError
7
+ from adafruit_io .adafruit_io import IO_HTTP
8
8
from simpleio import map_range
9
9
10
10
import adafruit_pm25
20
20
print ("WiFi secrets are kept in secrets.py, please add them there!" )
21
21
raise
22
22
23
- # If you have an externally connected ESP32:
23
+ # AirLift FeatherWing
24
24
esp32_cs = DigitalInOut (board .D13 )
25
25
esp32_reset = DigitalInOut (board .D12 )
26
26
esp32_ready = DigitalInOut (board .D11 )
@@ -51,31 +51,31 @@ def calculate_aqi(pm_sensor_reading):
51
51
# Check sensor reading using EPA breakpoint (Clow-Chigh)
52
52
if 0.0 <= pm_sensor_reading <= 12.0 :
53
53
# AQI calculation using EPA breakpoints (Ilow-IHigh)
54
- aqi = map_range (int (pm_sensor_reading ), 0 , 12 , 0 , 50 )
55
- aqi_category = "Good"
54
+ aqi_val = map_range (int (pm_sensor_reading ), 0 , 12 , 0 , 50 )
55
+ aqi_cat = "Good"
56
56
elif 12.1 <= pm_sensor_reading <= 35.4 :
57
- aqi = map_range (int (pm_sensor_reading ), 12 , 35 , 51 , 100 )
58
- aqi_category = "Moderate"
57
+ aqi_val = map_range (int (pm_sensor_reading ), 12 , 35 , 51 , 100 )
58
+ aqi_cat = "Moderate"
59
59
elif 35.5 <= pm_sensor_reading <= 55.4 :
60
- aqi = map_range (int (pm_sensor_reading ), 36 , 55 , 101 , 150 )
61
- aqi_category = "Unhealthy for Sensitive Groups"
60
+ aqi_val = map_range (int (pm_sensor_reading ), 36 , 55 , 101 , 150 )
61
+ aqi_cat = "Unhealthy for Sensitive Groups"
62
62
elif 55.5 <= pm_sensor_reading <= 150.4 :
63
- aqi = map_range (int (pm_sensor_reading ), 56 , 150 , 151 , 200 )
64
- aqi_category = "Unhealthy"
63
+ aqi_val = map_range (int (pm_sensor_reading ), 56 , 150 , 151 , 200 )
64
+ aqi_cat = "Unhealthy"
65
65
elif 150.5 <= pm_sensor_reading <= 250.4 :
66
- aqi = map_range (int (pm_sensor_reading ), 151 , 250 , 201 , 300 )
67
- aqi_category = "Very Unhealthy"
66
+ aqi_val = map_range (int (pm_sensor_reading ), 151 , 250 , 201 , 300 )
67
+ aqi_cat = "Very Unhealthy"
68
68
elif 250.5 <= pm_sensor_reading <= 350.4 :
69
- aqi = map_range (int (pm_sensor_reading ), 251 , 350 , 301 , 400 )
70
- aqi_category = "Hazardous"
69
+ aqi_val = map_range (int (pm_sensor_reading ), 251 , 350 , 301 , 400 )
70
+ aqi_cat = "Hazardous"
71
71
elif 350.5 <= pm_sensor_reading <= 500.4 :
72
- aqi = map_range (int (pm_sensor_reading ), 351 , 500 , 401 , 500 )
73
- aqi_category = "Hazardous"
72
+ aqi_val = map_range (int (pm_sensor_reading ), 351 , 500 , 401 , 500 )
73
+ aqi_cat = "Hazardous"
74
74
else :
75
75
print ("Invalid PM2.5 concentration" )
76
- aqi = - 1
77
- aqi_category = None
78
- return aqi , aqi_category
76
+ aqi_val = - 1
77
+ aqi_cat = None
78
+ return aqi_val , aqi_cat
79
79
80
80
def sample_aq_sensor ():
81
81
"""Samples PM2.5 sensor
@@ -88,7 +88,7 @@ def sample_aq_sensor():
88
88
# initial timestamp
89
89
time_start = time .monotonic ()
90
90
# sample pm2.5 sensor over 2.3 sec sample rate
91
- while ( time .monotonic () - time_start <= 2.3 ) :
91
+ while time .monotonic () - time_start <= 2.3 :
92
92
try :
93
93
aqdata = pm25 .read ()
94
94
aq_samples .append (aqdata ["pm25 env" ])
@@ -111,11 +111,11 @@ def read_bme280(is_celsius=False):
111
111
:param bool is_celsius: Returns temperature in degrees celsius
112
112
if True, otherwise fahrenheit.
113
113
"""
114
- humidity = bme280 .humidity
115
- temperature = bme280 .temperature
114
+ humid = bme280 .humidity
115
+ temp = bme280 .temperature
116
116
if not is_celsius :
117
- temperature = temperature * 1.8 + 32
118
- return temperature , humidity
117
+ temp = temp * 1.8 + 32
118
+ return temperature , humid
119
119
120
120
121
121
# Create an instance of the Adafruit IO HTTP client
0 commit comments