2025-12-1402
This commit is contained in:
@@ -24,10 +24,10 @@ lib_deps =
|
||||
|
||||
build_flags =
|
||||
-DSCAN=32
|
||||
-DZEILE_3=24
|
||||
-DZEILE_4=32
|
||||
-DZEILE_5=41
|
||||
-DZEILE_5=50
|
||||
-DZEILE_3=25
|
||||
-DZEILE_4=33
|
||||
-DZEILE_5=42
|
||||
-DZEILE_6=51
|
||||
|
||||
[env:debug] ; Entwicklungssystem
|
||||
build_flags = ${env.build_flags}
|
||||
@@ -92,7 +92,7 @@ build_flags = ${env.build_flags}
|
||||
-Dmqtt_user=\"hjk\"
|
||||
-Dmqtt_pass=\"51Fische#\"
|
||||
-DINNEN=\"hjk/devices/TEMPWOHNZIM/telemetry/temperature\"
|
||||
-DINNENHUMITY=\"hjk/devices/TEMPWOHNZIM/telemetry/humity\"
|
||||
-DINNENHUMITY=\"hjk/devices/TEMPWOHNZIM/telemetry/humidity\"
|
||||
-DFLUR=\"hjk/devices/TEMPFLUR/telemetry/temperature\"
|
||||
-DCO2=\"hjk/devices/257923/telemetry/co2\"
|
||||
-DAKKU=\"hjk/devices/WETTERSTATION/telemetry/battery\"
|
||||
|
||||
71
src/main.cpp
71
src/main.cpp
@@ -90,6 +90,8 @@ uint16_t myBLACK = display.color565(0, 0, 0);
|
||||
uint16_t myDATUM = display.color565(128, 128, 128);
|
||||
uint16_t myTEMP = display.color565(255, 255, 255);
|
||||
uint16_t myCo = display.color565(0, 64, 0);
|
||||
uint16_t myHimmelblau = display.color565(0, 95, 127);
|
||||
|
||||
|
||||
uint16_t myTEST = display.color565(30, 30, 0);
|
||||
|
||||
@@ -128,6 +130,7 @@ float Covid19 = 0.00;
|
||||
float Aussentemp = -99.90;
|
||||
int Pressure = 0;
|
||||
float TempWohn = -99.90;
|
||||
int FeuchtWohn = 0;
|
||||
float TempFlur = -99.99;
|
||||
float Luftfeuchtigkeit = 0.00;
|
||||
float Akku = -99.00;
|
||||
@@ -172,8 +175,10 @@ bool getNTPtime(int sec);
|
||||
void showTime(tm localTime);
|
||||
static uint32_t lastTime = 0; // millis() memory
|
||||
static void setup_wifi();
|
||||
void ZeigeTemperatur(float temperatur, uint16_t Color);
|
||||
void ZeigeInnenFeuchtigkeit(float Luftfeuchtigkeit);
|
||||
void ZeigeTemperatur(float temperatur, uint16_t Zeile, uint16_t Color);
|
||||
void ZeigeInnenFeuchtigkeit(float Luftfeuchtigkeit, uint16_t Zeile, uint16_t Color);
|
||||
void ZeigeLuftdruck(float Druck, uint16_t zeile, uint16_t Color);
|
||||
void ZeigeAussenTemp(float temperatur, uint16_t zeile, uint16_t Color);
|
||||
|
||||
#ifdef ESP8266
|
||||
// ISR for display refresh
|
||||
@@ -293,7 +298,7 @@ void callback(char* topic1, byte* payload, unsigned int length) {
|
||||
Serial.print("Luftfeuchtigkeit Innen: ");
|
||||
Serial.print(msg);
|
||||
Serial.println(" %");
|
||||
TempWohn = atof(msg);
|
||||
FeuchtWohn = atof(msg);
|
||||
}
|
||||
#endif
|
||||
#ifdef FLUR
|
||||
@@ -343,6 +348,7 @@ void reconnect() {
|
||||
client.subscribe(topic_Wetter);
|
||||
client.subscribe(topic_Pressure);
|
||||
client.subscribe(topic_Innen);
|
||||
client.subscribe(topic_Innen_humity);
|
||||
#ifdef FLUR
|
||||
client.subscribe(topic_Flur);
|
||||
#endif
|
||||
@@ -779,11 +785,11 @@ void loop() {
|
||||
blinkSek = !blinkSek;
|
||||
ZeigeDatum(timeinfo, 1, 0);
|
||||
ZeigeZeit(timeinfo, TimeX, TimeY);
|
||||
ZeigeTemperatur(TempWohn, myGREEN);
|
||||
ZeigeInnenFeuchtigkeit(Luftfeuchtigkeit);
|
||||
display.fillRect(0, 32, 64, 9, myBLUE);
|
||||
display.fillRect(0, 41, 64, 9, myRED);
|
||||
display.fillRect(0, 50, 64, 9, myYELLOW);
|
||||
ZeigeTemperatur(TempWohn, ZEILE_3, myGREEN);
|
||||
ZeigeInnenFeuchtigkeit(FeuchtWohn, ZEILE_3, myGREEN);
|
||||
//display.fillRect(0, ZEILE_4, 64, 9, myBLUE);
|
||||
ZeigeAussenTemp(Aussentemp, ZEILE_5, myHimmelblau);
|
||||
ZeigeLuftdruck(Pressure, ZEILE_6, myHimmelblau);
|
||||
|
||||
#ifdef Co2
|
||||
ZeigeCO(1,CoY);
|
||||
@@ -898,37 +904,68 @@ void showTime(tm localTime) {
|
||||
);
|
||||
}
|
||||
|
||||
void ZeigeTemperatur(float temperatur, uint16_t Color){
|
||||
void ZeigeTemperatur(float temperatur, uint16_t zeile, uint16_t Color){
|
||||
char szWetter[15];
|
||||
if (Aussentemp > -99)
|
||||
{
|
||||
dtostrf(temperatur, 5, 1, szWetter);
|
||||
display.setFont();
|
||||
display.setCursor(1, 24);
|
||||
display.setCursor(1, zeile);
|
||||
display.setTextColor(Color);
|
||||
display.fillRect(0, 23, 40, 9, myBLACK);
|
||||
display.fillRect(0, zeile - 1, 40, 9, myBLACK);
|
||||
display.print(szWetter);
|
||||
display.setCursor(31, 19);
|
||||
display.setCursor(31, zeile - 5);
|
||||
display.setFont(&Picopixel);
|
||||
display.print("o");
|
||||
display.setCursor(34, 80);
|
||||
display.setFont();
|
||||
display.setCursor(34, zeile);
|
||||
display.print("C");
|
||||
display.setFont(0);
|
||||
}
|
||||
}
|
||||
|
||||
void ZeigeInnenFeuchtigkeit(float Luftfeuchtigkeit){
|
||||
void ZeigeInnenFeuchtigkeit(float Luftfeuchtigkeit, uint16_t zeile, uint16_t Color){
|
||||
char szWetter[15];
|
||||
if (Aussentemp > -99)
|
||||
{
|
||||
dtostrf(Luftfeuchtigkeit, 2, 0, szWetter);
|
||||
display.setFont();
|
||||
display.setCursor(40, 24);
|
||||
display.setTextColor(myGREEN);
|
||||
display.fillRect(40, 23, 64, 9, myBLACK);
|
||||
display.setCursor(46, zeile);
|
||||
display.setTextColor(Color);
|
||||
display.fillRect(46, zeile - 1, 64, 9, myBLACK);
|
||||
display.print(szWetter);
|
||||
display.print("%");
|
||||
display.setFont(0);
|
||||
}
|
||||
}
|
||||
|
||||
void ZeigeLuftdruck(float Pressure, uint16_t zeile, uint16_t Color){
|
||||
char szWetter[15];
|
||||
dtostrf(Pressure, 4, 0, szWetter);
|
||||
display.setFont();
|
||||
display.fillRect(0, zeile - 1, 64, 10, myBLACK);
|
||||
display.setCursor(10, zeile);
|
||||
display.setTextColor(myHimmelblau);
|
||||
display.print(szWetter);
|
||||
display.print(" hPa");
|
||||
display.setFont(0);
|
||||
|
||||
}
|
||||
|
||||
void ZeigeAussenTemp(float temperatur, uint16_t zeile, uint16_t Color){
|
||||
char szWetter[15];
|
||||
dtostrf(temperatur, 6, 1, szWetter);
|
||||
display.setFont();
|
||||
display.fillRect(0, zeile - 1, 64, 10, myBLACK);
|
||||
display.setCursor(2, zeile);
|
||||
display.setTextColor(myHimmelblau);
|
||||
display.print(szWetter);
|
||||
display.setCursor(38, zeile - 5);
|
||||
display.setFont(&Picopixel);
|
||||
display.print("o");
|
||||
display.setFont();
|
||||
display.setCursor(42, zeile);
|
||||
display.print("C");
|
||||
display.setFont(0);
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user