Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 21 additions & 15 deletions batcontrol-development/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,37 @@
# 🚀 Release 0.6.0 - in development
# 🚀 Release 0.6.1 - in development

# 🚀 Release 0.6.0 - published on 02.02.2026

## What's Changed
* Introducing the 15-minute calculation slots with dynamic up/downsample
* Configuration for 15 or 60 minutes
* Expected Consumption Wh per hour is now distributed evenly across the 4 slots.
* PV is scaled linear between the adjecent hours.

# 🚀 Release 0.5.6 - published on 05.01.2026
- Introducing the 15-minute calculation slots with dynamic up/downsample
- Configuration for 15 or 60 minutes
- Expected Consumption Wh per hour is now distributed evenly across the 4 slots.
- PV is scaled linear between the adjacent hours.

# 🚀 Release 0.5.7 - published on 05.01.2026

## What's Changed
* HomeAssistant Addon - Add configuration option for sensor unit to avoid get_sensor call.
* HomeAssistant Addon - get_entity call, increase limit for websocket call to 4 MB

- HomeAssistant Addon - Add configuration option for sensor unit to avoid get_sensor call.
- HomeAssistant Addon - get_entity call, increase limit for websocket call to 4 MB

# 🚀 Release 0.5.6 - published on 04.12.2025

## What's Changed
* Fix HomeAssistant forecast cache validation to check specific future hours by @Copilot in https://github.com/muexxl/batcontrol/pull/232
* Fix cache offset bug in HomeAssistant consumption forecast for non-contiguous missing hours by @Copilot in https://github.com/muexxl/batcontrol/pull/235
* Make Fronius inverter and controller IDs configurable by @Copilot in https://github.com/muexxl/batcontrol/pull/239

- Fix HomeAssistant forecast cache validation to check specific future hours by @Copilot in https://github.com/muexxl/batcontrol/pull/232
- Fix cache offset bug in HomeAssistant consumption forecast for non-contiguous missing hours by @Copilot in https://github.com/muexxl/batcontrol/pull/235
- Make Fronius inverter and controller IDs configurable by @Copilot in https://github.com/muexxl/batcontrol/pull/239

# 🚀 Release 0.5.5 - published on 16.11.2025

## What's Changed
* Add energyforecast.de provider with 48-hour forecast window by @Copilot in https://github.com/muexxl/batcontrol/pull/225
* Add custom gh-copilot instruction by @MaStr in https://github.com/muexxl/batcontrol/pull/226
* Fix Tibber class KeyError by fetching from cache like other tariff providers by @Copilot in https://github.com/muexxl/batcontrol/pull/228 Thanks for reporting & testing @magicofit
* energyforecast: Fix response handling by @MaStr in https://github.com/muexxl/batcontrol/pull/229

- Add energyforecast.de provider with 48-hour forecast window by @Copilot in https://github.com/muexxl/batcontrol/pull/225
- Add custom gh-copilot instruction by @MaStr in https://github.com/muexxl/batcontrol/pull/226
- Fix Tibber class KeyError by fetching from cache like other tariff providers by @Copilot in https://github.com/muexxl/batcontrol/pull/228 Thanks for reporting & testing @magicofit
- energyforecast: Fix response handling by @MaStr in https://github.com/muexxl/batcontrol/pull/229

# 🚀 Release 0.5.4 - published on 12.11.2025

