2025-11-0799 Helligkeits Steuerung geändert

This commit is contained in:
2025-11-07 21:45:37 +01:00
parent 48a95f801d
commit 29a8be80c6

View File

@@ -152,6 +152,8 @@ float TemparaturInnen = 0.00;
bool NOHTU = false; bool NOHTU = false;
bool readHtuFlag = true; bool readHtuFlag = true;
float akku = 2.87; float akku = 2.87;
int Helligkeit = 255;
const char* const PROGMEM DAY_NAMES[] = {"Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"}; const char* const PROGMEM DAY_NAMES[] = {"Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"};
@@ -166,17 +168,20 @@ char clientName[30];
/* const char* topic_1 = "hjk/devices/WETTERSTATIONMARCEL/telemetry/temperature"; // Wohnzimmer 3933178 /* const char* topic_1 = "hjk/devices/WETTERSTATIONMARCEL/telemetry/temperature"; // Wohnzimmer 3933178
const char* topic_Flur = "hjk/devices/267014/telemetry/temperature"; // Flur 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_3 = "hjk/devices/11277819/telemetry/temperature"; // Büro 11277819 */
const char* topic_ZeitStart = "hjk/devices/DisplayMarcel/telemetry/Start"; /* const char* topic_ZeitStart = "hjk/devices/DisplayMarcel/telemetry/Start";
const char* topic_ZeitEnde = "hjk/devices/DisplayMarcel/telemetry/Ende"; const char* topic_ZeitEnde = "hjk/devices/DisplayMarcel/telemetry/Ende";
const char* topic_Hell = "hjk/devices/DisplayMarcel/telemetry/Hell"; const char* topic_Hell = "hjk/devices/DisplayMarcel/telemetry/Hell";
const char* topic_Dunkel = "hjk/devices/DisplayMarcel/telemetry/Dunkel"; const char* topic_Dunkel = "hjk/devices/DisplayMarcel/telemetry/Dunkel"; */
//const char* topic_Co2 = "hjk/devices/257923/telemetry/co2"; // Co2 Sensor //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";
const char* topic_Luftfeuchtigkeit = "hjk/devices/WETTERSTATIONMARCEL/telemetry/humity"; const char* topic_Luftfeuchtigkeit = "hjk/devices/WETTERSTATIONMARCEL/telemetry/humity";
const char* topic_Akku = "hjk/devices/WETTERSTATIONMARCEL/telemetry/battery"; const char* topic_Akku = "hjk/devices/WETTERSTATIONMARCEL/telemetry/battery";
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 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);
@@ -307,13 +312,14 @@ void callback(char* topic1, byte* payload, unsigned int length) {
#endif #endif
Luftfeuchtigkeit = atof(msg); Luftfeuchtigkeit = atof(msg);
} }
if(strcmp(topic1, topic_Hell)== 0){ /* if(strcmp(topic1, topic_Hell)== 0){
#ifdef DEBUG #ifdef DEBUG
Serial.print("Helligkeit: "); Serial.print("Helligkeit: ");
Serial.print(msg); Serial.print(msg);
Serial.println(); Serial.println();
#endif #endif
hell = atoi(msg); hell = atoi(msg);
} }
if(strcmp(topic1, topic_Dunkel)== 0){ if(strcmp(topic1, topic_Dunkel)== 0){
#ifdef DEBUG #ifdef DEBUG
@@ -338,6 +344,15 @@ void callback(char* topic1, byte* payload, unsigned int length) {
Serial.println(); Serial.println();
#endif #endif
EndederAbdunklung = atoi(msg); EndederAbdunklung = atoi(msg);
} */
if(strcmp(topic1, topic_Helligkeit)== 0){
Serial.print("Helligkeit: ");
Serial.print(msg);
Serial.println(" Lux");
Helligkeit = atoi(msg);
if (Helligkeit > 255) Helligkeit = 255;
if (Helligkeit < 0) Helligkeit = 0;
display.setBrightness(Helligkeit);
} }
if(strcmp(topic1, topic_Akku)== 0){ if(strcmp(topic1, topic_Akku)== 0){
#ifdef DEBUG #ifdef DEBUG
@@ -352,19 +367,19 @@ void reconnect() {
sprintf(clientName, "%s%s", "Uhr", "_Zentrale" ); sprintf(clientName, "%s%s", "Uhr", "_Zentrale" );
// 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...");
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_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_Hell); client.subscribe(topic_Helligkeit);
client.subscribe(topic_Dunkel); /* client.subscribe(topic_Dunkel);
client.subscribe(topic_ZeitEnde); client.subscribe(topic_ZeitEnde);
client.subscribe(topic_ZeitStart); client.subscribe(topic_ZeitStart); */
client.subscribe(topic_Akku); client.subscribe(topic_Akku);
} else { } else {
Serial.print("failed, rc="); Serial.print("failed, rc=");
@@ -953,7 +968,7 @@ void loop() {
if (!client.connected()) { if (!client.connected()) {
reconnect(); reconnect();
} }
client.loop();
getNTPtime(10); getNTPtime(10);
@@ -993,7 +1008,7 @@ void loop() {
}else{ }else{
readHtuFlag = true; readHtuFlag = true;
} }
if ((timeinfo.tm_hour >= StartderAbdunklung) && timeinfo.tm_hour < EndederAbdunklung) /* if ((timeinfo.tm_hour >= StartderAbdunklung) && timeinfo.tm_hour < EndederAbdunklung)
{ {
display.setBrightness(dunkel); display.setBrightness(dunkel);
#ifdef HELLIGKEIT #ifdef HELLIGKEIT
@@ -1002,7 +1017,7 @@ void loop() {
} else } else
{ {
display.setBrightness(hell); display.setBrightness(hell);
} } */
switch (timeinfo.tm_sec) switch (timeinfo.tm_sec)
{ {
case 0 ... 14: case 0 ... 14: