From c82b72e58754c86090139e9a3a7774c3f1349825 Mon Sep 17 00:00:00 2001 From: NGC981 Date: Sat, 12 Oct 2019 16:14:54 +0200 Subject: [PATCH] NodeMCU Sketsch --- mySQMPRO-026-wifi-NodeMCU.ino | 87 +++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 mySQMPRO-026-wifi-NodeMCU.ino diff --git a/mySQMPRO-026-wifi-NodeMCU.ino b/mySQMPRO-026-wifi-NodeMCU.ino new file mode 100644 index 0000000..b2809e5 --- /dev/null +++ b/mySQMPRO-026-wifi-NodeMCU.ino @@ -0,0 +1,87 @@ +// Code For the ESP12E to communicated information from MySQMPro -WIfi to Blynk + +#define BLYNK_PRINT Serial + +#include +SoftwareSerial s(D6,D5); // RX=TX(9), TX=RX(8) +#include +#include +#include +#include + +char auth[] = "Your Blynk Token"; +char ssid[] = " Wifi SSID"; +char pass[] = " Wifi Password"; + +BlynkTimer timer; // Create a Timer object called "timer"! + + +void sendSensorData() +{ + +StaticJsonBuffer<500> jsonBuffer; + JsonObject& root = jsonBuffer.parseObject(s); + if (root == JsonObject::invalid()){ + return; + } + +root.prettyPrintTo(Serial); + +float mySQMreading = root["data1"]; +float nelm = root["data2"]; +float mlx90614ambient = root["data3"]; +float mlx90614object = root["data4"]; +bool raining = root["data5"]; +int volts = root["data6"]; +float lux = root["data7"]; +int skystate = root["data8"]; +int setpoint1 = root["data9"]; +int setpoint2 = root["data10"]; +int bme280humidity = root["data11"]; +float bme280temperature = root["data12"]; +float dewpoint = root["data13"]; +int bme280pressure = root["data14"]; +String CloudStatus = "unkown"; +String RainStatus = "true"; + +if (skystate == 0) { CloudStatus = "Clear";} +if (skystate == 1) { CloudStatus = "Partly-Cloudy";} +if (skystate == 2) { CloudStatus = "Cloudy";} +if (skystate == 3) { CloudStatus = "Unknown";} + +if (raining == false) { RainStatus = "No"; } +if (raining == true) { RainStatus = "Yes"; } + +//Serial.println(CloudStatus); + +Blynk.virtualWrite(V1, mySQMreading); +Blynk.virtualWrite(V2, nelm); +Blynk.virtualWrite(V3, mlx90614ambient); +Blynk.virtualWrite(V4, mlx90614object); +Blynk.virtualWrite(V5, RainStatus); +Blynk.virtualWrite(V6, volts); +Blynk.virtualWrite(V7, lux); +Blynk.virtualWrite(V8, CloudStatus); +Blynk.virtualWrite(V9, setpoint1); +Blynk.virtualWrite(V10,setpoint2); +Blynk.virtualWrite(V11,bme280humidity); +Blynk.virtualWrite(V12,bme280temperature); +Blynk.virtualWrite(V13,dewpoint); +Blynk.virtualWrite(V14,bme280pressure); +Blynk.virtualWrite(V15,skystate); +} + +void setup() { + Serial.begin(9600); + Serial.println("test"); + s.begin(9600); + while (!Serial) continue; + Blynk.begin(auth, ssid, pass); + timer.setInterval(1000L, sendSensorData); +} + +void loop() +{ + Blynk.run(); + timer.run(); +}