Expand Down
22 changes: 11 additions & 11 deletions batcontrol-development/config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: "Batcontrol-development"
description: "(development) Controls the charging of the battery."
version: "0.6.0dev2"
version: "0.6.1dev"
slug: "batcontrol-development"
init: false
#image: "ghcr.io/mastr/batcontrol_ha_addon"
Expand Down Expand Up @@ -43,8 +43,8 @@
password: YOUR-PASSWORD #
max_pv_charge_rate: 0 # Watt, This allows to limit the PV to Battery charge rate. Set to 0 for unlimited charging.
max_grid_charge_rate: 5000 # Watt
fronius_inverter_id: '1' # Optional: ID of the inverter in Fronius API (default: '1')
fronius_controller_id: '0' # Optional: ID of the controller in Fronius API (default: '0')
fronius_inverter_id: "1" # Optional: ID of the inverter in Fronius API (default: '1')
fronius_controller_id: "0" # Optional: ID of the controller in Fronius API (default: '0')
utility:
type: awattar_de #tibber, awattar_at, awattar_de, evcc
apikey: Zz-YOURAPIKEYYOURAPIKEYXXXXX # only required for tibber
Expand All @@ -65,13 +65,13 @@
type: csv
annual_consumption: 4500 # total consumption in kWh p.a. the load profile
load_profile: load_profile.csv #name of the load profile file within the config folder
base_url: ws://homeassistant:8123 # Your HomeAssistant URL
apitoken: YOUR_LONG_LIVED_ACCESS_TOKEN # Get from HomeAssistant Profile
entity_id: sensor.energy_consumption # Entity ID with consumption data (in Wh or kWh)
history_days: "-7;-14;-21" # Days to look back for historical data
history_weights: "1;1;1" # Weight for each history period (1-10), higher = more influence
cache_ttl_hours: 48.0 # How long to cache computed statistics (hours)
multiplier: 1.0 # Multiplier for forecast adjustment (1.0=unchanged, >1.0=increase, <1.0=decrease)
base_url: ws://homeassistant:8123 # Your HomeAssistant URL
apitoken: YOUR_LONG_LIVED_ACCESS_TOKEN # Get from HomeAssistant Profile
entity_id: sensor.energy_consumption # Entity ID with consumption data (in Wh or kWh)
history_days: "-7;-14;-21" # Days to look back for historical data
history_weights: "1;1;1" # Weight for each history period (1-10), higher = more influence
cache_ttl_hours: 48.0 # How long to cache computed statistics (hours)
multiplier: 1.0 # Multiplier for forecast adjustment (1.0=unchanged, >1.0=increase, <1.0=decrease)
sensor_unit: auto # Discover or set sensor unit
mqtt:
enabled: false
Expand Down Expand Up @@ -137,7 +137,7 @@
max_soc: int(0,100)? # (MQTT) Maximum SoC %, optional for mqtt (default: 100)
cache_ttl: int(0,)? # (MQTT) Cache TTL for SOC values in seconds, optional for mqtt (default: 120)
base_topic: str? # (MQTT) base topic, optional for mqtt (default: 'default')
max_pv_charge_rate: float(0,)? # Watt, This allows to limit the PV to Battery charge rate. Set to 0 for unlimited charging.
max_pv_charge_rate: float(0,)? # Watt, This allows to limit the PV to Battery charge rate. Set to 0 for unlimited charging.
max_grid_charge_rate: float(0,)? # Watt, required for all inverter types
fronius_inverter_id: str? # Optional: ID of the inverter in Fronius API (default: '1')
fronius_controller_id: str? # Optional: ID of the controller in Fronius API (default: '0')
Expand Down
58 changes: 41 additions & 17 deletions batcontrol/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,32 @@
# 🚀 Release 0.6.0 - published on 02.02.2026

Default time resolution is 60 minutes.

## What's Changed

- Introducing the 15-minute calculation slots with dynamic up/downsample
- Configuration for 15 or 60 minutes
- Expected Consumption Wh per hour is now distributed evenly across the 4 slots.
- PV is scaled linear between the adjacent hours.

**Full Changelog**: https://github.com/muexxl/batcontrol/compare/0.5.7...0.6.0

---

### 📌 Full Release Notes

