InfluxDB-Client-for-Arduino icon indicating copy to clipboard operation
InfluxDB-Client-for-Arduino copied to clipboard

why influxdb not show Results

Open oumpack opened this issue 2 years ago • 1 comments

#if defined(ESP32) #include <WiFiMulti.h> WiFiMulti wifiMulti; #define DEVICE "ESP32" #elif defined(ESP8266) #include <ESP8266WiFiMulti.h> ESP8266WiFiMulti wifiMulti; #define DEVICE "ESP8266" #endif #include <Adafruit_GFX.h> // Core graphics library #include <Fonts/FreeSans18pt7b.h>

#include <InfluxDbClient.h> #include <InfluxDbCloud.h> #include <PxMatrix.h> #include <Ticker.h> #include <time.h> Ticker display_ticker; #define P_LAT 16 #define P_A 5 #define P_B 4 #define P_C 15 #define P_D 12 #define P_E 0 #define P_OE 2 #define matrix_width 64 #define matrix_height 32

#define WIFI_SSID "Pack" // WiFi password #define WIFI_PASSWORD "641998014"

#define INFLUXDB_URL "https://us-east-1-1.aws.cloud2.influxdata.com" #define INFLUXDB_TOKEN "oyfTyTX6yUFy8pBJq4eQrSdoqnfz9WalTHLkUoPNaKd3HIOFEmzCuvjnKU2wGK8QGzXBgKvESFRc3oMYipkRdg==" #define INFLUXDB_ORG "6af8c2b532189294" #define INFLUXDB_BUCKET "Project_Thoeng"

// Config time int timezone = 7; // Zone +7 for Thailand char ntp_server1[20] = "ntp.ku.ac.th"; char ntp_server2[20] = "fw.eng.ku.ac.th"; char ntp_server3[20] = "time.uni.net.th"; int dst = 0; int Sec = 0;

#define TZ_INFO "UTC7"

InfluxDBClient client(INFLUXDB_URL, INFLUXDB_ORG, INFLUXDB_BUCKET, INFLUXDB_TOKEN, InfluxDbCloud2CACert); // Declare Data point Point sensor("wifi_status"); // Time zone info

uint8_t display_draw_time=10; //30-70 is usually fine PxMATRIX display(64,32,P_LAT, P_OE,P_A,P_B,P_C,P_D);

// Some standard colors uint16_t myRED = display.color565(255, 0, 0); uint16_t myGREEN = display.color565(0, 255, 0); uint16_t myBLUE = display.color565(0, 0, 255); uint16_t myWHITE = display.color565(255, 255, 255); uint16_t myYELLOW = display.color565(255, 255, 0); uint16_t myCYAN = display.color565(0, 255, 255); uint16_t myMAGENTA = display.color565(255, 0, 255); uint16_t myBLACK = display.color565(0, 0, 0); uint16_t myCOLORS[8]={myRED,myGREEN,myBLUE,myWHITE,myYELLOW,myCYAN,myMAGENTA,myBLACK};

void display_updater(){ display.display(display_draw_time); } void display_update_enable(bool is_enable){ if (is_enable) display_ticker.attach(0.004, display_updater); else display_ticker.detach(); } void setup() { Serial.begin(9600); Serial.setDebugOutput(true);

// Setup wifi WiFi.mode(WIFI_STA); wifiMulti.addAP(WIFI_SSID, WIFI_PASSWORD);

Serial.print("Connecting to wifi"); while (wifiMulti.run() != WL_CONNECTED) { Serial.print("."); } Serial.println();

timeSync(TZ_INFO, "pool.ntp.org", "time.nis.gov");

configTime(timezone * 3600, dst, ntp_server1, ntp_server2, ntp_server3); while (!time(nullptr)) { Serial.print("."); }

// Check server connection if (client.validateConnection()) { Serial.print("Connected to InfluxDB: "); Serial.println(client.getServerUrl()); } else { Serial.print("InfluxDB connection failed: "); Serial.println(client.getLastErrorMessage()); } display.begin(16);

sensor.addTag("device", DEVICE); sensor.addTag("SSID", WiFi.SSID()); }

