pmsa003I Low Values

I have been using a pmsa003I sensor for a while and it worked well. After about 2 months it randomly started reading low values until it would basically flatline at 0. If I subjected the module to smoke it would flare up the readings but for ambient air it would just read 0 no matter the location. I tested with a new sensor and I'm still getting the same problem so maybe it is a problem with my microcontroller? I am using the feather STM32F405 for that. I have no idea why this is happening. Does anyone have any ideas? (I attached image of values and graph)


Low Values - Sheet1.pdf (48.3 KB)

That seems very unlikely. There's little to go wrong with a microcontroller, no moving parts etc. Did you update the code in those 2 months? Even if there was theoretically no change or only trivial changes?

You could try another microcontroller but I expect you will get exact same results.

Please post links to all the major components and a schematic, so we can check if there is some way your circuit is gradually damaging any of the components.

I haven't made any changes to the code. I have attached photos and links.

Links:
AQ Sensor: Adafruit PMSA003I Air Quality Breakout [STEMMA QT / Qwiic] : ID 4632 : $44.95 : Adafruit Industries, Unique & fun DIY electronics and kits
Micro Controller: Adafruit Feather STM32F405 Express : ID 4382 : $39.95 : Adafruit Industries, Unique & fun DIY electronics and kits
Battery: Lithium Ion Polymer Battery - 3.7v 2500mAh : ID 328 : $14.95 : Adafruit Industries, Unique & fun DIY electronics and kits
GPS: Adafruit Ultimate GPS Breakout - 66 channel w/10 Hz updates [PA1616S] : ID 746 : $29.95 : Adafruit Industries, Unique & fun DIY electronics and kits

Right now my guess would be that those wires that have been stuffed into holes and not soldered have either worked loose or have become tarnished and no longer make a good connection.

Not sure if I am understanding you correctly but sometimes sensors have sort of a run-in period in which they fume a bit. This could explain the high values at first. If it works now, should be fine.

I wondered about that too. I couldn't see any mention of that on Adafruit's page, and, unusually, there is no Adafruit tutorial for this sensor. However, I did not read the sensor data sheet, which is linked to on that page, perhaps that mentions a settling/burn-in period.

Adafruit tutorial: Overview | Adafruit PMSA003I Air Quality Breakout | Adafruit Learning System

The problem isn't that it flares at first, its that it goes down to zero when ambient concentrations should always be above 0. I just don't know why it's doing this because it was working one day and the next it was like this

The air quality sensor requires 5V, for which there is an on-board boost circuit.

With the GPS, are you sure that the battery is not being overloaded? Check the battery voltage.

Yes but it did work with this battery for 2 months and I tested it with 5v today and I was still getting the same problem

Are there ways to adjust the sensitivity of the sensor?

You say it works when detecting smoke so it does do something.

yes it is doing something. I talked to the manufacturer and they said low values can be attributed to the fan, so I'm wondering if its not spinning as fast as it once did for some reason

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.