2025-12-1101

This commit is contained in:
2025-12-11 19:31:50 +01:00
parent 1b6c3e7db6
commit 04d2f0aaa4
2 changed files with 24 additions and 56 deletions

View File

@@ -39,12 +39,12 @@ build_flags =
build_flags = ${env.build_flags} build_flags = ${env.build_flags}
-DDEBUG=0 -DDEBUG=0
-DNOADS=0 -DNOADS=0
-DNAME=\"WETTERSTATION2\" -DNAME=\"MESSSENSOR\"
-DSTASSID=\"MagentaWLAN-RGDO\" -DSTASSID=\"MagentaWLAN-RGDO\"
-DSTAPSK=\"93329248424922704583\" -DSTAPSK=\"93329248424922704583\"
-DGATEWAY=\"192.168.127.1\" -DGATEWAY=\"192.168.127.1\"
-DDNS=\"192.168.127.1\" -DDNS=\"192.168.127.1\"
-DKMYIP=\"192.168.127.45\" -DMYIP=\"192.168.127.45\"
-Dmqtt_server=\"hjkmqtt.dedyn.io\" -Dmqtt_server=\"hjkmqtt.dedyn.io\"
-Dmqtt_port=61883 -Dmqtt_port=61883
-DTERROR=5 -DTERROR=5
@@ -79,14 +79,13 @@ build_flags = ${env.build_flags}
build_flags = ${env.build_flags} build_flags = ${env.build_flags}
-DDEBUG=0 -DDEBUG=0
-DNOADS=0 -DNOADS=0
-DNAME=\"WETTERSTATION2\" -DNAME=\"Messsensor\"
-DSTASSID=\"MagentaWLAN-RGDO\" -DSTASSID=\"MagentaWLAN-RGDO\"
-DSTAPSK=\"93329248424922704583\" -DSTAPSK=\"93329248424922704583\"
-DGATEWAY=\"192.168.127.1\"
-DDNS=\"192.168.127.1\"
-DKMYIP=\"192.168.127.44\"
-Dmqtt_server=\"192.168.127.193\" -Dmqtt_server=\"192.168.127.193\"
-Dmqtt_port=1883 -Dmqtt_port=1883
-Dmqtt_user=\"hjk\"
-Dmqtt_pass=\"51Fische\"
-DTERROR=5 -DTERROR=5
-DTLOWBATT=60 -DTLOWBATT=60
-DTINTERVAL=5 -DTINTERVAL=5

View File