👉 [GitHub Release v0.6.0](https://github.com/muexxl/batcontrol/releases/tag/0.6.0)

### 📚 Wiki

👉 [Project Wiki](https://github.com/muexxl/batcontrol/wiki)

# 🚀 Release 0.5.7 - published on 05.01.2026

## What's Changed
* HomeAssistant Addon - Add configuration option for sensor unit to avoid get_sensor call.
* HomeAssistant Addon - get_entity call, increase limit for websocket call to 4 MB

- HomeAssistant Addon - Add configuration option for sensor unit to avoid get_sensor call.
- HomeAssistant Addon - get_entity call, increase limit for websocket call to 4 MB

**Full Changelog**: https://github.com/muexxl/batcontrol/compare/0.5.6...0.5.7

Expand All @@ -19,10 +43,10 @@
# 🚀 Release 0.5.6 - published on 04.12.2025

## What's Changed
* Fix HomeAssistant forecast cache validation to check specific future hours by @Copilot in https://github.com/muexxl/batcontrol/pull/232
* Fix cache offset bug in HomeAssistant consumption forecast for non-contiguous missing hours by @Copilot in https://github.com/muexxl/batcontrol/pull/235
* Make Fronius inverter and controller IDs configurable by @Copilot in https://github.com/muexxl/batcontrol/pull/239

- Fix HomeAssistant forecast cache validation to check specific future hours by @Copilot in https://github.com/muexxl/batcontrol/pull/232
- Fix cache offset bug in HomeAssistant consumption forecast for non-contiguous missing hours by @Copilot in https://github.com/muexxl/batcontrol/pull/235
- Make Fronius inverter and controller IDs configurable by @Copilot in https://github.com/muexxl/batcontrol/pull/239

**Full Changelog**: https://github.com/muexxl/batcontrol/compare/0.5.5...0.5.6

Expand All @@ -39,10 +63,11 @@
# 🚀 Release 0.5.5 - published on 16.11.2025

## What's Changed
* Add energyforecast.de provider with 48-hour forecast window by @Copilot in https://github.com/muexxl/batcontrol/pull/225
* Add custom gh-copilot instruction by @MaStr in https://github.com/muexxl/batcontrol/pull/226
* Fix Tibber class KeyError by fetching from cache like other tariff providers by @Copilot in https://github.com/muexxl/batcontrol/pull/228 Thanks for reporting & testing @magicofit
* energyforecast: Fix response handling by @MaStr in https://github.com/muexxl/batcontrol/pull/229

- Add energyforecast.de provider with 48-hour forecast window by @Copilot in https://github.com/muexxl/batcontrol/pull/225
- Add custom gh-copilot instruction by @MaStr in https://github.com/muexxl/batcontrol/pull/226
- Fix Tibber class KeyError by fetching from cache like other tariff providers by @Copilot in https://github.com/muexxl/batcontrol/pull/228 Thanks for reporting & testing @magicofit
- energyforecast: Fix response handling by @MaStr in https://github.com/muexxl/batcontrol/pull/229

**Full Changelog**: https://github.com/muexxl/batcontrol/compare/0.5.4...0.5.5

Expand All @@ -56,17 +81,16 @@

👉 [Project Wiki](https://github.com/muexxl/batcontrol/wiki)



# 🚀 Release 0.5.4 - published on 12.11.2025

### What's Changed
* Overwork provider management by @MaStr in https://github.com/muexxl/batcontrol/pull/213
* (beta) Add generic MQTT inverter driver & restructure mqtt handling & homeassistant discovery by @Copilot in https://github.com/muexxl/batcontrol/pull/196
* Homeassistant sensor as consumption forecast by @MaStr & @greteOne in https://github.com/muexxl/batcontrol/pull/214
* HA consumption input conversion by @MaStr in https://github.com/muexxl/batcontrol/pull/221
* Ha addon reduce logging by @MaStr in https://github.com/muexxl/batcontrol/pull/222
* Asynchroneaus forecast fetcher via schedule() by @MaStr in https://github.com/muexxl/batcontrol/pull/223

- Overwork provider management by @MaStr in https://github.com/muexxl/batcontrol/pull/213
- (beta) Add generic MQTT inverter driver & restructure mqtt handling & homeassistant discovery by @Copilot in https://github.com/muexxl/batcontrol/pull/196
- Homeassistant sensor as consumption forecast by @MaStr & @greteOne in https://github.com/muexxl/batcontrol/pull/214
- HA consumption input conversion by @MaStr in https://github.com/muexxl/batcontrol/pull/221
- Ha addon reduce logging by @MaStr in https://github.com/muexxl/batcontrol/pull/222
- Asynchroneaus forecast fetcher via schedule() by @MaStr in https://github.com/muexxl/batcontrol/pull/223

**Full Changelog**: https://github.com/muexxl/batcontrol/compare/0.5.3...0.5.4

Expand Down
26 changes: 15 additions & 11 deletions batcontrol/config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: "Batcontrol-next"
description: "Controls the charging of the battery."
version: "0.5.7"
version: "0.6.0"
slug: "batcontrol"
init: false
#image: "ghcr.io/mastr/batcontrol_ha_addon"
Expand All @@ -17,6 +17,7 @@

options:
timezone: Europe/Berlin #your time zone. not optional.
time_resolution_minutes: "60" # Time resolution for forecasts: 15 (quarter-hourly) or 60 (hourly). Default: 60
loglevel: debug
log_everything: false # if false debug messages from fronius.auth and urllib3.connectionpool will be suppressed
max_logfile_size: 100 #kB
Expand All @@ -42,8 +43,8 @@
password: YOUR-PASSWORD #
max_pv_charge_rate: 0 # Watt, This allows to limit the PV to Battery charge rate. Set to 0 for unlimited charging.
max_grid_charge_rate: 5000 # Watt
fronius_inverter_id: '1' # Optional: ID of the inverter in Fronius API (default: '1')
fronius_controller_id: '0' # Optional: ID of the controller in Fronius API (default: '0')
fronius_inverter_id: "1" # Optional: ID of the inverter in Fronius API (default: '1')
fronius_controller_id: "0" # Optional: ID of the controller in Fronius API (default: '0')
utility:
type: awattar_de #tibber, awattar_at, awattar_de, evcc
apikey: Zz-YOURAPIKEYYOURAPIKEYXXXXX # only required for tibber
Expand All @@ -64,13 +65,14 @@
type: csv
annual_consumption: 4500 # total consumption in kWh p.a. the load profile
load_profile: load_profile.csv #name of the load profile file within the config folder
base_url: ws://homeassistant:8123 # Your HomeAssistant URL
apitoken: YOUR_LONG_LIVED_ACCESS_TOKEN # Get from HomeAssistant Profile
entity_id: sensor.energy_consumption # Entity ID with consumption data (in Wh or kWh)
history_days: "-7;-14;-21" # Days to look back for historical data
history_weights: "1;1;1" # Weight for each history period (1-10), higher = more influence
cache_ttl_hours: 48.0 # How long to cache computed statistics (hours)
multiplier: 1.0 # Multiplier for forecast adjustment (1.0=unchanged, >1.0=increase, <1.0=decrease)
base_url: ws://homeassistant:8123 # Your HomeAssistant URL
apitoken: YOUR_LONG_LIVED_ACCESS_TOKEN # Get from HomeAssistant Profile
entity_id: sensor.energy_consumption # Entity ID with consumption data (in Wh or kWh)
history_days: "-7;-14;-21" # Days to look back for historical data
history_weights: "1;1;1" # Weight for each history period (1-10), higher = more influence
cache_ttl_hours: 48.0 # How long to cache computed statistics (hours)
multiplier: 1.0 # Multiplier for forecast adjustment (1.0=unchanged, >1.0=increase, <1.0=decrease)
sensor_unit: auto # Discover or set sensor unit
mqtt:
enabled: false
logger: false
Expand Down Expand Up @@ -108,6 +110,7 @@
tls_version: tlsv1.2
schema:
timezone: str #your time zone. not optional.
time_resolution_minutes: list(15|60) # Time resolution for forecasts: 15 (quarter-hourly) or 60 (hourly).
loglevel: list(debug|info|warning|error)
log_everything: bool
max_logfile_size: int
Expand All @@ -134,7 +137,7 @@
max_soc: int(0,100)? # (MQTT) Maximum SoC %, optional for mqtt (default: 100)
cache_ttl: int(0,)? # (MQTT) Cache TTL for SOC values in seconds, optional for mqtt (default: 120)
base_topic: str? # (MQTT) base topic, optional for mqtt (default: 'default')
max_pv_charge_rate: float(0,)? # Watt, This allows to limit the PV to Battery charge rate. Set to 0 for unlimited charging.
max_pv_charge_rate: float(0,)? # Watt, This allows to limit the PV to Battery charge rate. Set to 0 for unlimited charging.
max_grid_charge_rate: float(0,)? # Watt, required for all inverter types
fronius_inverter_id: str? # Optional: ID of the inverter in Fronius API (default: '1')
fronius_controller_id: str? # Optional: ID of the controller in Fronius API (default: '0')
Expand Down Expand Up @@ -170,6 +173,7 @@
history_weights: str? # HA - weight for each history period (1-10), higher = more influence
cache_ttl_hours: float(0,)? # HA - how long to cache computed statistics (hours)
multiplier: float(0,)? # HA - multiplier for forecast adjustment (1.0=unchanged, >1.0=increase, <1.0=decrease)
sensor_unit: list(auto|Wh|kWh) # HA - Which unit is configured in the sensor
mqtt:
enabled: bool
logger: bool
Expand Down
Loading