Compare commits

...
7 Commits
Author SHA1 Message Date
Amir 4c5d7d2ebc Price ticker v6.1.1 - lowest price indicator update
NOTE:  This version is identical to v6.1 except for the FIX: Daily lowest/highest hourly indicator (and daily average) now correctly considers ALL hourly averages, including negative values and 0.0 (which can be real prices).
2026-03-07 10:40:18 +01:00
Amir b54c40cdf7 Delete ESP32_stanadlone_electricity_ticker_6_1_1.ino 2026-03-07 10:29:47 +01:00
Amir 08db5888cb Update VERSION.md for firmware 6.1.1 release
Updated version information for firmware 6.1.1, including fixes for price markers and daily average calculations.
2026-03-07 10:19:23 +01:00
Amir 8f1f017232 Update README for firmware version 6.1.1
Updated README to reflect changes in firmware version from 6.1.0 to 6.1.1, including fixes for daily low/high hourly markers and other enhancements.
2026-03-07 10:17:10 +01:00
Amir 189350e4fe Fix daily min/max calculations for negative and zero prices
This release addresses a bug in the daily min/max price calculations, ensuring that negative and zero prices are now included. It also corrects the daily average computation by considering all valid hours.
2026-03-07 10:08:48 +01:00
Amir 827623112f Create new sketch file ESP32_stanadlone_electricity_ticker_6_1_1.ino by copying and updating from v6.1 2026-03-07 10:01:08 +01:00
Amir fd5dad4cb5 Delete 20251005_electricity_ticker_10_5.5_latest_scrl23_old.ino 2026-02-01 22:11:16 +01:00
5 changed files with 1692 additions and 1487 deletions
File diff suppressed because it is too large Load Diff
+32
View File
@@ -4,6 +4,38 @@ All notable changes to this project are documented here.
---
## v6.1.1 Daily Min/Max Includes Negative & Zero Prices (20260307)
**Summary**
This release fixes a bug where the **daily lowest / highest hourly price marker** ignored negative prices (and also ignored 0.0), which could cause the ticker to incorrectly mark the **lowest positive** hour as the daily minimum.
### Fixed: Daily Low/High Marker Ignored Negative & Zero Prices
**Problem (v6.1.0):**
- In `processJsonData()` the daily min/max scan used:
- `if (hourlyAvg > 0) { ... }`
- This had two side effects:
1. **Negative** hourly averages were completely skipped.
2. A true price of **0.0** was also skipped (even though 0 can be a valid market price).
- Additionally, the daily average was computed as `sum / 24.0` even though hours were being skipped from `sum`, making the daily average incorrect whenever any hour was excluded.
**Solution (v6.1.1):**
- The min/max and average scan now:
- Treats an hour as valid based on **data availability** (having all 4×15minute entries), not based on value sign.
- Includes **all values** (negative, zero, positive) when computing:
- `lowestPriceIndex`
- `highestPriceIndex`
- `averagePrice`
- Computes `averagePrice` using the number of valid hours (normally 24).
---
## v6.1.0 Midnight Fetch & Market Day Fix (20260130)
**Summary**
File diff suppressed because it is too large Load Diff
+6 -3
View File
@@ -9,8 +9,9 @@ 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.1.0**, focusing on:
The latest sketch implements **Version 6.1.1**, focusing on:
- Version 6.1.1 fix: Correct daily **low/high hourly markers** (now includes negative and **0.0** prices).
- Daily (not hourly) API fetching.
- Robust **NVS storage** of daily price data.
- Correct **CET/CEST** handling.
@@ -236,7 +237,7 @@ The LED is driven with various patterns to indicate price level; see “LED Pric
---
## Firmware Features (v6.1.0)
## Firmware Features (v6.1.1)
### Core Display & Pricing
@@ -260,6 +261,8 @@ The LED is driven with various patterns to indicate price level; see “LED Pric
- `LiquidCrystal_I2C` with custom characters for:
- Local language letters.
- Lowprice and highprice indicators.
- **Daily min/max markers**:
- The low/high hourly indicators now consider **negative**, **0.0**, and positive prices (v6.1.1 fix).
### LED Price Signalling
@@ -349,7 +352,7 @@ After successful NTP time sync:
---
## Daily Fetch Strategy (v6.1.0)
## Daily Fetch Strategy (v6.1.0+)
### Goals
+19 -5
View File
@@ -2,6 +2,25 @@
## Current firmware
- **Version:** 6.1.1
- **Release date:** 2026-03-07
- **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.1.1
- Fix: daily **lowest/highest hourly price marker** now includes **negative** and **0.0** prices.
- Fix: daily average is computed over the number of valid hours (instead of always dividing by 24 even when hours were skipped).
For full details, see:
- [CHANGELOG.md](./CHANGELOG.md)
- [README.md](./README.md)
## Previous firmware
- **Version:** 6.0.0
- **Release date:** 2026-01-27
- **Target MCU:** Seeed XIAO ESP32C3
@@ -19,8 +38,3 @@
- Then topofhour retries until successful.
- Prevents yesterdays prices from ever being shown as todays.
- Secondary info menu extended with **NVS status** and clear version label.
For full details, see:
- [CHANGELOG.md](./CHANGELOG.md)
- [README.md](./README.md)