Add DHT 22 temp/hum sensor
authorEmmanuel Lacour <elacour@easter-eggs.com>
Thu, 21 Jan 2021 12:15:20 +0000 (13:15 +0100)
committerEmmanuel Lacour <elacour@easter-eggs.com>
Thu, 21 Jan 2021 12:15:20 +0000 (13:15 +0100)
cave/cave.ino

index 9d05566..bc18162 100644 (file)
@@ -1,6 +1,7 @@
 #include <WiFi.h>
 #include <WiFiUdp.h>
 #include <HCSR04.h>
+#include <SimpleDHT.h>
 
 #include "cave-config.h"
 
@@ -20,6 +21,10 @@ WiFiUDP Udp;
 // TRIGGER, ECHO
 UltraSonicDistanceSensor distanceSensor(14, 12);
 
+// Temp
+int pinDHT22 = 27;
+SimpleDHT22 dht22(pinDHT22);
+
 void setup() {
 
   #if defined(DEBUG)
@@ -46,9 +51,14 @@ void setup() {
 }
 
 void loop() {
-  // FIXME: get temperature from sensor and use it here
-  float temp = 20.0;
-  double water_dist = distanceSensor.measureDistanceCm(temp);
+  float temperature = 0;
+  float humidity = 0;
+  int err = SimpleDHTErrSuccess;
+  if ((err = dht22.read2(&temperature, &humidity, NULL)) == SimpleDHTErrSuccess) {
+    sendToInfluxDB("temperature,city="+city+",location="+location, "value", String(temperature));
+    sendToInfluxDB("humidity,city="+city+",location="+location, "value", String(humidity));
+  }
+  double water_dist = distanceSensor.measureDistanceCm(temperature);
   #if defined(DEBUG)
   Serial.println("Distance: "+String(water_dist));
   #endif