//Rainsesnorsetup.Rainfallistrackedbytickspersecon
d,andtimestampsof
//ticksaretrackedsorainfallcanbe"aged"(i.e.,rain
perhour,perday,etc)
pinMode(RAIN_PIN,INPUT);//Rainsensor
attachInterrupt(digitalPinToInterrupt(RAIN_PIN),rainTick,R
ISING);
//Zerooutthetimestamparray.
for (int i=0;i< NO_RAIN_SAMPLES;i++)rainTickList[i]=
0;
//BME280sensorsetup thes
earefairlyconservativesetti
ngs,suitablefor
//mostapplications.Formoreinformationregardingthese
ttingsavailable
//fortheBME280,seetheexamplesketchesintheBME280l
ibrary.
bme.settings.commInterface= I2C_MODE;
bme.settings.I2CAddress= 0x77;
bme.settings.runMode=3;
bme.settings.tStandby=0;
bme.settings.filter=0;
bme.settings.tempOverSample=1;
bme.settings.pressOverSample=1;
bme.settings.humidOverSample=1;
bme.begin();
//CCS811sensorsetup.
pin
Mode(AIR_WAKE,OUTPUT);
digitalWrite(AIR_WAKE,LOW);
pinMode(AIR_RST,OUTPUT);
digitalWrite(AIR_RST,LOW);
delay(10);
digitalWrite(AIR_RST,HIGH);
delay(100);
ccs.begin();
//APDS9301sensorsetup.Leavethedefaultsettingsinplac
e.
apds.begin(0x39);
//ConnecttoWiFinetwork
Serial.print("Connectingto");
Serial.println(ssid);
WiFi.begin(ssid,password);
while (WiFi.status()!= WL_CONNECTED){
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFiconnected");
Serial.println("IPaddress:");
Serial.println(WiFi.localIP());
//VisibleWiFiconnectedsignalforwhenserialisn'tconne
cted
dig
italWrite(DONE_LED,HIGH);
}
void loop()
Page 1
of 20