AirGradient Forum

Faulty indoor unit?

Since this morning at 10AM my indoor air gradient has been jumping between 2um to 25-30um constantly.
I have placed near it an ikea sensor and an airthings and none of them pick up the same fluctuation.
I have taken the unit outside and it has the same pattern. Outdoor air gradient does not pick up the same pattern either.

Faulty sensor or actual readings?

  1. Power cycled sensor.
  2. Flashed previous firmware. Then reverted to latest

Changed to MallocArray’s ESPHome implementation and the pm0.3 count dropped from 1000+ to below 20. What is going on ?

Before (bottom graph) and after(top graph) update particle count/dL:

I know the pm0.3 count isn’t a calibrated measurement, but I wasn’t aware it could change depending on software, only that you couldn’t compare the values from one sensor to another.

How does your PM 2.5 levels look comparing the two?

Drops in PM2.5 ( before switching to MA’s code ) are just me changing parameneters in AG dashboard settings ( corrections and or sensor offsets ) after I saw the anomaly to try to make sense of it. Apparently changing the correction and offset settings in AG dashboard on the original firmware will have an impact on the HA readings aswell ( i did not know that ). I looks more like a server change that was made on Jan 13 than a faulty unit. I have also opened a ticket to get an official answer.

Currently my ESPHome code doesn’t have the correction for the PM2.5 sensors implemented that is present on the newer devices (Mid-2024), but something that can be implemented. I don’t have any of the newest devices to compare, so won’t be able to full test, but it should be straight forward.

My understanding though is that it uses the PM 0.3 values to base the corrected PM2.5 values on, so I wouldn’t expect the stock AirGradient code to change the PM0.3 readings, only the output of the 2.5 values

When you apply the corrections in the AG Dashboard using the stock firmware, I would want those corrected values to also appear in HomeAssistant, since my desire would be to have the same values between the two, just one that I have full local control of, and one that is hosted on the AG servers.