2025-11-1001 Diverse Kommentare entfernt
This commit is contained in:
149
src/main.cpp
149
src/main.cpp
@@ -161,15 +161,6 @@ const char* mqtt_server = "hjkmqtt.dedyn.io";
|
|||||||
char topic_0[50];
|
char topic_0[50];
|
||||||
char msg[20];
|
char msg[20];
|
||||||
char clientName[30];
|
char clientName[30];
|
||||||
/* const char* topic_1 = "hjk/devices/WETTERSTATIONMARCEL/telemetry/temperature"; // Wohnzimmer 3933178
|
|
||||||
const char* topic_Flur = "hjk/devices/267014/telemetry/temperature"; // Flur
|
|
||||||
const char* topic_3 = "hjk/devices/11277819/telemetry/temperature"; // Büro 11277819 */
|
|
||||||
/* const char* topic_ZeitStart = "hjk/devices/DisplayMarcel/telemetry/Start";
|
|
||||||
const char* topic_ZeitEnde = "hjk/devices/DisplayMarcel/telemetry/Ende";
|
|
||||||
const char* topic_Hell = "hjk/devices/DisplayMarcel/telemetry/Hell";
|
|
||||||
const char* topic_Dunkel = "hjk/devices/DisplayMarcel/telemetry/Dunkel"; */
|
|
||||||
//const char* topic_Co2 = "hjk/devices/257923/telemetry/co2"; // Co2 Sensor
|
|
||||||
const char* topic_Hell = "hjk/devices/DisplayMarcel/telemetry/Lux";
|
|
||||||
const char* topic_Covid = "hjk/devices/Covid19/telemetry/Covid19";
|
const char* topic_Covid = "hjk/devices/Covid19/telemetry/Covid19";
|
||||||
const char* topic_Wetter = "hjk/devices/WETTERSTATIONMARCEL/telemetry/temperature_Htu_21";
|
const char* topic_Wetter = "hjk/devices/WETTERSTATIONMARCEL/telemetry/temperature_Htu_21";
|
||||||
const char* topic_Pressure = "hjk/devices/WETTERSTATIONMARCEL/telemetry/pressure";
|
const char* topic_Pressure = "hjk/devices/WETTERSTATIONMARCEL/telemetry/pressure";
|
||||||
@@ -179,7 +170,6 @@ const char* topic_Akku = "hjk/devices/WETTERSTATIONMARCEL/telemetry/battery";
|
|||||||
const char* topic_Helligkeit = "hjk/devices/DisplayMarcel/telemetry/Lux";
|
const char* topic_Helligkeit = "hjk/devices/DisplayMarcel/telemetry/Lux";
|
||||||
|
|
||||||
void callback(char* topic1, byte* payload, unsigned int length);
|
void callback(char* topic1, byte* payload, unsigned int length);
|
||||||
//void ZeigeZeit(int xPos);
|
|
||||||
void scroll_text(uint8_t ypos, unsigned long scroll_delay, String text, uint8_t colorR, uint8_t colorG, uint8_t colorB, boolean blink);
|
void scroll_text(uint8_t ypos, unsigned long scroll_delay, String text, uint8_t colorR, uint8_t colorG, uint8_t colorB, boolean blink);
|
||||||
void scroll_text2(uint8_t ypos, unsigned long scroll_delay, String text, uint8_t colorR, uint8_t colorG, uint8_t colorB, boolean blink);
|
void scroll_text2(uint8_t ypos, unsigned long scroll_delay, String text, uint8_t colorR, uint8_t colorG, uint8_t colorB, boolean blink);
|
||||||
void scroll_Grad(uint8_t ypos, unsigned long scroll_delay, String text, uint8_t colorR, uint8_t colorG, uint8_t colorB, boolean blink);
|
void scroll_Grad(uint8_t ypos, unsigned long scroll_delay, String text, uint8_t colorR, uint8_t colorG, uint8_t colorB, boolean blink);
|
||||||
@@ -230,7 +220,6 @@ void print_wifi_status() {
|
|||||||
Serial.println(" dBm");
|
Serial.println(" dBm");
|
||||||
display.clearDisplay();
|
display.clearDisplay();
|
||||||
scroll_text(32-16,40,"IP Adress: " + WiFi.localIP().toString()+ " signal strength (RSSI): " + String(rssi, DEC) + " dBm", 96,96,0, false);
|
scroll_text(32-16,40,"IP Adress: " + WiFi.localIP().toString()+ " signal strength (RSSI): " + String(rssi, DEC) + " dBm", 96,96,0, false);
|
||||||
//delay(2000);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void display_update_enable(bool is_enable)
|
void display_update_enable(bool is_enable)
|
||||||
@@ -328,15 +317,11 @@ void reconnect() {
|
|||||||
if (client.connect(clientName)) {
|
if (client.connect(clientName)) {
|
||||||
/* MQTTStatus.setPic(3); */
|
/* MQTTStatus.setPic(3); */
|
||||||
Serial.println("connected");
|
Serial.println("connected");
|
||||||
/* client.subscribe(topic_Co2); */
|
|
||||||
client.subscribe(topic_Covid);
|
client.subscribe(topic_Covid);
|
||||||
client.subscribe(topic_Wetter);
|
client.subscribe(topic_Wetter);
|
||||||
client.subscribe(topic_Pressure);
|
client.subscribe(topic_Pressure);
|
||||||
client.subscribe(topic_Luftfeuchtigkeit);
|
client.subscribe(topic_Luftfeuchtigkeit);
|
||||||
client.subscribe(topic_Helligkeit);
|
client.subscribe(topic_Helligkeit);
|
||||||
/* client.subscribe(topic_Dunkel);
|
|
||||||
client.subscribe(topic_ZeitEnde);
|
|
||||||
client.subscribe(topic_ZeitStart); */
|
|
||||||
client.subscribe(topic_Akku);
|
client.subscribe(topic_Akku);
|
||||||
} else {
|
} else {
|
||||||
Serial.print("failed, rc=");
|
Serial.print("failed, rc=");
|
||||||
@@ -352,7 +337,6 @@ void ZeigeZeit(tm localTime, int xPos = 2, int yPos = 8)
|
|||||||
{
|
{
|
||||||
if (xPos < 4) xPos = 4;
|
if (xPos < 4) xPos = 4;
|
||||||
if (yPos < 4) yPos = 4;
|
if (yPos < 4) yPos = 4;
|
||||||
//Serial.print(timeClient.getFormattedTime()); Serial.println();
|
|
||||||
char szTime[4];
|
char szTime[4];
|
||||||
sprintf(szTime, "%02d", localTime.tm_hour);
|
sprintf(szTime, "%02d", localTime.tm_hour);
|
||||||
display.setCursor(xPos-1, yPos);
|
display.setCursor(xPos-1, yPos);
|
||||||
@@ -367,8 +351,6 @@ void ZeigeZeit(tm localTime, int xPos = 2, int yPos = 8)
|
|||||||
display.fillRect(xPos + 27, yPos - 3, 2, 2, myWHITE);
|
display.fillRect(xPos + 27, yPos - 3, 2, 2, myWHITE);
|
||||||
display.fillRect(xPos + 27, yPos + 1, 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); */
|
|
||||||
sprintf(szTime, "%02d", localTime.tm_min);
|
sprintf(szTime, "%02d", localTime.tm_min);
|
||||||
display.setCursor(xPos + 29, yPos);
|
display.setCursor(xPos + 29, yPos);
|
||||||
display.setFont(&FreeMonoBold12pt7b);
|
display.setFont(&FreeMonoBold12pt7b);
|
||||||
@@ -424,7 +406,6 @@ void ZeigeCO(int xPos = 1, int yPos = 19)
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
//display.setTextColor(myGREEN);
|
|
||||||
display.fillRect(xPos, yPos-2, 64-xPos, 8+2, (myBLACK));
|
display.fillRect(xPos, yPos-2, 64-xPos, 8+2, (myBLACK));
|
||||||
display.print("CO :");
|
display.print("CO :");
|
||||||
display.print(szCO);
|
display.print(szCO);
|
||||||
@@ -449,7 +430,6 @@ void ZeigeDatum(tm localTime, int xPos = 2, int yPos = 1)
|
|||||||
(localTime.tm_year+1900)-2000);
|
(localTime.tm_year+1900)-2000);
|
||||||
display.setCursor(xPos, yPos);
|
display.setCursor(xPos, yPos);
|
||||||
display.fillRect(xPos, yPos-2, 64-xPos, 8+2, (myBLACK));
|
display.fillRect(xPos, yPos-2, 64-xPos, 8+2, (myBLACK));
|
||||||
// display.setFont(&Picopixel);
|
|
||||||
display.setTextColor(myDATUM);
|
display.setTextColor(myDATUM);
|
||||||
display.print(szDATUM);
|
display.print(szDATUM);
|
||||||
display.setFont();
|
display.setFont();
|
||||||
@@ -557,10 +537,6 @@ void ZeigeInnenCO(int Co2){
|
|||||||
display.setTextColor(myRED);
|
display.setTextColor(myRED);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
/* case CO2_WARN_4 ... CO2_WARN_5 -1: {
|
|
||||||
display.setTextColor(myRED);
|
|
||||||
break;
|
|
||||||
} */
|
|
||||||
default: {
|
default: {
|
||||||
display.setTextColor(myMAGENTA);
|
display.setTextColor(myMAGENTA);
|
||||||
break;
|
break;
|
||||||
@@ -678,62 +654,20 @@ void setup() {
|
|||||||
|
|
||||||
// Define your display layout here, e.g. 1/8 step, and optional SPI pins begin(row_pattern, CLK, MOSI, MISO, SS)
|
// Define your display layout here, e.g. 1/8 step, and optional SPI pins begin(row_pattern, CLK, MOSI, MISO, SS)
|
||||||
display.begin(16); // Rows-scan pattern 1/32
|
display.begin(16); // Rows-scan pattern 1/32
|
||||||
//display.begin(8, 14, 13, 12, 4);
|
|
||||||
|
|
||||||
// Define multiplex implemention here {BINARY, STRAIGHT} (default is BINARY)
|
|
||||||
//display.setMuxPattern(BINARY);
|
|
||||||
|
|
||||||
// Set the multiplex pattern {LINE, ZIGZAG,ZZAGG, ZAGGIZ, WZAGZIG, VZAG, ZAGZIG} (default is LINE)
|
|
||||||
// display.setScanPattern(LINE);
|
|
||||||
|
|
||||||
|
|
||||||
// Rotate display
|
|
||||||
//display.setRotate(true);
|
|
||||||
|
|
||||||
// Flip display
|
|
||||||
//display.setFlip(true);
|
|
||||||
|
|
||||||
// Control the minimum color values that result in an active pixel
|
|
||||||
//display.setColorOffset(5, 5,5);
|
|
||||||
|
|
||||||
// Set the multiplex implemention {BINARY, STRAIGHT} (default is BINARY)
|
|
||||||
//display.setMuxPattern(BINARY);
|
|
||||||
|
|
||||||
// Set the color order {RRGGBB, RRBBGG, GGRRBB, GGBBRR, BBRRGG, BBGGRR} (default is RRGGBB)
|
// Set the color order {RRGGBB, RRBBGG, GGRRBB, GGBBRR, BBRRGG, BBGGRR} (default is RRGGBB)
|
||||||
display.setColorOrder(RRBBGG);
|
display.setColorOrder(RRBBGG);
|
||||||
|
|
||||||
// Set the time in microseconds that we pause after selecting each mux channel
|
|
||||||
// (May help if some rows are missing / the mux chip is too slow)
|
|
||||||
//display.setMuxDelay(0,1,0,0,0);
|
|
||||||
|
|
||||||
// Set the number of panels that make up the display area width (default is 1)
|
|
||||||
//display.setPanelsWidth(2);
|
|
||||||
|
|
||||||
// Set the brightness of the panels (default is 255)
|
|
||||||
//display.setBrightness(50);
|
|
||||||
display.setBrightness(255);
|
display.setBrightness(255);
|
||||||
display.clearDisplay();
|
display.clearDisplay();
|
||||||
// Set driver chip type
|
|
||||||
//display.setDriverChip(FM6124);
|
|
||||||
|
|
||||||
display.setTextColor(myRED);
|
display.setTextColor(myRED);
|
||||||
display.setCursor(0,0);
|
display.setCursor(0,0);
|
||||||
display.print("Pixel");
|
display.print("Pixel");
|
||||||
display.setTextColor(myGREEN);
|
display.setTextColor(myGREEN);
|
||||||
display.setCursor(30,0);
|
display.setCursor(30,0);
|
||||||
display.print("Time");
|
display.print("Time");
|
||||||
//----------------------
|
|
||||||
/* display.setTextColor(myBLUE);
|
|
||||||
display.setCursor(2,50);
|
|
||||||
display.print("Pixel");
|
|
||||||
display.setTextColor(myYELLOW);
|
|
||||||
display.setCursor(30,50);
|
|
||||||
display.print("Time"); */
|
|
||||||
display_update_enable(true);
|
display_update_enable(true);
|
||||||
//delay(5000);
|
|
||||||
//--------------------------------------------------
|
|
||||||
//--------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
print_wifi_status();
|
print_wifi_status();
|
||||||
configTime(0, 0, NTP_SERVER);
|
configTime(0, 0, NTP_SERVER);
|
||||||
@@ -904,20 +838,6 @@ static void setup_wifi() {
|
|||||||
client.setCallback(callback);
|
client.setCallback(callback);
|
||||||
Serial.print("IP address: \t");
|
Serial.print("IP address: \t");
|
||||||
Serial.println(WiFi.localIP());
|
Serial.println(WiFi.localIP());
|
||||||
|
|
||||||
/* Serial.begin(115200);
|
|
||||||
Serial.print("Connecting to: ");
|
|
||||||
Serial.println(ssid);
|
|
||||||
WiFi.begin(ssid, pass);
|
|
||||||
|
|
||||||
while(WiFi.status() != WL_CONNECTED){
|
|
||||||
delay(500);
|
|
||||||
Serial.print(".");
|
|
||||||
}
|
|
||||||
Serial.println("");
|
|
||||||
Serial.println("WiFi connected");
|
|
||||||
Serial.print("IP-Address of ESP8266 module: ");
|
|
||||||
Serial.println(WiFi.localIP()); */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -934,9 +854,7 @@ void loop() {
|
|||||||
if (millis() - lastTime >= 1000)
|
if (millis() - lastTime >= 1000)
|
||||||
{
|
{
|
||||||
lastTime = millis();
|
lastTime = millis();
|
||||||
//Co2 = readCO2();
|
|
||||||
blinkSek = !blinkSek;
|
blinkSek = !blinkSek;
|
||||||
//ZeigeTestTime(timeinfo);
|
|
||||||
ZeigeZeit(timeinfo,1,8);
|
ZeigeZeit(timeinfo,1,8);
|
||||||
|
|
||||||
if (akku < 2.85)
|
if (akku < 2.85)
|
||||||
@@ -966,21 +884,11 @@ void loop() {
|
|||||||
}else{
|
}else{
|
||||||
readHtuFlag = true;
|
readHtuFlag = true;
|
||||||
}
|
}
|
||||||
/* if ((timeinfo.tm_hour >= StartderAbdunklung) && timeinfo.tm_hour < EndederAbdunklung)
|
|
||||||
{
|
|
||||||
display.setBrightness(dunkel);
|
|
||||||
#ifdef HELLIGKEIT
|
|
||||||
Serial.printf("Die Helligkeit wird von %0d Uhr bis %0d Uhr auf %00d reduziert\n", StartderAbdunklung, EndederAbdunklung, dunkel);
|
|
||||||
#endif
|
|
||||||
} else
|
|
||||||
{
|
|
||||||
display.setBrightness(hell);
|
|
||||||
} */
|
|
||||||
switch (timeinfo.tm_sec)
|
switch (timeinfo.tm_sec)
|
||||||
{
|
{
|
||||||
case 0 ... 14:
|
case 0 ... 14:
|
||||||
{
|
{
|
||||||
//ZeigeInnenTemp(TemparaturInnen);
|
|
||||||
ZeigeTemperatur(TemparaturInnen, myGREEN);
|
ZeigeTemperatur(TemparaturInnen, myGREEN);
|
||||||
ZeigeInnenFeuchtigkeit(FeuchteInnen);
|
ZeigeInnenFeuchtigkeit(FeuchteInnen);
|
||||||
ZeigeInnenCO(CO2Wert);
|
ZeigeInnenCO(CO2Wert);
|
||||||
@@ -988,7 +896,6 @@ void loop() {
|
|||||||
}
|
}
|
||||||
case 15 ... 29:
|
case 15 ... 29:
|
||||||
{
|
{
|
||||||
//ZeigeAussenTemp(Aussentemp);
|
|
||||||
ZeigeTemperatur(Aussentemp, myHimmelblau);
|
ZeigeTemperatur(Aussentemp, myHimmelblau);
|
||||||
ZeigeAussenFeuchtigkeit(Luftfeuchtigkeit);
|
ZeigeAussenFeuchtigkeit(Luftfeuchtigkeit);
|
||||||
ZeigeLuftdruck(Pressure);
|
ZeigeLuftdruck(Pressure);
|
||||||
@@ -996,7 +903,6 @@ void loop() {
|
|||||||
}
|
}
|
||||||
case 30 ... 44:
|
case 30 ... 44:
|
||||||
{
|
{
|
||||||
//ZeigeInnenTemp(TemparaturInnen);
|
|
||||||
ZeigeTemperatur(TemparaturInnen, myGREEN);
|
ZeigeTemperatur(TemparaturInnen, myGREEN);
|
||||||
ZeigeInnenFeuchtigkeit(FeuchteInnen);
|
ZeigeInnenFeuchtigkeit(FeuchteInnen);
|
||||||
ZeigeInnenCO(CO2Wert);
|
ZeigeInnenCO(CO2Wert);
|
||||||
@@ -1004,61 +910,12 @@ void loop() {
|
|||||||
}
|
}
|
||||||
case 45 ... 59:
|
case 45 ... 59:
|
||||||
{
|
{
|
||||||
//ZeigeAussenTemp(Aussentemp);
|
|
||||||
ZeigeTemperatur(Aussentemp, myHimmelblau);
|
ZeigeTemperatur(Aussentemp, myHimmelblau);
|
||||||
ZeigeAussenFeuchtigkeit(Luftfeuchtigkeit);
|
ZeigeAussenFeuchtigkeit(Luftfeuchtigkeit);
|
||||||
ZeigeLuftdruck(Pressure);
|
ZeigeLuftdruck(Pressure);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//ZeigeLuftdruck(Pressure);
|
|
||||||
|
|
||||||
/* if (Aussentemp > -99.9){
|
|
||||||
scroll_text(matrix_height-8,30,"Luftdruck: " + String(Pressure) + " hPa", 30,30,30, true);
|
|
||||||
char szWetter[10];
|
|
||||||
dtostrf(Aussentemp, 4, 1, szWetter);
|
|
||||||
//Serial.print(Aussentemp); Serial.print(" "); Serial.println(szWetter);
|
|
||||||
scroll_Grad(matrix_height-8,30,"Aussentemperatur: " + String(szWetter), 64,64,64, true);
|
|
||||||
dtostrf(Luftfeuchtigkeit, 4, 1, szWetter);
|
|
||||||
scroll_text(matrix_height-8,30,"Luftfeuchtigkeit: " + String(szWetter) + " %", 48,48,48, true);
|
|
||||||
} */
|
|
||||||
//ZeigeZeit(timeinfo, TimeX, TimeY);
|
|
||||||
//ZeigeZeit(timeinfo, 1,40);
|
|
||||||
/* ZeigeCO(1,CoY);
|
|
||||||
if ((timeinfo.tm_min % 10) == 0){
|
|
||||||
if (Covid19 != 0){
|
|
||||||
scroll_text(matrix_height-8,20,"Landkreis Heilbronn", 30,30,30, true);
|
|
||||||
if (Covid19 <= 500){
|
|
||||||
// ------------------------------------ \204 für ä
|
|
||||||
scroll_text(matrix_height-8,25,"Covid 19 F\204lle in den letzte 7 Tage pro 100000 EW: " + String(Covid19, 1), 40,40,40, true);
|
|
||||||
} else if (Covid19 <= 1000){
|
|
||||||
// ------------------------------------ \204 für ä
|
|
||||||
scroll_text(matrix_height-8,25,"Covid 19 F\204lle in den letzte 7 Tage pro 100000 EW: " + String(Covid19, 1), 64,64,0, true);
|
|
||||||
} else {
|
|
||||||
// ------------------------------------ \204 für ä
|
|
||||||
scroll_text(matrix_height-8,25,"Covid 19 F\204lle in den letzte 7 Tage pro 100000 EW: " + String(Covid19, 1), 64,0,0, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if (Aussentemp > -99.9){
|
|
||||||
scroll_text(matrix_height-8,30,"Luftdruck: " + String(Pressure) + " hPa", 30,30,30, true);
|
|
||||||
char szWetter[10];
|
|
||||||
dtostrf(Aussentemp, 4, 1, szWetter);
|
|
||||||
//Serial.print(Aussentemp); Serial.print(" "); Serial.println(szWetter);
|
|
||||||
scroll_Grad(matrix_height-8,30,"Aussentemperatur: " + String(szWetter), 64,64,64, true);
|
|
||||||
dtostrf(Luftfeuchtigkeit, 4, 1, szWetter);
|
|
||||||
scroll_text(matrix_height-8,30,"Luftfeuchtigkeit: " + String(szWetter) + " %", 48,48,48, true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//scroll_text(matrix_height-16,20,"Temperatur: " + String(Wetter,1) +" °C", 128,30,30, true);
|
|
||||||
/* scroll_text2(matrix_height-24,20,"Liebe Frunde, liebe Nachbarn,", 128,128,0, true);
|
|
||||||
scroll_text2(matrix_height-24,20,"ich w\201nsche Euch allen ein", 128,128,0, true);
|
|
||||||
scroll_text2(matrix_height-24,20,"Frohes neues Jahr 2022.", 128,255,0, true); */
|
|
||||||
|
|
||||||
//ZeigeWetter(double(FlurTemp), WetterY,WetterX);
|
|
||||||
}
|
}
|
||||||
client.loop();
|
client.loop();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user