@@ -31,6 +31,7 @@ void callback(char* topic1, byte* payload, unsigned int length);
const char* ssid = "MagentaWLAN-RGDO"; const char* ssid = "MagentaWLAN-RGDO";
const char* password = "93329248424922704583"; const char* password = "93329248424922704583";
String hostname = "MESSSENSOR";
//boris //boris
//13.April13 //13.April13
@@ -43,23 +44,7 @@ const char* mqtt_password = "13.April13"; */
//const char* mqtt_server = "hjkmqtt.dedyn.io"; //const char* mqtt_server = "hjkmqtt.dedyn.io";
#ifdef TEST
//onst char* ssid = "FRITZ!Box7362SL";
//const char* ssid = "Redmi-Note-11";
//const char* password = "BorisundEva2007";
//const char* password = "51Fische#";
IPAddress ip( 192, 168, 2, 199 );
IPAddress gateway( 192, 168, 2, 1 );
IPAddress subnet( 255, 255, 255, 0 );
IPAddress dns(192, 168, 2, 1); // DNS-Server
#else
const char* ssid = "WLAN-7QHHAK";
const char* password = "3557919930817586";
IPAddress ip( 192, 168, 127, 212 );
IPAddress gateway( 192, 168, 127, 1 );
IPAddress subnet( 255, 255, 255, 0 );
IPAddress dns(192, 168, 127, 1); // DNS-Server
#endif
const unsigned long interval = 1 * 60000000UL; // Minuten * Mikrosekunden für Sleep Mode const unsigned long interval = 1 * 60000000UL; // Minuten * Mikrosekunden für Sleep Mode
const unsigned long intervalLowBatt = 10 * 60000000UL; // Minuten * Mikrosekunden für Sleep Mode, Akku entladen const unsigned long intervalLowBatt = 10 * 60000000UL; // Minuten * Mikrosekunden für Sleep Mode, Akku entladen
@@ -78,6 +63,7 @@ char topic_1[50];
char topicWert[20]; char topicWert[20];
char msg[20]; char msg[20];
int SystemStatus; int SystemStatus;
IPAddress ip;
void flip(){ void flip(){
@@ -102,19 +88,12 @@ void setup() {
pinMode(BUILTIN_LED, OUTPUT); // Initialize the BUILTIN_LED pin as an output pinMode(BUILTIN_LED, OUTPUT); // Initialize the BUILTIN_LED pin as an output
digitalWrite(BUILTIN_LED, LOW); digitalWrite(BUILTIN_LED, LOW);
Serial.print("STATUS (Systemmeldung): "); Serial.println(SystemStatus); Serial.print("STATUS (Systemmeldung): "); Serial.println(SystemStatus);
//init_MCP9808();
//Init_BME280();
init_HTU21(); init_HTU21();
read_HTU21D(); read_HTU21D();
Serial.println(" "); Serial.println(" "); Serial.println(" "); Serial.println(" "); Serial.println(" "); Serial.println(" ");
//read_BME_280();
//valTemp = getTemperature_MCP9808();
setup_wifi(); setup_wifi();
// ---------------------------------
// Status ändern !!! 0
datenSave(0);
// ---------------------------------
digitalWrite(BUILTIN_LED, HIGH); digitalWrite(BUILTIN_LED, HIGH);
deviceId = ESP.getChipId(); deviceId = ESP.getChipId();
sprintf(sID, "%010ld", deviceId); sprintf(sID, "%010ld", deviceId);
@@ -144,22 +123,19 @@ void callback(char* topic1, byte* payload, unsigned int length) {
void reconnect() { void reconnect() {
unsigned long Pause = 0; unsigned long Pause = 0;
unsigned long ErrLoop = 0; unsigned long ErrLoop = 0;
sprintf(clientName, "%s%s", "ESP8266Client", sID ); sprintf(clientName, "%s%s", NAME, sID );
// Loop until we're reconnected // Loop until we're reconnected
while (!client.connected()) { while (!client.connected()) {
Serial.print("Attempting MQTT connection..."); Serial.print("Attempting MQTT connection...");
// Attempt to connect // Attempt to connect
// If you do not want to use a username and password, change next line to // If you do not want to use a username and password, change next line to
// if (client.connect("ESP8266Client")) { if (client.connect("ESP8266Client")) {
//if (client.connect(clientName, mqtt_user, mqtt_pass)) { //if (client.connect(clientName, mqtt_user, mqtt_pass)) {
if (client.connect(clientName)) {
Serial.println("connected"); Serial.println("connected");
sprintf(topic_1, "%s%ld%s", "hjk/devices/", deviceId, "/telemetry/korektur" ); sprintf(topic_1, "%s%s%s", "hjk/devices/", NAME, "/telemetry/korektur" );
client.subscribe(topic_1); client.subscribe(topic_1);
blink.detach(); blink.detach();
digitalWrite(LED_BUILTIN, HIGH); digitalWrite(LED_BUILTIN, HIGH);
// sprintf(topic, "%s%ld%s", "hjk/devices/", deviceId, "/telemetry/ID" );
// client.publish(topic, sID);
} else { } else {
ErrLoop ++; ErrLoop ++;
blink.attach(0.8, flip); blink.attach(0.8, flip);
@@ -197,6 +173,11 @@ void setup_wifi() {
delay( 1 ); delay( 1 );
WiFi.persistent( false ); WiFi.persistent( false );
WiFi.mode( WIFI_STA ); WiFi.mode( WIFI_STA );
WiFi.setHostname(hostname.c_str()); //define hostname
WiFi.mode( WIFI_STA );
if (!ip.fromString(MYIP)) { // try to parse into the IPAddress
Serial.println("UnParsable IP");
}
//WiFi.config( ip, dns, gateway, subnet ); //WiFi.config( ip, dns, gateway, subnet );
//WiFi.begin( WLAN_SSID, WLAN_PASSWD ); //WiFi.begin( WLAN_SSID, WLAN_PASSWD );
@@ -213,13 +194,16 @@ void setup_wifi() {
// --------------------------------- // ---------------------------------
endTime = millis(); endTime = millis();
unsigned long Pause = stoerung -((endTime - startTime) * 1000); // Pause unsigned long Pause = stoerung -((endTime - startTime) * 1000); // Pause
Serial.println();
Serial.println("STÖRUNG WiFi.");
Serial.print("Ich gehe für ca. "); Serial.print(Pause/1000/1000/60); Serial.println( " Minuten schlafen.");
ESP.deepSleep(Pause); // Pause ESP.deepSleep(Pause); // Pause
delay(100); delay(100);
} }
} }
Serial.println(" WiFi connected"); Serial.println(" WiFi connected");
Serial.print("IP address: \t"); Serial.print("IP address: \t");
Serial.println(WiFi.localIP()); Serial.print(WiFi.localIP()); Serial.print("\tRESSI: "); Serial.println(WiFi.RSSI());
} }
void loop() { void loop() {
// put your main code here, to run repeatedly: // put your main code here, to run repeatedly:
@@ -236,30 +220,15 @@ void loop() {
#else #else
float valA00 = 3.35; float valA00 = 3.35;
#endif #endif
//read_HTU21D();
//valA00 = htu21Data.Temp;
dtostrf(valA00, 8, 2, msg); dtostrf(valA00, 8, 2, msg);
sprintf(topic, "%s%ld%s", "hjk/devices/", deviceId, "/telemetry/battery" ); sprintf(topic, "%s%s%s", "hjk/devices/", NAME, "/telemetry/battery" );
client.publish(topic, msg, true); client.publish(topic, msg, true);
//sprintf(topic, "%s%ld%s", "hjk/devices/", deviceId, "/telemetry/status" ); sprintf(topic, "%s%s%s", "hjk/devices/", NAME, "/telemetry/temp" );
sprintf(topic, "%s%ld%s", "hjk/devices/", deviceId, "/telemetry/temp" );
dtostrf(htu21Data.Temp, 8, 2, htu21Data.temperature); dtostrf(htu21Data.Temp, 8, 2, htu21Data.temperature);
client.publish(topic, htu21Data.temperature, true); client.publish(topic, htu21Data.temperature, true);
Serial.printf("R1 %3.3f R2 %s\n", htu21Data.Temp, htu21Data.temperature); Serial.printf("R1 %3.3f R2 %s\n", htu21Data.Temp, htu21Data.temperature);
// sprintf(topic, "%s%ld%s", "hjk/devices/", deviceId, "/telemetry/status" );
// sprintf(topicWert,"%d",SystemStatus);
// client.publish(topic, topicWert, true);
//M2M_Temperatur_MCP9808(deviceId);
//M2M_BME280(deviceId);
delay(5000); delay(5000);
endTime = millis(); endTime = millis();
if(Pause <=0){
Pause = 1;
}
delay(5000); delay(5000);
Pause = interval; Pause = interval;
Serial.print("Ich gehe für ca."); Serial.print(Pause/1000/1000); Serial.println( " sek schlafen."); Serial.print("Ich gehe für ca."); Serial.print(Pause/1000/1000); Serial.println( " sek schlafen.");