GitPedia
3KUdelta

3KUdelta/Solar_WiFi_Weather_Station

Based on the work of Open Green Energy: First solar Zambretti Forecaster

3 Releases
Latest: 1mo ago
Version 2.6V2.6Latest
3KUdelta3KUdelta·1mo ago·May 6, 2026
GitHub

Changes in V2.6 Sensor migration: replaced HDC1080 with Sensirion SHT45 Configurable sensors via Settings26.h: enable/disable BME280, DS18B20 and SHT45 individually with USE_* defines. BME280 stays mandatory (pressure / Zambretti). Blynk non-blocking: Blynk.begin() replaced with Blynk.config() + Blynk.connect(5000). Station continues without Blynk if the server is unreachable. Blynk.virtualWrite() calls are now guarded by Blynk.connected(). New translation architecture: one file per language with {P} / {E} template markers for precipitation words. Summer/winter switching is automatic. Required libraries: install Adafruit SHT4x Library (and its dependency Adafruit Unified Sensor). The old ClosedCube_HDC1080 library is no longer needed. Bugfixes accumulated from issues over the years: getTemperature() was reading the same DS18B20 conversion 32 times in a row (no-op smoothing) — now performs a single proper 12-bit conversion. ReadFromMQTT() race condition could trigger an unwanted FirstTimeRun() and wipe the 6 h pressure curve when a retained message arrived late — now uses an event flag with 5 s timeout. exit(0) on SPIFFS failure left WiFi active and drained the battery — replaced with goToSleep(60). MQTT reconnect() now retries 3 times instead of giving up after one attempt. goToSleep() no longer publishes status when MQTT is disabled or not connected. Battery voltage now averaged over 16 ADC reads (single-shot reads on ESP8266 are unreliable due to WiFi RF interference). NTP wait loop now calls yield() to prevent soft WDT reset on slow NTP servers. resetFunc() (jump to address 0) replaced with ESP.restart() everywhere — cleaner reset, no more Exception 4 on reboot. Defensive defaults in Zambretti switch statements; double semicolon typo fixed. Battery percentage is now clamped to 0-100% (no more negative values when the divider is disconnected).

Version 2.45v2.45
3KUdelta3KUdelta·1mo ago·May 2, 2026
GitHub

Minor bug fixes.

Version 2.43v2.43
3KUdelta3KUdelta·1y ago·July 2, 2024
GitHub

📋 Changes

  • MQTT, set to non-blocking in case of a broker error
  • switched to open broker HiveMQ
  • reduce writetoSpiffs by factor 3 --> 3 times more lifespan for Flash Memory
  • writings per day now: 48 / per year: 17'520
  • estimated lifespan of Flash Mem: 5.7 years with an expected 100'000 write cycles