CO2 and Particulate Matter Datalogger




The above project uses the Sparkfun Qwiic system to reduce the amount of soldering. The only component that does not have a qwiic connector is the particulate sensor. The particulate sensor (SEN54) does come with a cable assembly that can plug directly into the red board. It works out well this way because the SEN54 needs 5V but the qwiic bus is 3.3v.

I chose the artemis red board because I knew I needed more memory than the ATMega boards provided. I had a setup without the larger LCD display and the SEN54 and it was using 94% of the ATMega memory.

There are a couple things hat can trip you up. Most notable, every module comes with pull-up resistors on the I2C lines. You only need one set and with too many resistors, the communications will stop working properly. Check the board documentation, there are some traces that are easily cut to remove the pull-up resistors from the circuit. I also had to slow down the communication speed to the red board to get it to successfully program.

The library for the OLED display is for a wide range of displays. The documentation can be a little confusing. The proper configuration for the display is:

U8G2_SSD1327_EA_W128128_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); /* Uno: A4=SDA, A5=SCL, add "u8g2.setBusClock(400000);" into setup() for speedup if possible */

Parts List

SCD41

https://www.sparkfun.com/products/18366

SEN54

https://www.sparkfun.com/products/19325

OLED Display

https://www.sparkfun.com/products/15890

Battery Holder

https://www.sparkfun.com/products/9835 

QWIIC Cable

https://www.sparkfun.com/products/17259 

Red-board Artemis

https://www.sparkfun.com/products/15444

RTC

https://www.sparkfun.com/products/16281

Openlog

https://www.sparkfun.com/products/15164