this was a pms5003. now I’m thinking that the first few hours was a “break-in” period of false high numbers, since it seems to be reacting fine to “events” like cooking and candles now, but the numbers are a lot lower than I expected and are mostly at all 0s for all particulate sizes most of the time.
Is that normal? I don’t know. I haven’t been able to find any data on what typical PM1, PM2.5, and PM10 numbers are supposed to look like indoors. Can someone share some typical graphs of theirs?
Try finding some nearby outdoor air quality sensors working from pm2.5 online. Stick yours outside(but protected from the elements) and see if it generally matches the trends and values.
I tried and it seems okay and pretty close to nearby sensors. I guess my house is really clean, and the first few hours was a break-in period or something (dust inside after manufacturing?). Seems to be working well now. Thanks a lot
I recently set a Pms7003 sensor up also. I went with a rpi Pico W and Mqtt, but was more curious what people are using for enclosures. Any examples? Mine is currently setting on a breadboard in the living room, need something with a higher WAF. Unfortunately, I don’t have access to a 3d printer.
I’ve unfortunately just been using the cardboard box it came in, with one flap cut off. There’s space in there for an ESP. I haven’t tested it for accuracy after being in there yet, though.
Best solution I found is to use the soldering iron near the sensor. You’ll see a sharp increase in particulate. I turn the soldering iron on, then just melt some solder close to the sensor.
Is there a consensus on how often to poll the 7003 and how long the warm up period should be? I’m currently sampling every five minutes with a thirty second warmup. This is pulling both SET and RST to ground between reads. I’m then taking ten samples and applying an interquartile range filter for the final result. Results seem reasonable, just curious about what others are seeing.
My esphome is configured to sample every 30 seconds from a PSMA003. The latest version of esphome will start and stop the fan without having to connect to the RST pin, using update_interval. I’m just using the TX/RX signals and esphome takes care of stopping/starting. My PSMA initially always read 0, but over time it has gotten more accurate.
In home assistant I’m running a mean over the last 7 readings. During the day it’s not uncommon for the readings to sit at 0. Cooking eggs or using the oven sends the sensors very high.
After considering everything in this thread and the requirements for this sensor (saving the laser lifetime and allowing a warm-up period), and several hours of trial and error, I’ve come up with this sleek ESPHome configuration.
It turns on the laser once every 5 minutes (adjustable; just change the - interval: 300s line) for 40 seconds, throwing away the first 30 seconds (warm-up) and using the last 10 seconds, and averaging those 10 readings together into a single number for higher resolution (to one decimal place instead of none).
This should let the laser live for years to come, and the data will be very stable because the fan has had time to spin up and warm up. You can start a measurement period manually through Home Assistant thanks to the “Measuring” switch as well.
apologies, this is probably a dumb question. In your code you have gpio14 connected to something for the “measuring” section. Is this pin actually connected to anything in real life? At first I thought it was connected to the SET cable of the PMS but now im unsure and think it doesnt actually connect to anything?