void loop() { sensor.clearFields(); sensor.addField("DISPLAYRSSI", WiFi.RSSI()); sensor.addField("DISPLAY", 1);

Serial.print("Writing: "); Serial.println(sensor.toLineProtocol());

if (wifiMulti.run() != WL_CONNECTED) { Serial.println("Wifi connection lost"); }

if (!client.writePoint(sensor)) { Serial.print("InfluxDB write failed: "); Serial.println(client.getLastErrorMessage()); } Serial.println(); sos(); delay(30000); time(); delay(30000); pm(); delay(30000); tem(); delay(30000); person(); delay(30000); Maxsound(); delay(30000);

Serial.println("Waiting 1 second"); delay(1000); }

void time(){ //configTime(timezone, dst, "pool.ntp.org", "time.nist.gov"); //แสดงเวลาปัจจุบัน time_t now = time(nullptr); struct tm* newtime = localtime(&now);

String tmpNow = ""; tmpNow += String(newtime->tm_year + 2443); tmpNow += "-"; tmpNow += String(newtime->tm_mon + 1); tmpNow += "-"; tmpNow += String(newtime->tm_mday); tmpNow += " "; tmpNow += String(newtime->tm_hour); tmpNow += ":"; tmpNow += String(newtime->tm_min); tmpNow += ":"; tmpNow += String(newtime->tm_sec); Serial.println(tmpNow);

//Left Top วัน-เดือน-ปี display.clearDisplay(); if(newtime->tm_hour > 20 && newtime->tm_hour < 17){ if(newtime->tm_mday < 9){ display.setTextColor(myRED); display.setCursor(2,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("0"); display.setTextColor(myRED); display.setCursor(7,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(newtime->tm_mday); }if(newtime->tm_mday > 9){ display.setTextColor(myRED); display.setCursor(2,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(newtime->tm_mday); } display.setTextColor(myRED); display.setCursor(14,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("-");

if(newtime->tm_mon < 9){
  display.setTextColor(myRED);
  display.setCursor(20,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print("0");
  display.setTextColor(myRED);
  display.setCursor(26,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print(newtime->tm_mon + 1);
}if(newtime->tm_mon > 9){
  display.setTextColor(myRED);
  display.setCursor(20,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print(newtime->tm_mon + 1);
}

  display.setTextColor(myRED);
  display.setCursor(32,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print("-");

display.setTextColor(myRED);
display.setCursor(38,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
display.print(newtime->tm_year + 2443);

}

else{ if(newtime->tm_mday < 9){ display.setTextColor(myGREEN); display.setCursor(2,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("0"); display.setTextColor(myGREEN); display.setCursor(7,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(newtime->tm_mday); }if(newtime->tm_mday > 9){ display.setTextColor(myGREEN); display.setCursor(2,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(newtime->tm_mday); } display.setTextColor(myGREEN); display.setCursor(14,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("-");

if(newtime->tm_mon < 9){
  display.setTextColor(myGREEN);
  display.setCursor(20,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print("0");
  display.setTextColor(myGREEN);
  display.setCursor(26,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print(newtime->tm_mon + 1);
}if(newtime->tm_mon > 9){
  display.setTextColor(myGREEN);
  display.setCursor(20,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print(newtime->tm_mon + 1);
}

  display.setTextColor(myGREEN);
  display.setCursor(32,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
  display.print("-");

display.setTextColor(myGREEN);
display.setCursor(38,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
display.print(newtime->tm_year + 2443);

}

time2(); }

void time2(){ //configTime(timezone, dst, "pool.ntp.org", "time.nist.gov"); //แสดงเวลาปัจจุบัน time_t now = time(nullptr); struct tm* newtime = localtime(&now);

String tmpNow = ""; tmpNow += String(newtime->tm_year + 1900); tmpNow += "-"; tmpNow += String(newtime->tm_mon + 1); tmpNow += "-"; tmpNow += String(newtime->tm_mday); tmpNow += " "; tmpNow += String(newtime->tm_hour); tmpNow += ":"; tmpNow += String(newtime->tm_min); tmpNow += ":"; tmpNow += String(newtime->tm_sec); Serial.println(tmpNow);

//เวลา display.setTextWrap(false); // don't wrap at end of line if(newtime->tm_hour > 17 && newtime->tm_hour < 20){ if(newtime->tm_hour < 10){ display.setTextColor(myGREEN); display.setCursor(20,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32 display.print("0"); display.setTextColor(myGREEN); display.setCursor(26,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32 display.print(newtime->tm_hour); }if(newtime->tm_hour > 9){ display.setTextColor(myGREEN); display.setCursor(20,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32 display.print(newtime->tm_hour); }

display.setTextColor(myGREEN);
display.setCursor(30,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
display.print(":");

if(newtime->tm_min < 10){
  display.setTextColor(myGREEN);
  display.setCursor(34,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32
  display.print("0");
  display.setTextColor(myGREEN);
  display.setCursor(40,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32
  display.print(newtime->tm_min);
}if(newtime->tm_min > 9){
  display.setTextColor(myGREEN);
  display.setCursor(34,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32
  display.print(newtime->tm_min);
}

}

else{ if(newtime->tm_hour < 10){ display.setTextColor(myRED); display.setCursor(20,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32 display.print("0"); display.setTextColor(myRED); display.setCursor(26,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32 display.print(newtime->tm_hour); }if(newtime->tm_hour > 9){ display.setTextColor(myRED); display.setCursor(20,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32 display.print(newtime->tm_hour); }

display.setTextColor(myRED);
display.setCursor(30,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15
display.print(":");

if(newtime->tm_min < 10){
  display.setTextColor(myRED);
  display.setCursor(34,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32
  display.print("0");
  display.setTextColor(myRED);
  display.setCursor(40,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32
  display.print(newtime->tm_min);
}if(newtime->tm_min > 9){
  display.setTextColor(myRED);
  display.setCursor(34,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 17-32
  display.print(newtime->tm_min);
}

} }

void sos() { String query = "from(bucket: "Project_Thoeng")\n
|> range(start: -2m)\n
|> filter(fn: (r) => r._measurement == "wifi_status" and r._field == "signal")"; FluxQueryResult result = client.query(query); Serial.println("Results : "); long s = 0 ; while (result.next()) { String ssid = result.getValueByName("SSID").getString(); Serial.print("SSID '"); Serial.print(ssid);

Serial.print("' with RSSI "); long value = result.getValueByName("_value").getLong(); Serial.println(value); s = value ; }if (s == 0){ display.clearDisplay(); display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myYELLOW); display.setCursor(4,7); display.print("SOS"); display_update_enable(true); display.setTextColor(myYELLOW); display.setCursor(25,7); display.print("NORMAL"); }else{ display.clearDisplay(); display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myRED); display.setCursor(7,7); display.print("SOS"); display_update_enable(true); display.setTextColor(myRED); display.setCursor(29,7); display.print("ALERT"); } time2(); }

void person(){ long v = 0; String query = "from(bucket: "Project_Thoeng")\n
|> range(start: -30m)\n
|> filter(fn: (r) => r._measurement == "wifi_status" and r._field == "Sensor_count")"; FluxQueryResult result = client.query(query); Serial.println("Results : "); while (result.next()) { /String ssid = result.getValueByName("SSID").getString(); Serial.print("SSID '"); Serial.print(ssid);/

Serial.print(" with RSSI "); long value = result.getValueByName("_value").getLong(); Serial.println(value);

v = value; } display.clearDisplay(); if (v < 10){ display.setTextColor(myYELLOW); display.setCursor(4,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("People"); /display.setTextColor(myYELLOW); display.setCursor(43,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("00");/ display.setTextColor(myYELLOW); display.setCursor(48,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(v); time2(); } else if (v < 100){ display.setTextColor(myYELLOW); display.setCursor(4,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("People"); /display.setTextColor(myYELLOW); display.setCursor(43,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("0");/ display.setTextColor(myYELLOW); display.setCursor(45,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(v); time2(); } else if (v > 99){ display.setTextColor(myYELLOW); display.setCursor(4,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("People"); display.setTextColor(myYELLOW); display.setCursor(43,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(v); time2(); } }

void pm(){ String query = "from(bucket: "Project_Thoeng")\n
|> range(start: -30s)\n
|> filter(fn: (r) => r._measurement == "wifi_status" and r.SSID == "K@Wiangthoeng 2.4G" and r._field == "ค่าฝุ่นpm 2.5ตัวที่1" and r._field == "pm_sor1")"; FluxQueryResult result = client.query(query); Serial.println("Results : "); float v = 0; while (result.next()) { /String ssid = result.getValueByName("SSID").getString(); Serial.print("SSID"); Serial.print(ssid);/

Serial.print("with RSSI "); float value = result.getValueByName("_value").getLong(); Serial.println(value); v = value; } if (v < 50){ display.clearDisplay(); display.setTextColor(myGREEN); display.setCursor(20,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("PM2.5"); display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myGREEN); display.setCursor(23,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(v); }if (v > 50 && v < 90){ display.clearDisplay(); display.setTextColor(myYELLOW); display.setCursor(20,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("PM2.5"); display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myYELLOW); display.setCursor(23,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(v); }if (v > 90){ display.clearDisplay(); display.setTextColor(myRED); display.setCursor(20,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("PM2.5"); display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myRED); display.setCursor(20,19); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(v); } //time2(); }

void tem(){ String query = "from(bucket: "Project_Thoeng")\n
|> range(start: -30s)\n
|> filter(fn: (r) => r._measurement == "wifi_status" and r._field == "อุณหภูมิตัวที่1")"; FluxQueryResult result = client.query(query); Serial.println("Results : "); long t = 0; while (result.next()) { /String ssid = result.getValueByName("SSID").getString(); Serial.print("SSID '"); Serial.print(ssid);/ Serial.print(" with RSSI "); long value = result.getValueByName("_value").getLong(); Serial.println(value); t = value; } display.clearDisplay(); display.setTextColor(myYELLOW); display.setCursor(24,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print(t); display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myYELLOW); display.setCursor(36,7); //x ต้องเริ่มที่ 0-31, y ต้องเริ่มที่ 0-15 display.print("C"); time2(); }

void Maxsound(){ String query = "from(bucket: "Project_Thoeng")\n
|> range(start: -30s)\n
|> filter(fn: (r) => r._measurement == "wifi_status" and r._field == "sensortanaphat")"; FluxQueryResult result = client.query(query); Serial.println("Results : "); long m = 0.0; while (result.next()) { /String ssid = result.getValueByName("SSID").getString(); Serial.print("SSID"); Serial.print(ssid);/ Serial.print(" with RSSI "); long value = result.getValueByName("_value").getLong(); Serial.println(value); m = value; } //Right Top display.clearDisplay(); if (m < 10){ display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myYELLOW); display.setCursor(10,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print("00"); display.setTextColor(myYELLOW); display.setCursor(22,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print(m); display.setTextColor(myYELLOW); display.setCursor(45,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print("dB"); time2(); } if (m > 85){ if (m >9 && m < 100){ display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myRED); display.setCursor(6,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print("0"); display.setTextColor(myRED); display.setCursor(13,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print(m); display.setTextColor(myRED); display.setCursor(48,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print("dB"); time2(); } } if (m < 85){ if (m >9 && m < 100){ display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myYELLOW); display.setCursor(6,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print("0"); display.setTextColor(myYELLOW); display.setCursor(13,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print(m); display.setTextColor(myYELLOW); display.setCursor(48,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print("dB"); time2(); } } if (m > 99){ display.setTextWrap(false); // don't wrap at end of line display.setTextColor(myRED); display.setCursor(6,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print(m); display.setTextColor(myRED); display.setCursor(48,7); //x ต้องเริ่มที่ 32-64, y ต้องเริ่มที่ 0-15 display.print("dB"); time2(); } }

void cleardisplay1(){ display.clearDisplay(); } Screenshot 2023-03-19 214733

thanks in advance!!

oumpack avatar Mar 19 '23 15:03 oumpack

@oumpack, please, reformat your post. it is almost unreadable.

  • Provide just the relevant parts of your application where you configure the client and write and query
  • Put the source code in the preformat tags.

The general idea - check first query result in the Data Explorer, please.

vlastahajek avatar Mar 26 '23 14:03 vlastahajek