#include #include "Adafruit_SGP30.h" Adafruit_SGP30 sgp; void setup() { Serial.begin(9600); Serial.println("SGP30 test"); if (! sgp.begin()){ Serial.println("Sensor not found :("); while (1); } Serial.print("Found SGP30 serial #"); Serial.print(sgp.serialnumber[0], HEX); Serial.print(sgp.serialnumber[1], HEX); Serial.println(sgp.serialnumber[2], HEX); // If you have a baseline measurement from before you can assign it to start, to 'self-calibrate' //sgp.setIAQBaseline(0x8E68, 0x8F41); // Will vary for each sensor! } int counter = 0; void loop() { if (! sgp.IAQmeasure()) { Serial.println("Measurement failed"); return; } Serial.print("TVOC "); Serial.print(sgp.TVOC); Serial.print(" ppb\t"); Serial.print("eCO2 "); Serial.print(sgp.eCO2); Serial.println(" ppm"); delay(1000); counter++; if (counter == 30) { counter = 0; uint16_t TVOC_base, eCO2_base; if (! sgp.getIAQBaseline(&eCO2_base, &TVOC_base)) { Serial.println("Failed to get baseline readings"); return; } Serial.print("****Baseline values: eCO2: 0x"); Serial.print(eCO2_base, HEX); Serial.print(" & TVOC: 0x"); Serial.println(TVOC_base, HEX); } }