Hi there.
I´m new to influx, but I can’ t find the problem of my code…
I want to write sensor datas of a loadcell to influx, but I can’ t get a connection. I have a load cell, HX711 (A/D-converter), Esp32. I´m using Arduino IDE.
The code is as follows:
// Inkludieren der notwendigen Bibliotheken basierend auf dem verwendeten Gerät (ESP32 oder ESP8266)
#if defined(ESP32)
#include <WiFi.h> // WiFi-Bibliothek für ESP32
#include <WiFiMulti.h> // Mehrfach-WiFi-Bibliothek für ESP32
WiFiMulti wifiMulti; // WiFiMulti-Objekt für ESP32 erstellen
#define DEVICE "ESP32" // Gerätedefinition für ESP32
#elif defined(ESP8266)
#include <ESP8266WiFi.h> // WiFi-Bibliothek für ESP8266
#include <ESP8266WiFiMulti.h> // Mehrfach-WiFi-Bibliothek für ESP8266
ESP8266WiFiMulti wifiMulti; // WiFiMulti-Objekt für ESP8266 erstellen
#define DEVICE "ESP8266" // Gerätedefinition für ESP8266
#endif
#include <HX711.h> // HX711-Bibliothek einbinden
#include <InfluxDbClient.h> // InfluxDB-Client-Bibliothek einbinden
// WiFi-Zugangsdaten
const char* ssid = "XXX"; // SSID des WLANs
const char* password = "nevershowyourpassword"; // Passwort des WLANs
// Pin-Definitionen für den HX711-Sensor
const int DOUT_PIN = 16; // Pin für Datenleitung des HX711-Sensors
const int CLK_PIN = 4; // Pin für Taktleitung des HX711-Sensors
HX711 scale; // HX711-Objekt erstellen
// InfluxDB-Konfiguration
#define INFLUXDB_URL "https://eu-central-1-1.aws.cloud2.influxdata.com" // InfluxDB-URL
#define INFLUXDB_TOKEN "Jfs3AMxqE-Mizls4zeRNBcZqN5v0aJQDhLM6_ox9qNFE-sFdkRVSKTrEvI6h7Xi6VI4A9eOy4OHmTPW3DHoH6Q==" // InfluxDB-Token
#define INFLUXDB_ORG "1c937f284dc25e64" // InfluxDB-Organisation
#define INFLUXDB_BUCKET "IntelliClamp" // InfluxDB-Bucket
// Zeitzone für Deutschland (Mitteleuropäische Zeit)
const char* TZ_INFO = "CET-1CEST,M3.5.0,M10.5.0/3";
InfluxDBClient client(INFLUXDB_URL, INFLUXDB_ORG, INFLUXDB_BUCKET, INFLUXDB_TOKEN, InfluxDbCloud2CACert); // InfluxDB-Client-Objekt erstellen
void setup() {
Serial.begin(115200); // Serielle Kommunikation initialisieren
// WiFi einrichten
WiFi.mode(WIFI_STA); // WiFi-Modus auf Station-Modus setzen
wifiMulti.addAP(ssid, password); // WiFi-Zugangsdaten hinzufügen
Serial.print("Verbindung zum WiFi herstellen");
int attempts = 0;
while (wifiMulti.run() != WL_CONNECTED && attempts < 20) { // Solange Verbindung nicht hergestellt ist
Serial.print(".");
delay(100);
attempts++;
}
Serial.println();
if (WiFi.status() == WL_CONNECTED) {
Serial.println("WiFi verbunden!");
} else {
Serial.println("WiFi Verbindung fehlgeschlagen!");
}
// Zeit synchronisieren
timeSync(TZ_INFO, "pool.ntp.org", "time.nis.gov");
// Überprüfen der Serververbindung
if (client.validateConnection()) {
Serial.print("Verbunden mit InfluxDB: ");
Serial.println(client.getServerUrl());
} else {
Serial.print("InfluxDB-Verbindung fehlgeschlagen: ");
Serial.println(client.getLastErrorMessage());
}
// HX711-Sensor konfigurieren
scale.begin(DOUT_PIN, CLK_PIN); // HX711 initialisieren
scale.set_scale(); // Skalierung einstellen
scale.tare(); // Tarierung durchführen
}
void loop() {
float weight = scale.get_units(); // Gewicht vom HX711-Sensor abrufen
Serial.print("Gewicht: "); // Ausgabe im seriellen Monitor
Serial.println(weight); // Ausgabe des Gewichts im seriellen Monitor
// Datenpunkt für InfluxDB erstellen
Point point("weight");
point.addTag("device", "HX711");
point.addField("value", weight);
if (client.writePoint(point)) { // Datenpunkt in InfluxDB schreiben
Serial.println("Schreiben erfolgreich"); // Erfolgsmeldung im seriellen Monitor
} else {
Serial.print("Schreiben fehlgeschlagen: "); // Fehlermeldung im seriellen Monitor
Serial.println(client.getLastErrorMessage()); // Fehlermeldung im seriellen Monitor
}
delay(5000); // 5 Sekunden warten
}
In the serial Monitor it show, that the WiFi Connection is ok. I also get values from the loadcell, but it says the connection to influx is not working and the data points are not written to influxdb.
My newest error message is:
“exit status 1
‘InfluxDbCloud2CACert’ was not declared in this scope”