forked from muexxl/ha_addons
-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathconfig.yaml
More file actions
176 lines (175 loc) · 7.17 KB
/
Copy pathconfig.yaml
File metadata and controls
176 lines (175 loc) · 7.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
name: "Batcontrol - dev@ohAnd"
description: "Controls the charging of the battery"
version: "0.4.1"
slug: "batcontrol"
url: "https://github.com/muexxl/batcontrol"
init: false
arch:
- aarch64
- amd64
- armhf
- armv7
- i386
map:
- type: ssl
- type: addon_config
read_only: false
path: /app/addon_config
options:
timezone: Europe/Berlin #your time zone. not optional.
loglevel: debug
logfile_enabled: true
max_logfile_size: 100 #kB
logfile_path: logs/batcontrol.log
battery_control: # min_price_difference is the absolute minimum price difference in Euro to justify charging your battery if min_price_difference_rel results in a higher price difference, that will be used
min_price_difference: 0.05 # minimum price difference in Euro to justify charging your battery
min_price_difference_rel: 0.10 # Percentage (in decimal) of the current price to justify charging your battery # _rel helps to avoid charging at high prices with less efficiency
always_allow_discharge_limit: 0.90 # 0.00 to 1.00 above this SOC limit using energy from the battery is always allowed
max_charging_from_grid_limit: 0.90 # 0.00 to 1.00 charging from the grid is only allowed until this SOC limit
battery_control_expert:
charge_rate_multiplier: 1.1 # Increase (>1) calculated charge rate to compensate charge inefficencies.
soften_price_difference_on_charging: False # enable earlier charging based on a more relaxed calculation
# future_price <= current_price-min_price_difference/soften_price_difference_on_charging_factor
soften_price_difference_on_charging_factor: 5
round_price_digits: 4 # round price to n digits after the comma
inverter:
type: fronius_gen24 #currently only fronius_gen24 supported
address: 192.168.0.XX # the local IP of your inverter. needs to be reachable from the machine that runs batcontrol
user: customer #customer or technician lowercase only!!
password: YOUR-PASSWORD #
max_grid_charge_rate: 5000 # Watt
max_pv_charge_rate : 3000 # Watt
max_bat_discharge_rate: 5000 # Watt - set to 0 to disable
utility:
type: tibber
apikey: Zz-YOURAPIKEYYOURAPIKEYXXXXX # only required for tibber
vat: 0.20 # only required for awattar
fees: 0.015 # only required for awattar
markup: 0.03 # only required for awattar
mqtt:
enabled: false
logger: false
broker: localhost
port: 1883
topic: house/batcontrol
username: user
password: password
retry_attempts: 5 # optional, default: 5
retry_delay: 10 # seconds, optional, default: 10
tls: false
cafile: /etc/ssl/certs/ca-certificates.crt
certfile: /etc/ssl/certs/client.crt
keyfile: /etc/ssl/certs/client.key
tls_version: tlsv1.2
auto_discover_enable: true # enables mqtt auto discover => https://www.home-assistant.io/integrations/mqtt/#mqtt-discovery
auto_discover_topic: homeassistant # base topic path for auto discover config messages - default 'homeassistant' -> https://www.home-assistant.io/integrations/mqtt/#discovery-options
solar_forecast_provider: fcsolarapi
pvinstallations:
- name: Haus #name
lat: 48.4334480
lon: 8.7654968
declination: 32 #inclination toward horizon 0..90 0=flat 90=vertical (e.g. wallmounted)
azimuth: -90 # -90:East, 0:South, 90:West -180..180
kWp: 15.695 # power in kWp
#horizon: # leave empty for default PVGIS horizon, only modify if solar array is shaded by trees or houses
#api: #fcsolarapi
consumption_forecast:
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
evcc:
enabled: false
broker: localhost
port: 1883
status_topic: evcc/status
# one loadpoints that should be monitored
loadpoint_topic:
- evcc/loadpoints/1/charging
- evcc/loadpoints/2/charging
username: user
password: password
tls: false
cafile: /etc/ssl/certs/ca-certificates.crt
certfile: /etc/ssl/certs/client.crt
keyfile: /etc/ssl/certs/client.key
tls_version: tlsv1.2
# Optional:
# Choose which topic should deliver the limit for the battery
# below this limit the battery will be locked
# https://docs.evcc.io/docs/integrations/mqtt-api#site
# Active if following message appears:
# 'Enabling battery threshold management.
battery_halt_topic: evcc/site/bufferSoc
schema:
timezone: str # your time zone. not optional.
loglevel: list(debug|info|warning|error)
logfile_enabled: bool # enable or disable logging to a file
logfile_path: str # path to the log file
max_logfile_size: int
battery_control:
min_price_difference: float(0,) # minimum price difference in Euro to justify charging your battery
min_price_difference_rel: float(0,)
always_allow_discharge_limit: float(0,1) # 0.00 to 1.00 above this SOC limit using energy from the battery is always allowed
max_charging_from_grid_limit: float(0,1) # 0.00 to 1.00 charging from the grid is only allowed until this SOC limit
battery_control_expert:
charge_rate_multiplier: float(1,) # Increase (>1) calculated charge rate to compensate charge inefficiencies.
soften_price_difference_on_charging: bool
soften_price_difference_on_charging_factor: int(1,)
round_price_digits: int(0,) # round price to n digits after the comma
inverter:
type: list(fronius_gen24) # currently only fronius_gen24 supported
address: str # the local IP of your inverter. needs to be reachable from the machine that runs batcontrol
user: list(customer|technician) # customer or technician lowercase only!!
password: password
max_grid_charge_rate: float(0,)?
max_pv_charge_rate: float(0,)?
max_bat_discharge_rate: float(0,)?
utility:
type: list(tibber|awattar_at|awattar_de)
apikey: password? # only required for tibber
vat: float(0,10)? # only required for awattar
fees: float(0,10)? # only required for awattar
markup: float(0,10)? # only required for awattar
mqtt:
enabled: bool
logger: bool
broker: str
port: int
topic: str
username: str?
password: password?
retry_attempts: int
retry_delay: int
tls: bool
cafile: str?
certfile: str?
keyfile: str?
tls_version: list(tlsv1.2|tlsv1.3)?
auto_discover_enable: bool
auto_discover_topic: str
solar_forecast_provider: list(fcsolarapi|solarprognose)
pvinstallations:
- name: str # name
lat: float(,90)
lon: float(,90)
declination: float(0,90) # inclination toward horizon 0..90 0=flat 90=vertical (e.g. wallmounted)
azimuth: float(,180) # -90:East, 0:South, 90:West -180..180
kWp: float(0,) # power in kWp
apikey: str? # forecastsolarapi
consumption_forecast:
annual_consumption: float(0,) # total consumption in kWh p.a. the load profile
load_profile: str # name of the load profile file within the config folder
evcc:
enabled: bool
broker: str
port: int
status_topic: str
loadpoint_topic:
- str
username: str?
password: str?
tls: bool
cafile: str?
certfile: str?
keyfile: str?
tls_version: list(tlsv1.2|tlsv1.3)?
battery_halt_topic: str?