misc.ino 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. unsigned long lastRun = 0;
  2. int count100ms = 0;
  3. int countSeconds = 0;
  4. int countMeasureInterval = 0;
  5. int countDisplayInterval = 0;
  6. void checkMillis() {
  7. if ( (millis() - lastRun) > 100 ) {
  8. lastRun = millis();
  9. every100ms();
  10. }
  11. }
  12. void every100ms() {
  13. if (count100ms < 10) count100ms++;
  14. else {
  15. count100ms = 0;
  16. everySecond();
  17. }
  18. checkSaveConfigTriggered();
  19. }
  20. void everySecond() {
  21. if (countSeconds < 60) countSeconds++;
  22. else {
  23. countSeconds = 0;
  24. everyMinute();
  25. }
  26. checkUseDomoticz();
  27. handleDisplayTimeout();
  28. checkValuesChanged();
  29. if (countMeasureInterval < measureInterval) countMeasureInterval++;
  30. else {
  31. countMeasureInterval = 0;
  32. measureTempHum();
  33. thermostat();
  34. }
  35. if (countDisplayInterval < displayInterval) countDisplayInterval++;
  36. else {
  37. countDisplayInterval = 0;
  38. updateDisplay();
  39. }
  40. }
  41. void everyMinute() {
  42. mqttPublishHeartbeat();
  43. publishStatus();
  44. publishCurrentSensorValues();
  45. publishCurrentThermostatValues();
  46. updateDomoticzDevices();
  47. // Serial.print("WiFi Status: ");
  48. // Serial.println(WiFi.status());
  49. }