“A brilliant little add-on for my weather station, with Stemma QT connectors making it an absolute breeze to integrate into my existing sensor suite. Seems to be managing fine outdoors in a stevenson screen to keep the worst of the elements away. As an added bonus the sensor can be easily removed from the breakout board if it ever needs replacing!”
“I have PMSA003I in a John Lewis plastic box along with a PI3G BME688 sensor and a PI Zero 2.
The particulate sensor needs a slow I2C Bus (100Mhz), so you need to create I2C bus 3 (or 4) and use the Adafruit-extended-bus Python library to be able to use the software I2C buses (3 or 4). The sensor also uses quite a bit of power, so spreading the load is good.
To add I2C bus 3 requires editing /boot/config.txt:
dtoverlay=i2c-gpio,bus3,i2c_gpio_delay=2, i2c_gpio_sda=17, i2c_gpio_sda=27
Following a reboot scan bus 3 it should find your device at 0x12: i2cdetect -y 3
The Adafruit example needs two lines changing:
from adafruit_extended_bus import ExtendedI2C as I2C
......
i2c = I2C(3, frequency=100000) # Device is /dev/i2c-3 sda 17, scl 27
Adding output to OLED or other I2C displays on Bus 1 is fine, just be careful to not call all I2C bus objects I2C.
Fitting the particulate sensor is tricky as the air in and air out are at right angles, so pushing the fan opening up against the JL box makes one of the Qwicc connectors unusable, and the battery I use on the other side makes using the second Qwicc connector very tight. Fit this sensor first is my advice, with enough tape and glue to keep the In and Out paths separate (avoid re-circulating air).
I have the PM readings displayed on an OLED (I2C) Bus 1 using Luma.oled.
Overall this is a great device and makes a good project. It's also amazing what a mess I can make with a Dremel and a JL Plastic Box.”