Wildfires… Air Quality… Time to fire up the sensors… And Start FLaNKing…

Tim Spann
Cloudera
Published in
6 min readJun 7, 2023

--

PM2.5=138 for NJ Northeast Urban

2023–06–07 14:18:32.396 INFO 90254 — — [ scheduling-1] d.datainmotion.airquality.AirQualityApp : PM2.5=324 for NY New York City Region
2023–06–07 14:18:32.403 INFO 90254 — — [ scheduling-1] d.datainmotion.airquality.AirQualityApp : Kafka message sent.
2023–06–07 14:18:32.404 INFO 90254 — — [ scheduling-1] d.datainmotion.airquality.AirQualityApp : PM10=180 for NY New York City Region

Sensors

Once I got the alerts from AirNow and OpenAQ, it was time to start monitoring levels in my home and outside it.

So I turned on my EnviroUrban and moved to to different rooms, it is easy to setup with a phone and I had it send REST JSON messages to NiFi.

{“readings”: {“pressure”: 1000.56, “pm2_5”: 358, “pm10”: 374, “noise”: 1.5, “humidity”: 31.96, “temperature”: 28.44, “pm1”: 182}, “nickname”: “flankurban”, “timestamp”: “2023–06–07 19:47:04”}

I also setup my Enviro+ with a PMS5003 Particulate Matter Sensor.

{“uuid”: “air_uuid_fmr_20230607215350”, “amplitude100”: 1.1, “amplitude500”: 0.4, “amplitude1000”: 0.3, “lownoise”: 0.5, “midnoise”: 0.3, “highnoise”: 0.3, “amps”: 0.3, “ipaddress”: “192.168.1.188”, “host”: “rp4”, “host_name”: “rp4”, “macaddress”: “16:15:7e:50:37:5c”, “systemtime”: “2023–06–07T17:53:51.981657”, “endtime”: “1686174831.98”, “runtime”: “52.11”, “starttime”: “06/07/2023 17:52:58”, “cpu”: 0.0, “cpu_temp”: “56.9”, “diskusage”: “29354.1 MB”, “memory”: 7.6, “id”: “20230607215350_b9a6ccfd-e322–4033–80e5-d6e560afc809”, “temperature”: “36.5”, “adjtemp”: “27.6”, “adjtempf”: “61.7”, “temperaturef”: “77.7”, “pressure”: 1000.3, “humidity”: 17.6, “lux”: 97.5, “proximity”: 0, “oxidising”: 12.5, “reducing”: 103.2, “nh3”: 17.3, “gasKO”: “Oxidising: 12520.58 Ohms\nReducing: 103173.13 Ohms\nNH3: 17333.33 Ohms”, “pm25”: 188, “pm1”: 100, “pm10”: 196, “pm1atmos”: 66, “pm25atmos”: 125, “pm10atmos”: 130, “pmper1l03”: 16347, “pmper1l05”: 4777, “pmper1l1”: 1253, “pmper1l25”: 141, “pmper1l5”: 11, “pmper1l10”: 3}

See my new app:

A query to check the particle amount in Flink:

select systemtime, adjtempf, humidity, gasKO, pm25, pm1, pm10, pm1atmos, pm25atmos, pm10atmos, oxidising, nh3
from `sr1`.`default_database`.`particles`

We should send alerts, but with the current wildfires those would be constant.

Take a look at these air quality and PM2.5 particle resources.

Checking out indoor particles.

Other Coding Resources

Other Sources of Data

--

--

Tim Spann
Cloudera

Principal Developer Advocate, Zilliz. Milvus, Attu, Towhee, GenAI, Big Data, IoT, Deep Learning, Streaming, Machine Learning. https://www.datainmotion.dev/