Compare commits

..
7 Commits
Author SHA1 Message Date
Amir 4e9b9495cd Update README for version 6.2.3 changes
Updated version number to 6.2.3 and added highlights for the new version.
2026-04-01 00:00:46 +02:00
Amir 1b17a7b80c Bump version to 6.2.3 and update release notes
Updated version to 6.2.3 with release date 2026-04-01. Added highlights for version 6.2.3 including a bug fix for state-based display refresh logic.
2026-03-31 23:59:01 +02:00
Amir 91dea24da8 Revise CHANGELOG for version 6.2.3 updates
Updated changelog to document the fix for state-based display refresh logic in version 6.2.3. The refresh logic now checks for hour changes instead of minute marks to ensure timely updates.
2026-03-31 23:55:27 +02:00
Amir 52c3727d39 Update to v6.2.3 - State-based display refresh logic
FIX: State-based display refresh logic
  - Problem: Screen would occasionally fail to update if the ESP32 was busy 
    (fetching data or reconnecting WiFi) during the exact 00/15/30/45 minute mark.
  - Fix: Switched from "Event-Based" (refresh only AT minute X) to "State-Based" 
    (refresh IF current time != last refresh time). This ensures the screen 
    updates immediately even if the device was busy during the transition.
  - Updated version strings throughout the UI.
2026-03-31 23:46:33 +02:00
Amir 824170a6d1 Update VERSION.md for version 6.2.2
Updated version information from 6.2.1 to 6.2.2, added highlights for the new version, and included bug fix details.
2026-03-31 21:38:45 +02:00
Amir dfb11004ba Update README for version 6.2.2 release
Updated version number to 6.2.2 and added highlights for the new version.
2026-03-31 21:36:15 +02:00
Amir 739b21609e Revise CHANGELOG for version 6.2.2 updates
Fixed a bug causing blank lines in the display for current prices and hour. Updated logic to ensure rows always show relevant information.
2026-03-31 21:32:19 +02:00
4 changed files with 1906 additions and 9 deletions
+31
View File
@@ -2,6 +2,37 @@
All notable changes to this project are documented here.
## v6.2.3 - State-based display refresh logic fix (2026-04-01):
**Summary**
The refresh logic should be "State-Based" rather than "Event-Based." Instead of checking if the minute is zero, it should check if the current hour is different from the last recorded hour.
### Problem: Screen would occasionally fail to update if the ESP32 was busy
- fetching data or reconnecting WiFi) during the exact 00/15/30/45 minute mark.
### Solution: Switched from "Event-Based" (refresh only AT minute X) to "State-Based"
(refresh IF current time != last refresh time).
- This ensures the screen updates immediately even if the device was busy during the transition.
---
## v6.2.2 - Display blank lines issue fix (2026-03-31):
**Summary**
Fixed a bug where the display was showing blank lines
### Problem: Sometimes rows 0 and 1 (current 15-min prices and current hour) were blank
**Cause:** The "hour suppression" logic was hiding the current hour unexpectedly
### Solution:
- Row 1 (current hour) now ALWAYS shows - suppression logic only applies to rows 2-3
- Row 0 (15-min details) also always shows for the current hour
---
## v6.2.1 Current Interval Fix (20260329)
File diff suppressed because it is too large Load Diff
+12 -1
View File
@@ -11,12 +11,23 @@ This project is an ArduinoIDEfriendly firmware for the **Seeed XIAO ESP32
- Uses a white LED and an optional presence sensor to give quick visual feedback.
- Stores daily price data in **NVS** to survive reboots and reduce API calls.
The latest sketch implements **Version 6.2.1**.
The latest sketch implements **Version 6.2.3**.
---
## Version Highlights
### v6.2.3 - State-based display refresh logic (critical fix of v6.2.2 update)
- Problem: Screen would occasionally fail to update if the ESP32 was busy (fetching data or reconnecting WiFi) during the exact 00/15/30/45 minute mark.
- Fix: Switched from "Event-Based" (refresh only AT minute X) to "State-Based" (refresh IF current time != last refresh time). This ensures the screen updates immediately even if the device was busy during the transition.
### v6.2.2 - Display Blank Lines Issue Fix (critical fix of v6.2.1 update)
- Problem: Sometimes rows 0 and 1 (current 15-min prices and current hour) were blank.
- Cause: The "hour suppression" logic was hiding the current hour unexpectedly.
- Fix:
- Row 1 (current hour) now ALWAYS shows - suppression logic only applies to rows 2-3.
- Row 0 (15-min details) also always shows for the current hour.
### v6.2.1 Current Interval Fix (critical fix of v6.2.0 update)
- Fixed display showing prices one hour ahead of the current time.
- `findCurrentPriceIndex()` now correctly returns the current 15-minute interval.
+21 -8
View File
@@ -2,13 +2,28 @@
## Current firmware
- **Version:** 6.2.1
- **Release date:** 2026-03-29
- **Version:** 6.2.3
- **Release date:** 2026-04-01
- **Target MCU:** Seeed XIAO ESP32C3
- **Display:** 20x4 I²C LCD (PCF8574, default address `0x27`)
- **API endpoint:** `https://api.energy-charts.info/price?bzn=SI`
- **Resolution:** 15minute intervals, hourly averages for overview
## Highlights of v6.2.3
- **BUG FIX**: State-based display refresh logic
- Problem: Screen would occasionally fail to update if the ESP32 was busy (fetching data or reconnecting WiFi) during the exact 00/15/30/45 minute mark.
- Fix: Switched from "Event-Based" (refresh only AT minute X) to "State-Based" (refresh IF current time != last refresh time). This ensures the screen updates immediately even if the device was busy during the transition.
## Highlights of v6.2.2
- **BUG FIX**: Display blank lines issue
- Problem: Sometimes rows 0 and 1 (current 15-min prices and current hour) were blank
- Cause: The "hour suppression" logic was hiding the current hour unexpectedly
- Fix:
- Row 1 (current hour) now ALWAYS shows - suppression logic only applies to rows 2-3
- Row 0 (15-min details) also always shows for the current hour
## Highlights of v6.2.1
- **BUG FIX**: Fixed `findCurrentPriceIndex()` to return the correct current interval.
@@ -27,11 +42,6 @@
- The ticker now works correctly on all days, including DST switch days, with no manual intervention.
- **Future-proof**: If EU cancels DST, only the `TZ_CET_CEST` string needs updating (one line of code).
For full details, see:
- [CHANGELOG.md](./CHANGELOG.md)
- [README.md](./README.md)
## Previous firmware
- **Version:** 6.1.2
@@ -49,4 +59,7 @@ For full details, see:
- **Version:** 6.1.0 (2026-01-30) Midnight fetch and market day detection fixes
- **Version:** 6.0.0 (2026-01-27) NVS storage and daily fetch
For detailed history, see [CHANGELOG.md](./CHANGELOG.md).
For full details, see:
- [CHANGELOG.md](./CHANGELOG.md)
- [README.md](./README.md)