2026-06-0200
This commit is contained in:
+3
-1
@@ -37,7 +37,7 @@ lib_deps =
|
||||
build_flags = ${env.build_flags}
|
||||
;-DDEBUG=1
|
||||
-DHW5=1 ;Neue Hardware 5.03 2025-04
|
||||
;-DDISPAY64x128=1
|
||||
-DDISPAY64x128=1
|
||||
-DGRENZWERT=3.70
|
||||
-DSTASSID=\"MagentaWLAN-RGDO\"
|
||||
-DSTAPSK=\"93329248424922704583\"
|
||||
@@ -50,6 +50,8 @@ build_flags = ${env.build_flags}
|
||||
; -DMQTTPORT=1883
|
||||
-Dmqtt_server=\"hjkmqtt.dedyn.io\"
|
||||
-DMQTTPORT=61883
|
||||
-DInnenTemp=\"hjk/devices/TEMPSCHLAFZIM/telemetry/temperature\"
|
||||
-DInnenFeuchtigkeit=\"hjk/devices/TEMPSCHLAFZIM/telemetry/humidity\"
|
||||
-DCO2Wert=\"hjk/devices/257923/telemetry/co2\"
|
||||
-DAKKU=\"hjk/devices/WETTERSTATION/telemetry/battery\"
|
||||
-DWETTER=\"hjk/devices/WETTERSTATION/telemetry/temperature_Htu_21\"
|
||||
|
||||
+48
-14
@@ -200,6 +200,8 @@ const char* topic_Wetter = WETTER;
|
||||
const char* topic_Pressure = LUFTDRUCK;
|
||||
const char* topic_Luftfeuchtigkeit = FEUCHTIGKEIT;
|
||||
const char* topic_Akku = AKKU;
|
||||
const char* topic_InnenTemp = InnenTemp;
|
||||
const char* topic_InnenFeuchtigkeit = InnenFeuchtigkeit;
|
||||
#ifdef CO2Wert
|
||||
const char* topic_Co2 = CO2Wert;
|
||||
#endif
|
||||
@@ -353,6 +355,25 @@ void callback(char* topic1, byte* payload, unsigned int length) {
|
||||
akku = atof(msg);
|
||||
}
|
||||
|
||||
if(strcmp(topic1, topic_InnenTemp )== 0){
|
||||
#ifdef DEBUG
|
||||
Serial.print("Innentemperatur: ");
|
||||
Serial.print(msg);
|
||||
Serial.println(" °C");
|
||||
#endif
|
||||
BME280Data.Temp = atof(msg);
|
||||
|
||||
}
|
||||
|
||||
if(strcmp(topic1, topic_InnenFeuchtigkeit )== 0){
|
||||
#ifdef DEBUG
|
||||
Serial.print("Innenfeuchtigkeit: ");
|
||||
Serial.print(msg);
|
||||
Serial.println(" °C");
|
||||
#endif
|
||||
BME280Data.Feuchte = atoi(msg);
|
||||
|
||||
}
|
||||
#ifdef CO2Wert
|
||||
// CO2 Wert vom Sensor
|
||||
if(strcmp(topic1, topic_Co2)== 0){
|
||||
@@ -387,6 +408,8 @@ void reconnect() {
|
||||
client.subscribe(topic_Luftfeuchtigkeit);
|
||||
client.subscribe(topic_Helligkeit);
|
||||
client.subscribe(topic_Akku);
|
||||
client.subscribe(topic_InnenTemp);
|
||||
client.subscribe(topic_InnenFeuchtigkeit);
|
||||
} else {
|
||||
Serial.print("failed, rc=");
|
||||
Serial.print(client.state());
|
||||
@@ -408,25 +431,30 @@ void ZeigeZeit(tm localTime, int xPos = 2, int yPos = 8)
|
||||
sprintf(szTime, "%02d", localTime.tm_hour);
|
||||
display.setCursor(xPos-1, yPos);
|
||||
display.setFont(&FreeMonoBold12pt7b);
|
||||
display.setTextColor(myWHITE);
|
||||
display.setTextColor(myMAGENTA);
|
||||
display.fillRect(xPos, yPos - 8, 127, 15, myBLACK);
|
||||
display.print(szTime);
|
||||
display.setFont();
|
||||
// Doppelpunkt zeichnen
|
||||
display.fillRect(xPos + 27, yPos -8, 2, 15, myBLACK);
|
||||
if (blinkSek == true) {
|
||||
display.fillRect(xPos + 27, yPos - 3, 2, 2, myWHITE);
|
||||
display.fillRect(xPos + 27, yPos + 1, 2, 2, myWHITE);
|
||||
display.fillRect(xPos + 27, yPos - 3, 2, 2, myMAGENTA);
|
||||
display.fillRect(xPos + 27, yPos + 1, 2, 2, myMAGENTA);
|
||||
}
|
||||
/* display.fillRect(xPos + 27, yPos - 3, 2, 2, myMAGENTA);
|
||||
display.fillRect(xPos + 27, yPos + 1, 2, 2, myMAGENTA); */
|
||||
sprintf(szTime, "%02d", localTime.tm_min);
|
||||
display.setCursor(xPos + 29, yPos);
|
||||
display.setFont(&FreeMonoBold12pt7b);
|
||||
display.setTextColor(myWHITE);
|
||||
display.setTextColor(myMAGENTA);
|
||||
display.fillRect(xPos + 29, yPos - 8, 27, 15, myBLACK);
|
||||
display.print(szTime);
|
||||
display.setFont();
|
||||
display.setCursor(xPos+55,8);
|
||||
display.print(":");
|
||||
display.setCursor(xPos+60,8);
|
||||
display.printf("%02d",timeinfo.tm_sec);
|
||||
display.setFont();
|
||||
}
|
||||
|
||||
void ZeigeTestTime(tm localTime)
|
||||
@@ -492,19 +520,24 @@ void ZeigeCO(int Co2, int xPos = 1, int yPos = 19)
|
||||
|
||||
void ZeigeDatum(tm localTime, int xPos = 2, int yPos = 1)
|
||||
{
|
||||
if (xPos < 2) xPos = 2;
|
||||
if (xPos < 0) xPos = 0;
|
||||
if (yPos < 0) yPos = 0;
|
||||
char szDATUM[20];
|
||||
sprintf(szDATUM, "%s%2d.%02d.%02d", DAY_SHORT[(localTime.tm_wday > 0 ? localTime.tm_wday : 7 )],
|
||||
/* sprintf(szDATUM, "%s%2d.%02d.%02d", DAY_SHORT[(localTime.tm_wday > 0 ? localTime.tm_wday : 7 )],
|
||||
localTime.tm_mday,
|
||||
localTime.tm_mon + 1,
|
||||
(localTime.tm_year+1900)-2000);
|
||||
(localTime.tm_year+1900)-2000); */
|
||||
sprintf(szDATUM, "%s%2d.%02d.", DAY_SHORT[(localTime.tm_wday > 0 ? localTime.tm_wday : 7 )],
|
||||
localTime.tm_mday,
|
||||
localTime.tm_mon + 1);
|
||||
display.setCursor(xPos, yPos);
|
||||
display.fillRect(xPos, yPos-2, 64-xPos, 8+2, (myBLACK));
|
||||
display.fillRect(xPos, yPos, 52-xPos, 16, (myBLACK));
|
||||
// display.setFont(&Picopixel);
|
||||
display.setTextColor(myDATUM);
|
||||
display.setTextColor(myWHITE);
|
||||
display.print(szDATUM);
|
||||
display.setCursor(xPos, yPos+8);
|
||||
sprintf(szDATUM, " %04d",(localTime.tm_year+1900));
|
||||
display.print(szDATUM);
|
||||
display.setFont();
|
||||
|
||||
}
|
||||
|
||||
@@ -950,12 +983,13 @@ void loop() {
|
||||
SekOld = timeinfo.tm_sec;
|
||||
blinkSek = !blinkSek;
|
||||
#ifdef DISPAY64x128
|
||||
ZeigeZeit(timeinfo,30,8);
|
||||
display.setCursor(85,8);
|
||||
ZeigeDatum(timeinfo,0,0);
|
||||
ZeigeZeit(timeinfo,55,8);
|
||||
/* display.setCursor(85,8);
|
||||
display.print(":");
|
||||
display.setCursor(90,8);
|
||||
display.printf("%02d",timeinfo.tm_sec);
|
||||
display.setFont();
|
||||
display.setFont(); */
|
||||
#else
|
||||
ZeigeZeit(timeinfo,1,8);
|
||||
#endif
|
||||
@@ -993,7 +1027,7 @@ void loop() {
|
||||
read_HTU21D();
|
||||
}
|
||||
if (BME280Data.Status == true) {
|
||||
Read_BME280();
|
||||
//Read_BME280();
|
||||
}
|
||||
readHtuFlag = false;
|
||||
Serial.printf(" HTU: %3.2f\t\tBME280: %3.2f\n\n", htu21Data.Temp, BME280Data.Temp);
|
||||
|
||||
Reference in New Issue
Block a user