From 1ff1ba48715f214ad940fd403fdf6c8982c6870c Mon Sep 17 00:00:00 2001 From: Emmanuel Lacour Date: Thu, 21 Jan 2021 13:16:18 +0100 Subject: [PATCH] Add sensor for 1st floor --- salon/salon-config.h.in | 13 +++++++++++++ salon/salon.ino | 52 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 salon/salon-config.h.in create mode 100644 salon/salon.ino diff --git a/salon/salon-config.h.in b/salon/salon-config.h.in new file mode 100644 index 0000000..4a1402d --- /dev/null +++ b/salon/salon-config.h.in @@ -0,0 +1,13 @@ +// Enable debug on serial port +#define DEBUG 1 +// Wifi +#define WIFI_SSID "XXXXXX" +#define WIFI_PASS "xxxxxx" +// InfluxDB +#define INFLUXDB_IP {w,x,y,z} +#define INFLUXDB_PORT xxxx +// Polling interval (ms) +#define POLL_INT 10000 +// Location informations +#define CITY "xxxxx" +#define LOCATION "xxxxx" diff --git a/salon/salon.ino b/salon/salon.ino new file mode 100644 index 0000000..fb7d51f --- /dev/null +++ b/salon/salon.ino @@ -0,0 +1,52 @@ +#include +#include +#include + +#include "salon-config.h" + +const char* wifi_ssid = WIFI_SSID; +const char* wifi_pass = WIFI_PASS; + +// Grafana +IPAddress influxdb_ip(INFLUXDB_IP); +long influxdb_port = INFLUXDB_PORT; +unsigned int localPort = 2390; +// MilliSeconds +long unsigned poll_int = POLL_INT; +String city = CITY; +String location = LOCATION; +WiFiUDP Udp; + +int pinDHT22 = 13; +SimpleDHT22 dht22(pinDHT22); + +void setup() { + + Serial.begin(1200); + WiFi.mode(WIFI_STA); + WiFi.begin(WIFI_SSID, WIFI_PASS); + + while (WiFi.status() != WL_CONNECTED) { + delay(500); + } +} + +void loop() { + 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)); + } + + delay(POLL_INT); +} + +void sendToInfluxDB(String measure, String key, String value) { + String line = measure+" "+key+"="+value; + Udp.begin(localPort); + Udp.beginPacket(influxdb_ip, influxdb_port); + Udp.print(line); + Udp.endPacket(); +} -- 2.11.0