• Bravo
  • Registratie: Augustus 2005
  • Laatst online: 20:28

Bravo

Second Best

KC27 schreef op maandag 13 oktober 2025 @ 09:41:
[...]

Zou je mij de logging van de berekening om 7:30 (als het wel lukt) en 7:45 (als het mislukt) willen sturen?
Dan ga ik er nogmaals naar kijken.
Zie DM

Ioniq 6 LR Lounge 20" @ Elli Pro
2700Wp SSW 30° @ SE2200 | 1720Wp SSW 5° @ HM-1500
Flickr | Canon 6D | 17-40mm f/4 + 50mm f/1.8 II + 70-200mm f/4 | 2x 430EX II | Sirui T005 + C10


  • Rafistoll
  • Registratie: Juni 2024
  • Laatst online: 01-11 12:43
Beste tweakers,
Bezig dit bijzonder interessant forum te doorploegen. Ik heb alvast een vraag:
Is Meteoserver ook geschikt voor een locatie in het centrum van België?
Alvast bedankt

PV: 7.7 + 6.4 kWp | Omvormer: Deye SUN-10K-SG04LG3-EU | DIY Batterij: 48kWh JK BMS

Rafistoll schreef op maandag 13 oktober 2025 @ 15:59:
Beste tweakers,
Bezig dit bijzonder interessant forum te doorploegen. Ik heb alvast een vraag:
Is Meteoserver ook geschikt voor een locatie in het centrum van België?
Alvast bedankt
De meteoserver-api werkt voor heel Europa:
https://meteoserver.nl/weersverwachting-API.php
Als je in Home assistant je coördinaten invult gebruikt DAO die om de weersverwachting voor jouw regio op te vragen.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

Asclepius8 schreef op maandag 13 oktober 2025 @ 09:23:
[...]

Reeds gedaan, zie geen update mogelijkheid (current version 2025.6.2).
Na 2025.6.2 is er een ander build-systeem geïntroduceerd.
Ik denk dat jouw HA-supervisor het spoor bijster is.
Ik raad je aan de volgende stappen te nemen:
  • Kopieer je instellingen, database-bestand enz door met Samba naar de map addon_configs op je HA machine te gaan en dan naar xxxx_day_ahead_opt. Kopieer de map dao_data, bewaar ze ergens
  • Ga in HA naar Instellingen/Addons, klik op DAO-versie 2025.6.2, Klik op Verwijderen, verwijder alles
  • Ga in HA naar Instellingen/Addons, ga naar de Add-on Winkel (blauwe knop rechtsonder), Kies via het puntjesmenu rechtsboven voor "Repositories"
  • Verwijder uit de lijst alle DAO-repositories
  • Voeg een nieuwe repository toe: "https://github.com/corneel27/day-ahead", opslaan
  • Kies via het puntjes voor "Naar updates zoeken"
  • Wacht even (evt verversen met F5) dan komen de laatste versie van de produktie- en de testversie in beeld
  • Klik op de productieversie en "installeer"
  • Kopieer na installatie jouw "oude" dao_data-map over de nieuwe dao_data-map in addon_configs.
Succes!

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

Testversie 2025.10.5.rc3 is gepubliceerd met de volgende changelog:
  • Fixed error when boiler is heated by heatpump
  • Fixed typo (extra space) in warning "Geen oplossing"
  • Fix error planning ev when planning window is too small

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • robbinonline
  • Registratie: September 2007
  • Laatst online: 22:53
Wat een mooie add-on is dit! Wel een leer curve om dit instellen maar dat is alleen maar leuk.
Ik ben zojuist begonnen met de basis en wil nu eigenlijk mijn batterij gaan toevoegen.

Wat ik alleen niet helemaal begrijp en niet uit de documentatie kan halen: de input numbers, max soc percentages etc zijn dat helpers die ik los moet aanmaken in HA of kan ik bepaalde bestaande entities van mijn batterij gebruiken die ik uitlees via een ESP.

Bijvoorbeeld de "entity min soc end opt" waarde, die zit er al in als waarde via de esp:
number.marstek1_marstek_discharging_cutoff_capacity

of moet ik hier dan alsnog een helper voor aanmaken die weer met elkaar communiceren via een automation?

Ga niet uit van het haalbare, maar van het denkbare


  • f.welvering
  • Registratie: Oktober 2009
  • Laatst online: 22:20
Uit mijn eerdere vraag of iemand ook een PompAO in zijn config heeft heb ik geen reactie gekregen, dus ga ik er zelf mee aan de slag.

Ik heb de instructie eens doorgenomen maar hiermee kom ik nog niet helemaal op het juiste pad https://gathering.tweaker...message/82146060#82146060

Hoe kom ik bijvoorbeeld aan de degree days factor? ik heb een poging gedaan dit te vinden in het topic, maar helaas. Heeft iemand een tip hoe ik dit aanpak?

WP: DeWarmte PompAO 6.4Kw Hybrid, CV Intergas, Thermostaat Netatmo, 70m2 vvw, PV: 34x 325wp solaredge omvormer en optimizers,Wan ip adres weten? https://mijnips.eu


  • arro3038
  • Registratie: November 2023
  • Laatst online: 21:38
f.welvering schreef op dinsdag 14 oktober 2025 @ 08:56:
Uit mijn eerdere vraag of iemand ook een PompAO in zijn config heeft heb ik geen reactie gekregen, dus ga ik er zelf mee aan de slag.

Ik heb de instructie eens doorgenomen maar hiermee kom ik nog niet helemaal op het juiste pad https://gathering.tweaker...message/82146060#82146060

Hoe kom ik bijvoorbeeld aan de degree days factor? ik heb een poging gedaan dit te vinden in het topic, maar helaas. Heeft iemand een tip hoe ik dit aanpak?
Zie hier:

KC27 in "Day Ahead Optimizer: ervaringen met Home Assistant-addon DAO"

  • Rafistoll
  • Registratie: Juni 2024
  • Laatst online: 01-11 12:43
@kc27 bedankt voor je snelle reactie op mijn Meteoserver vraag. En vooral bedankt voor deze prachtige tool.
Hier komt al een volgende vraagje uit België. Salderen gaat er nu bij ons zeer snel uit: de laatste terugdraaiende tellers worden nu ook door digitale tellers vervangen (wij waren eind augustus aan de beurt) en salderen wordt dus vervangen door een afrekening op resp. aankoopprijs en terugleverprijs.
Het lijkt mij dus dat de optie "tax refund" voor ons obsoleet wordt, en dat zowel "true" als "false" tot fouten kunnen leiden? Klopt dat? En is er dan een "Belgische" workaround mogelijk/voorzien?

PV: 7.7 + 6.4 kWp | Omvormer: Deye SUN-10K-SG04LG3-EU | DIY Batterij: 48kWh JK BMS


  • Floris039
  • Registratie: Mei 2019
  • Laatst online: 04-12 16:56
Misschien een semi off topic vraag. Voor het instellen van Nordpool om te gebruiken met deze add-on. Ik krijg namelijk na instellen van Nordpool niet de juiste tarieven. Dit uur bijv 0,13 cent. En ik heb BTW aangezet. Moet ik dan nog een formule in het template zetten voor NL?

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
robbinonline schreef op dinsdag 14 oktober 2025 @ 08:31:
Wat een mooie add-on is dit! Wel een leer curve om dit instellen maar dat is alleen maar leuk.
Ik ben zojuist begonnen met de basis en wil nu eigenlijk mijn batterij gaan toevoegen.

Wat ik alleen niet helemaal begrijp en niet uit de documentatie kan halen: de input numbers, max soc percentages etc zijn dat helpers die ik los moet aanmaken in HA of kan ik bepaalde bestaande entities van mijn batterij gebruiken die ik uitlees via een ESP.

Bijvoorbeeld de "entity min soc end opt" waarde, die zit er al in als waarde via de esp:
number.marstek1_marstek_discharging_cutoff_capacity

of moet ik hier dan alsnog een helper voor aanmaken die weer met elkaar communiceren via een automation?
Het kan beide, maar het is wellicht slim om de boel te ontkoppelen met helpers en dan de waarden via een automatisering te actualiseren. Dan kun je de koppeling eenvoudig deactiveren door de automatisering uit te zetten.

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Floris039 schreef op dinsdag 14 oktober 2025 @ 12:17:
Misschien een semi off topic vraag. Voor het instellen van Nordpool om te gebruiken met deze add-on. Ik krijg namelijk na instellen van Nordpool niet de juiste tarieven. Dit uur bijv 0,13 cent. En ik heb BTW aangezet. Moet ik dan nog een formule in het template zetten voor NL?
Je moet de energy taxes, cost supplier en vat instellen in de config. Voor zonneplan b.v.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    "energy taxes consumption": {
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2024-08-01": 0.02
    },
    "cost supplier production": {
      "2024-08-01": 0.02
    },
    "vat": {
      "2023-01-01": 21

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Rafistoll schreef op dinsdag 14 oktober 2025 @ 10:13:
@kc27 bedankt voor je snelle reactie op mijn Meteoserver vraag. En vooral bedankt voor deze prachtige tool.
Hier komt al een volgende vraagje uit België. Salderen gaat er nu bij ons zeer snel uit: de laatste terugdraaiende tellers worden nu ook door digitale tellers vervangen (wij waren eind augustus aan de beurt) en salderen wordt dus vervangen door een afrekening op resp. aankoopprijs en terugleverprijs.
Het lijkt mij dus dat de optie "tax refund" voor ons obsoleet wordt, en dat zowel "true" als "false" tot fouten kunnen leiden? Klopt dat? En is er dan een "Belgische" workaround mogelijk/voorzien?
“Energy taxes production” op 0 instellen?

  • Floris039
  • Registratie: Mei 2019
  • Laatst online: 04-12 16:56
Torch1969 schreef op dinsdag 14 oktober 2025 @ 12:53:
[...]

Je moet de energy taxes, cost supplier en vat instellen in de config. Voor zonneplan b.v.

[...]
En dat kan niet in de Nordpool integratie al meteen tijdens het configureren ervan? Zodat ik naast deze addon ook nog andere dingen eenvoudig kan doen met de data van Nordpool? Of is dat niet makkelijk voor het gebruik binnen de addon omdat je in sommige gevallen de belasting etc niet betaald?

  • Bravo
  • Registratie: Augustus 2005
  • Laatst online: 20:28

Bravo

Second Best

Floris039 schreef op dinsdag 14 oktober 2025 @ 15:02:
[...]

En dat kan niet in de Nordpool integratie al meteen tijdens het configureren ervan? Zodat ik naast deze addon ook nog andere dingen eenvoudig kan doen met de data van Nordpool? Of is dat niet makkelijk voor het gebruik binnen de addon omdat je in sommige gevallen de belasting etc niet betaald?
DAO haalt zelf zijn prijzen op bij nordpool, en maakt geen gebruik van de nordpool integratie in HA waar je ook opslagen etc voor kunt configureren.

Ioniq 6 LR Lounge 20" @ Elli Pro
2700Wp SSW 30° @ SE2200 | 1720Wp SSW 5° @ HM-1500
Flickr | Canon 6D | 17-40mm f/4 + 50mm f/1.8 II + 70-200mm f/4 | 2x 430EX II | Sirui T005 + C10

Floris039 schreef op dinsdag 14 oktober 2025 @ 15:02:
[...]

En dat kan niet in de Nordpool integratie al meteen tijdens het configureren ervan? Zodat ik naast deze addon ook nog andere dingen eenvoudig kan doen met de data van Nordpool? Of is dat niet makkelijk voor het gebruik binnen de addon omdat je in sommige gevallen de belasting etc niet betaald?
Wat @Bravo ook zegt:
DAO haalt zelf de kale prijzen op bij Noordpool of een andere data-provider die je kiest bij je instellingen. Daar geef je ook op met diverse settings hoe de inkoopprijs (consumption price) moet worden berekend en hoe voor jou de terugleverprijs (production price) moet worden berekend.
DAO beschikt over een api (zie DOCS.md) waarmee je die drie prijs reeksen kunt opvragen en bijvoorbeeld in HA kunt gebruiken.
Bijvoorbeeld: http://192.168.178.36:5000/api/report/da/vandaag_en_morgen

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • BBuilds
  • Registratie: November 2013
  • Laatst online: 04-12 23:33
Edit: M'n eigen fout. Foutje in de configuratie!

Sinds gisteren krijg ik de volgende foutmelding bij het uitvoeren van de optimaliseringsberekening op versie 2025.10.5.rc3
code:
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
2025-10-15 14:07:30 info: Day Ahead Optimalisering versie: 2025.10.5.rc3
2025-10-15 14:07:30 info: Day Ahead Optimalisering gestart op: 15-10-2025 14:07:30
2025-10-15 14:07:30 info: Day Ahead Optimalisatie gestart: 15-10-2025 14:07:30 taak: calc_optimum_met_debug
2025-10-15 14:07:30 info: Debug = True
2025-10-15 14:07:30 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-15 14:07:30 info: Baseload uit instellingen
2025-10-15 14:07:30 info: Start waarden: 
      uur                tijd   p_l   p_t  base  pv_ac  pv_dc
0   14:00 2025-10-15 14:00:00 0.264 0.116 0.500      0  0.928
1   15:00 2025-10-15 15:00:00 0.273 0.125 0.500      0  1.099
2   16:00 2025-10-15 16:00:00 0.288 0.139 0.500      0  0.666
3   17:00 2025-10-15 17:00:00 0.289 0.140 0.500      0  0.465
4   18:00 2025-10-15 18:00:00 0.325 0.174 1.500      0  0.093
5   19:00 2025-10-15 19:00:00 0.352 0.199 1.000      0  0.000
6   20:00 2025-10-15 20:00:00 0.306 0.156 0.500      0  0.000
7   21:00 2025-10-15 21:00:00 0.274 0.126 0.500      0  0.000
8   22:00 2025-10-15 22:00:00 0.265 0.117 0.500      0  0.000
9   23:00 2025-10-15 23:00:00 0.257 0.110 0.350      0  0.000
10  00:00 2025-10-16 00:00:00 0.252 0.105 0.350      0  0.000
11  01:00 2025-10-16 01:00:00 0.248 0.101 0.350      0  0.000
12  02:00 2025-10-16 02:00:00 0.252 0.104 0.350      0  0.000
13  03:00 2025-10-16 03:00:00 0.248 0.101 0.350      0  0.000
14  04:00 2025-10-16 04:00:00 0.249 0.102 0.350      0  0.000
15  05:00 2025-10-16 05:00:00 0.249 0.102 0.350      0  0.000
16  06:00 2025-10-16 06:00:00 0.258 0.111 0.350      0  0.000
17  07:00 2025-10-16 07:00:00 0.279 0.130 0.600      0  0.000
18  08:00 2025-10-16 08:00:00 0.303 0.153 0.500      0  0.093
19  09:00 2025-10-16 09:00:00 0.286 0.136 0.500      0  0.847
20  10:00 2025-10-16 10:00:00 0.259 0.111 0.500      0  1.927
21  11:00 2025-10-16 11:00:00 0.255 0.108 0.500      0  0.910
22  12:00 2025-10-16 12:00:00 0.250 0.103 0.500      0  2.070
23  13:00 2025-10-16 13:00:00 0.245 0.098 0.500      0  5.535
24  14:00 2025-10-16 14:00:00 0.247 0.101 0.500      0  2.827
25  15:00 2025-10-16 15:00:00 0.246 0.099 0.500      0  2.410
26  16:00 2025-10-16 16:00:00 0.253 0.106 0.500      0  2.934
27  17:00 2025-10-16 17:00:00 0.266 0.118 0.500      0  1.660
28  18:00 2025-10-16 18:00:00 0.291 0.142 1.500      0  0.140
29  19:00 2025-10-16 19:00:00 0.313 0.162 1.000      0  0.000
30  20:00 2025-10-16 20:00:00 0.290 0.141 0.500      0  0.000
31  21:00 2025-10-16 21:00:00 0.268 0.120 0.500      0  0.000
32  22:00 2025-10-16 22:00:00 0.265 0.117 0.500      0  0.000
33  23:00 2025-10-16 23:00:00 0.261 0.113 0.350      0  0.000
2025-10-15 14:07:31 info: Reduced hours applied for Thuisbatterij
2025-10-15 14:07:31 info: Startwaarde SoC Thuisbatterij: 35.0%

2025-10-15 14:07:31 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 622, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 552, in calc_optimum_met_debug
    dacalc.calc_optimum()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/day_ahead.py", line 761, in calc_optimum
    min_soc_end_opt = float(self.get_state(entity_min_soc_end).state)
                            ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/states.py", line 15, in get_state
    return State(**self._get(f"states/{entity_id}"))  # type: ignore
                   ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 54, in _get
    return self._process_response(
           ~~~~~~~~~~~~~~~~~~~~~~^
        requests.get(
        ^^^^^^^^^^^^^
    ...<5 lines>...
        )
        ^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 90, in _process_response
    self._raise_error(response.status_code, response.url)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 95, in _raise_error
    raise error(f"{status_code} status code returned from {url}",)  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hassapi.exceptions.NotFound: 404 status code returned from http://192.168.xxx.2:8123/api/states/50
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 3959, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 3933, in main
    da_calc.run_task_function("calc_optimum_met_debug")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 622, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 552, in calc_optimum_met_debug
    dacalc.calc_optimum()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/day_ahead.py", line 761, in calc_optimum
    min_soc_end_opt = float(self.get_state(entity_min_soc_end).state)
                            ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/states.py", line 15, in get_state
    return State(**self._get(f"states/{entity_id}"))  # type: ignore
                   ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 54, in _get
    return self._process_response(
           ~~~~~~~~~~~~~~~~~~~~~~^
        requests.get(
        ^^^^^^^^^^^^^
    ...<5 lines>...
        )
        ^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 90, in _process_response
    self._raise_error(response.status_code, response.url)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 95, in _raise_error
    raise error(f"{status_code} status code returned from {url}",)  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hassapi.exceptions.NotFound: 404 status code returned from http://192.168.xxx.2:8123/api/states/50
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7fff21f36d40>
Net even proberen teruggaan naar v2025.10.4 maar daar krijg ik dezelfde melding.
HA (versie 2025.9.4) eens proberen herstarten maar dit lost ook niks op. Communicatie met HA lijkt wel te werken want SoC van de batterij kan wel goed worden opgehaald.
De entiteiten/helpers voor aansturing naar HA worden niet meer aangestuurd.


Hier mijn configuratie:
code:
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
{
  "homeassistant": {
    "host": "!secret homeassistant_host_ip",
    "ip port": 8123,
    "token": "!secret homeassistant_long_lived_access_token"
   },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "energy taxes consumption": {
      "2025-01-01": 0.1329
    },
    "energy taxes production": {
      "2025-01-01": 0
    },
    "cost supplier consumption": {
      "2024-08-01": 0.020496
    },
    "cost supplier production": {
      "2024-08-01": 0.020496
    },
    "vat consumption": {
      "2023-01-01": 6
    },
    "vat production": {
      "2023-01-01": 0
    },
   "last invoice": "2022-09-01",
    "tax refund": "False"
  },
  "interval": "1hour",
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.60,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    1.50,
    1.00,
    0.50,
    0.50,
    0.50,
    0.35
  ],
  "graphical backend": "Agg",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "True",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 3
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False",
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater present": "False",
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "battery": [ 
    {
      "name": "Thuisbatterij",
      "entity actual level": "sensor.deye_battery",
      "capacity": 30,
      "lower limit": 30,
      "entity min soc end opt": "50",
      "upper limit": 100,
      "charge stages": [
        {"power": 0, "efficiency": 1},
        {"power": 300, "efficiency": 0.785},
        {"power": 1500, "efficiency": 0.872},
        {"power": 3000, "efficiency": 0.897},
        {"power": 4500, "efficiency": 0.899}
      ],
      "discharge stages": [
        {"power": 0, "efficiency": 1},
        {"power": 300, "efficiency": 0.75},
        {"power": 600, "efficiency": 0.891},
        {"power": 1500, "efficiency": 0.935},
        {"power": 3000, "efficiency": 0.952},
        {"power": 4500, "efficiency": 0.952},
        {"power": 7500, "efficiency": 0.934}
      ],
      "reduced hours":
       {  
         "18": 2500,
         "19": 2500
       },
      "minimum power": 1,
      "dc_to_bat efficiency": 0.95,
      "dc_to_bat max power": 5000,
      "bat_to_dc efficiency": 0.95,
      "bat_to_dc max power": 5000,
      "cycle cost": 0.01,
      "entity set power feedin": "input_number.dao_set_power_feedin",
      "entity set operating mode": "input_select.dao_set_operating_mode",
      "entity stop inverter": "input_datetime.dao_stop_inverter",
      "entity balance switch": "input_boolean.dao_balance_switch",
      "entity from battery": "input_number.dao_from_battery",
      "entity from pv": "input_number.dao_from_pv",
      "entity from ac": "input_number.dao_from_grid",
      "entity calculated soc": "input_number.dao_calculated_soc",
      "solar": [
        {"name": "PV Voorkant Oost",
          "tilt": 45,
          "orientation": -90,
          "capacity": 3.54,
          "yield": 0.023275,
          "entity pv switch": ""
        },
        {"name": "PV Achterkant West",
          "tilt": 45,
          "orientation": 90,
          "capacity": 9.9,
          "yield": 0.023275,
          "entity pv switch": ""
        }
      ]
    }
  ],
  "solar": [ ],
  "electric vehicle": [ ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [ "sensor.energy_import_total" ],
    "entities grid production": [ "sensor.energy_export_total"  ],
    "entities solar production ac": [ ],
    "entities solar production dc": [ "sensor.solar_energy_template" ],
    "entities ev consumption" : ["sensor.ev_charger_energy_consumption"],
    "entities wp consumption" : ["sensor.heatpump_south_street_energy_template"],
    "entities boiler consumption": ["sensor.heatpump_boiler_energy_template"],
    "entities battery consumption": ["sensor.home_battery_discharged_energy"],
    "entities battery production": ["sensor.home_battery_charged_energy"],
    "entity co2-intensity": ["sensor.electricity_maps_co2_intensiteit"]
  },
  "scheduler": {
    "active": "true",
    "0435": "get_meteo_data",
    "1035": "get_meteo_data",
    "1635": "get_meteo_data",
    "2235": "get_meteo_data",
    "1255": "get_day_ahead_prices",
    "1355": "get_day_ahead_prices",
    "1455": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1655": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "xx15": "calc_optimum",
    "xx30": "calc_optimum",
    "xx45": "calc_optimum",
    "2359": "clean_data"
  }
}

[ Voor 100% gewijzigd door BBuilds op 15-10-2025 14:45 ]


  • BBuilds
  • Registratie: November 2013
  • Laatst online: 04-12 23:33
Toch nog even een andere vraag, ik krijg de use_calc_baseload functie niet werkend.
Wanneer ik de berekening van de baseload laat uitvoeren lijkt alles goed te gaan:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2025-10-15 17:00:05 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-15 17:00:05 info: Day Ahead Optimalisering gestart op: 15-10-2025 17:00:05
2025-10-15 17:00:05 info: Day Ahead Optimalisatie gestart: 15-10-2025 17:00:05 taak: calc_baseloads
2025-10-15 17:00:05 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-15 17:00:19 info: baseload voor weekdag 0 :
2025-10-15 17:00:19 info: -0.344 -0.294 -0.346 -0.33 -0.306 -0.306 -0.328 -0.169 0.049 -0.004 -0.344 -0.97 -0.988 -1.668 -3.226 -2.814 -2.497 -1.942 -0.542 -1.032 -0.814 -0.995 -0.621 -0.357 
2025-10-15 17:00:29 info: baseload voor weekdag 1 :
2025-10-15 17:00:29 info: -0.368 -0.34 -0.311 -0.336 -0.348 -0.342 -0.323 -0.076 0.023 -0.165 -0.121 -0.392 -1.118 -1.672 -1.999 -1.707 -0.929 -1.452 -0.607 -0.791 -0.76 -0.694 -0.387 -0.43 
2025-10-15 17:00:40 info: baseload voor weekdag 2 :
2025-10-15 17:00:40 info: -0.318 -0.335 -0.347 -0.291 -0.316 -0.303 -0.317 -0.234 0.128 0.226 0.1 0.092 0.179 -0.793 -1.742 -1.562 -1.394 -0.715 -0.723 -0.54 -0.511 -0.466 -0.385 -0.42 
2025-10-15 17:00:50 info: baseload voor weekdag 3 :
2025-10-15 17:00:50 info: -0.344 -0.347 -0.37 -0.313 -0.32 -0.316 -0.282 -0.128 0.006 0.139 -0.189 -0.971 -1.622 -2.093 -1.306 -1.383 -2.677 -1.58 -1.045 -0.577 -0.532 -0.656 -0.516 -0.328 
2025-10-15 17:01:00 info: baseload voor weekdag 4 :
2025-10-15 17:01:00 info: -0.29 -0.284 -0.304 -0.288 -0.312 -0.344 -0.417 -0.19 -0.124 -0.235 -0.375 -0.939 -0.758 -1.471 -1.515 -1.441 -2.117 -1.551 -1.035 -0.657 -0.647 -0.673 -0.606 -1.03 
2025-10-15 17:01:11 info: baseload voor weekdag 5 :
2025-10-15 17:01:11 info: -1.266 -0.9 -0.783 -0.885 -0.499 -0.311 -0.332 -0.553 -0.228 -0.435 -0.217 0.112 -0.629 -0.698 -1.557 -1.258 -1.25 -1.215 -0.688 -0.504 -0.354 -0.435 -0.415 -0.953 
2025-10-15 17:01:21 info: baseload voor weekdag 6 :
2025-10-15 17:01:21 info: -0.961 -0.997 -0.463 -0.308 -0.272 -0.259 -0.284 -0.109 -0.204 -0.206 -0.168 -0.281 -0.507 -1.262 -1.857 -1.772 -2.0 -1.776 -0.88 -0.498 -0.623 -1.12 -0.851 -0.55 
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7ffedb806e30>
Wanneer ik echter de Optimaliseringsberekening met debug laat draaien krijg ik de melding: waarschuwing: Geen oplossing voor: minimize cost
code:
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
2025-10-15 17:15:25 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-15 17:15:25 info: Day Ahead Optimalisering gestart op: 15-10-2025 17:15:25
2025-10-15 17:15:25 info: Day Ahead Optimalisatie gestart: 15-10-2025 17:15:25 taak: calc_optimum_met_debug
2025-10-15 17:15:25 info: Debug = True
2025-10-15 17:15:25 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-15 17:15:25 info: Zelf berekende baseload
2025-10-15 17:15:25 info: Start waarden: 
      uur                tijd   p_l   p_t   base  pv_ac  pv_dc
0   17:00 2025-10-15 17:00:00 0.289 0.131 -0.715      0  0.346
1   18:00 2025-10-15 18:00:00 0.327 0.165 -0.723      0  0.093
2   19:00 2025-10-15 19:00:00 0.355 0.190 -0.540      0  0.000
3   20:00 2025-10-15 20:00:00 0.307 0.147 -0.511      0  0.000
4   21:00 2025-10-15 21:00:00 0.273 0.117 -0.466      0  0.000
5   22:00 2025-10-15 22:00:00 0.264 0.108 -0.385      0  0.000
6   23:00 2025-10-15 23:00:00 0.255 0.101 -0.420      0  0.000
7   00:00 2025-10-16 00:00:00 0.250 0.096 -0.344      0  0.000
8   01:00 2025-10-16 01:00:00 0.246 0.092 -0.347      0  0.000
9   02:00 2025-10-16 02:00:00 0.250 0.095 -0.370      0  0.000
10  03:00 2025-10-16 03:00:00 0.246 0.092 -0.313      0  0.000
11  04:00 2025-10-16 04:00:00 0.247 0.093 -0.320      0  0.000
12  05:00 2025-10-16 05:00:00 0.247 0.093 -0.316      0  0.000
13  06:00 2025-10-16 06:00:00 0.257 0.102 -0.282      0  0.000
14  07:00 2025-10-16 07:00:00 0.278 0.121 -0.128      0  0.000
15  08:00 2025-10-16 08:00:00 0.304 0.144  0.006      0  0.093
16  09:00 2025-10-16 09:00:00 0.285 0.127  0.139      0  0.847
17  10:00 2025-10-16 10:00:00 0.257 0.102 -0.189      0  1.927
18  11:00 2025-10-16 11:00:00 0.253 0.099 -0.971      0  0.910
19  12:00 2025-10-16 12:00:00 0.248 0.094 -1.622      0  2.070
20  13:00 2025-10-16 13:00:00 0.243 0.089 -2.093      0  5.535
21  14:00 2025-10-16 14:00:00 0.245 0.092 -1.306      0  2.827
22  15:00 2025-10-16 15:00:00 0.244 0.090 -1.383      0  2.410
23  16:00 2025-10-16 16:00:00 0.252 0.097 -2.677      0  2.934
24  17:00 2025-10-16 17:00:00 0.265 0.109 -1.580      0  1.660
25  18:00 2025-10-16 18:00:00 0.291 0.133 -1.045      0  0.140
26  19:00 2025-10-16 19:00:00 0.314 0.153 -0.577      0  0.000
27  20:00 2025-10-16 20:00:00 0.290 0.132 -0.532      0  0.000
28  21:00 2025-10-16 21:00:00 0.267 0.111 -0.656      0  0.000
29  22:00 2025-10-16 22:00:00 0.263 0.108 -0.516      0  0.000
30  23:00 2025-10-16 23:00:00 0.259 0.104 -0.328      0  0.000
2025-10-15 17:15:25 info: Reduced hours applied for Thuisbatterij
2025-10-15 17:15:25 info: Startwaarde SoC Thuisbatterij: 33.0%

2025-10-15 17:15:25 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-10-15 17:15:25 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland

2025-10-15 17:15:25 waarschuwing: Geen oplossing  voor: minimize cost
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7fff7a213010>
Wanneer ik dezelfde Optimaliseringsberekening met debug laat draaien met een fixed baseload lijkt alles wel te werken: (zelfs zonder de berekening van de baseloads opnieuw te doen)
code:
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
2025-10-15 17:19:28 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-15 17:19:28 info: Day Ahead Optimalisering gestart op: 15-10-2025 17:19:28
2025-10-15 17:19:28 info: Day Ahead Optimalisatie gestart: 15-10-2025 17:19:28 taak: calc_optimum_met_debug
2025-10-15 17:19:28 info: Debug = True
2025-10-15 17:19:28 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-15 17:19:28 info: Baseload uit instellingen
2025-10-15 17:19:28 info: Start waarden: 
      uur                tijd   p_l   p_t  base  pv_ac  pv_dc
0   17:00 2025-10-15 17:00:00 0.289 0.131 0.500      0  0.314
1   18:00 2025-10-15 18:00:00 0.327 0.165 1.500      0  0.093
2   19:00 2025-10-15 19:00:00 0.355 0.190 1.000      0  0.000
3   20:00 2025-10-15 20:00:00 0.307 0.147 0.500      0  0.000
4   21:00 2025-10-15 21:00:00 0.273 0.117 0.500      0  0.000
5   22:00 2025-10-15 22:00:00 0.264 0.108 0.500      0  0.000
6   23:00 2025-10-15 23:00:00 0.255 0.101 0.350      0  0.000
7   00:00 2025-10-16 00:00:00 0.250 0.096 0.350      0  0.000
8   01:00 2025-10-16 01:00:00 0.246 0.092 0.350      0  0.000
9   02:00 2025-10-16 02:00:00 0.250 0.095 0.350      0  0.000
10  03:00 2025-10-16 03:00:00 0.246 0.092 0.350      0  0.000
11  04:00 2025-10-16 04:00:00 0.247 0.093 0.350      0  0.000
12  05:00 2025-10-16 05:00:00 0.247 0.093 0.350      0  0.000
13  06:00 2025-10-16 06:00:00 0.257 0.102 0.350      0  0.000
14  07:00 2025-10-16 07:00:00 0.278 0.121 0.600      0  0.000
15  08:00 2025-10-16 08:00:00 0.304 0.144 0.500      0  0.093
16  09:00 2025-10-16 09:00:00 0.285 0.127 0.500      0  0.847
17  10:00 2025-10-16 10:00:00 0.257 0.102 0.500      0  1.927
18  11:00 2025-10-16 11:00:00 0.253 0.099 0.500      0  0.910
19  12:00 2025-10-16 12:00:00 0.248 0.094 0.500      0  2.070
20  13:00 2025-10-16 13:00:00 0.243 0.089 0.500      0  5.535
21  14:00 2025-10-16 14:00:00 0.245 0.092 0.500      0  2.827
22  15:00 2025-10-16 15:00:00 0.244 0.090 0.500      0  2.410
23  16:00 2025-10-16 16:00:00 0.252 0.097 0.500      0  2.934
24  17:00 2025-10-16 17:00:00 0.265 0.109 0.500      0  1.660
25  18:00 2025-10-16 18:00:00 0.291 0.133 1.500      0  0.140
26  19:00 2025-10-16 19:00:00 0.314 0.153 1.000      0  0.000
27  20:00 2025-10-16 20:00:00 0.290 0.132 0.500      0  0.000
28  21:00 2025-10-16 21:00:00 0.267 0.111 0.500      0  0.000
29  22:00 2025-10-16 22:00:00 0.263 0.108 0.500      0  0.000
30  23:00 2025-10-16 23:00:00 0.259 0.104 0.350      0  0.000
2025-10-15 17:19:29 info: Reduced hours applied for Thuisbatterij
2025-10-15 17:19:29 info: Startwaarde SoC Thuisbatterij: 33.0%

2025-10-15 17:19:29 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-10-15 17:19:29 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland

2025-10-15 17:19:29 info: Strategie: minimale kosten
2025-10-15 17:19:29 info: Het programma heeft een optimale oplossing gevonden.
2025-10-15 17:19:29 info: In- en uitgaande energie per uur batterij Thuisbatterij
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat    o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh        %      %
 17:00   0.00     --   0.00   0.21   0.21  95.00   0.20       --  33.65
 18:00  -0.05  75.00  -0.06   0.09   0.03  95.00   0.03       --  33.75
 19:00  -1.00  93.50  -1.07   0.00  -1.07  95.00  -1.13    88.83  30.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 00:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 01:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 02:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 03:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 04:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 05:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 06:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 07:00   0.00     --   0.00   0.00   0.00     --   0.00       --  30.00
 08:00  -0.07  75.00  -0.09   0.09   0.00     --   0.00       --  30.00
 09:00  -0.77  93.50  -0.83   0.83   0.00     --   0.00       --  30.00
 10:00  -1.68  95.20  -1.77   1.77   0.00     --   0.00       --  30.00
 11:00  -0.60  93.50  -0.64   0.86   0.22  95.00   0.21       --  30.70
 12:00  -0.60  93.50  -0.64   2.07   1.43  95.00   1.36       --  35.22
 13:00  -0.60  93.50  -0.64   5.34   4.70  95.00   4.46       --  50.10
 14:00  -0.60  93.50  -0.64   3.15   2.51  95.00   2.39       --  58.06
 15:00  -0.60  93.50  -0.64   2.86   2.22  95.00   2.11       --  65.08
 16:00  -1.96  95.20  -2.06   3.17   1.12  95.00   1.06       --  68.61
 17:00  -1.50  95.20  -1.58   1.56  -0.01  95.00  -0.01 10200.59  68.56
 18:00  -3.50  95.20  -3.68   0.14  -3.54  95.00  -3.72    94.01  56.15
 19:00  -3.00  95.20  -3.15   0.00  -3.15  95.00  -3.32    90.44  45.10
 20:00  -2.50  95.20  -2.63   0.00  -2.63  95.00  -2.76    90.44  35.88
 21:00  -0.60  93.50  -0.64   0.00  -0.64  95.00  -0.68    88.83  33.63
 22:00  -0.60  93.50  -0.64   0.00  -0.64  95.00  -0.68    88.83  31.38
 23:00  -0.35  89.10  -0.39   0.00  -0.39  95.00  -0.41    84.64  30.00
Totaal -20.58     -- -21.79  22.15   0.36     --  -0.90       --       
2025-10-15 17:19:29 info: Berekende prognoses zijn niet opgeslagen.
2025-10-15 17:19:29 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 17:00    0.00     0.00   0.34   0.00   0.50   0.00   0.00   0.00   0.00   0.10   -0.00  20.00
 18:00    0.00     0.05   1.45   0.00   1.50   0.00   0.00   0.00   0.00   0.48   -0.00  20.00
 19:00    0.00     1.00   0.00   0.00   1.00   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
 20:00    0.00     0.00   0.50   0.00   0.50   0.00   0.00   0.00   0.00   0.15   -0.00  20.00
 21:00    0.00     0.00   0.50   0.00   0.50   0.00   0.00   0.00   0.00   0.14   -0.00  20.00
 22:00    0.00     0.00   0.50   0.00   0.50   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 23:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 00:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 01:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 02:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 03:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 04:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 05:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 06:00    0.00     0.00   0.35   0.00   0.35   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 07:00    0.00     0.00   0.60   0.00   0.60   0.00   0.00   0.00   0.00   0.17   -0.00  20.00
 08:00    0.00     0.07   0.43   0.00   0.50   0.00   0.00   0.00   0.00   0.13   -0.00  20.00
 09:00    0.00     0.77   0.00   0.27   0.50   0.00   0.00   0.00   0.00   0.00   -0.03  20.00
 10:00    0.00     1.68   0.00   1.18   0.50   0.00   0.00   0.00   0.00   0.00   -0.12  20.00
 11:00    0.00     0.60   0.00   0.10   0.50   0.00   0.00   0.00   0.00   0.00   -0.01  20.00
 12:00    0.00     0.60   0.00   0.10   0.50   0.00   0.00   0.00   0.00   0.00   -0.01  20.00
 13:00    0.00     0.60   0.00   0.10   0.50   0.00   0.00   0.00   0.00   0.00   -0.01  20.00
 14:00    0.00     0.60   0.00   0.10   0.50   0.00   0.00   0.00   0.00   0.00   -0.01  20.00
 15:00    0.00     0.60   0.00   0.10   0.50   0.00   0.00   0.00   0.00   0.00   -0.01  20.00
 16:00    0.00     1.96   0.00   1.46   0.50   0.00   0.00   0.00   0.00   0.00   -0.14  20.00
 17:00    0.00     1.50   0.00   1.00   0.50   0.00   0.00   0.00   0.00   0.00   -0.11  20.00
 18:00    0.00     3.50   0.00   2.00   1.50   0.00   0.00   0.00   0.00   0.00   -0.27  20.00
 19:00    0.00     3.00   0.00   2.00   1.00   0.00   0.00   0.00   0.00   0.00   -0.31  20.00
 20:00    0.00     2.50   0.00   2.00   0.50   0.00   0.00   0.00   0.00   0.00   -0.26  20.00
 21:00    0.00     0.60   0.00   0.10   0.50   0.00   0.00   0.00   0.00   0.00   -0.01  20.00
 22:00    0.00     0.60   0.00   0.10   0.50   0.00   0.00   0.00   0.00   0.00   -0.01  20.00
 23:00    0.00     0.35   0.00   0.00   0.35   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
Totaal    0.00    20.58   7.12  10.61  17.25   0.00   0.00   0.00   0.00   1.99   -1.31       

2025-10-15 17:19:29 info: Consumption               7.12 (kWh)
2025-10-15 17:19:29 info: Cost consumption          1.99 (€)
2025-10-15 17:19:29 info: Tariff consumption        0.280 (€/kWh)
2025-10-15 17:19:29 info: Production               10.61 (kWh)
2025-10-15 17:19:29 info: Profit production        -1.31 (€)
2025-10-15 17:19:29 info: Tariff production         0.123 (€/kWh)

2025-10-15 17:19:29 info: 
Calculation profit after optimize in €
Cost before optimize               2.06
Cost consumption      1.99
Profit production    -1.31
Cycle cost            0.25
Battery storage       0.09
Boiler storage        0.00
Total                 1.01
Cost after optimize               1.01
Profit:                           1.05
2025-10-15 17:19:29 info: Onderstaande settings worden NIET doorgezet naar HA (debug-run)
2025-10-15 17:19:29 info: Grid set point: 500.0 W
2025-10-15 17:19:29 info: Cycle cost Thuisbatterij: 0.25 euro
2025-10-15 17:19:29 info: Netto vermogen naar(+)/uit(-) batterij Thuisbatterij zou zijn: 0 W
2025-10-15 17:19:29 info: Balanceren zou zijn: False
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7ffef22a7010>
Config:
code:
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
{
  "homeassistant": {
    "host": "!secret homeassistant_host_ip",
    "ip port": 8123,
    "token": "!secret homeassistant_long_lived_access_token"
   },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "energy taxes consumption": {
      "2025-01-01": 0.12384
    },
    "energy taxes production": {
      "2025-10-01": 0
    },
    "cost supplier consumption": {
      "2025-10-01": 0.015
    },
    "cost supplier production": {
      "2025-10-01": 0.0115
    },
    "vat consumption": {
      "2025-10-01": 12
    },
    "vat production": {
      "2025-10-01": 0
    },
   "last invoice": "2022-09-01",
    "tax refund": "False"
  },
  "interval": "1hour",
  "logging level" : "info",
  "use_calc_baseload": "True",
  "baseload calc periode": 56,
  "baseload": [
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.35,
    0.60,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    0.50,
    1.50,
    1.00,
    0.50,
    0.50,
    0.50,
    0.35
  ],
  "graphical backend": "Agg",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "True",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 2
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False",
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater present": "False",
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "battery": [ 
    {
      "name": "Thuisbatterij",
      "entity actual level": "sensor.deye_battery",
      "capacity": 30,
      "lower limit": 30,
      "min soc end opt": "50",
      "upper limit": 100,
      "charge stages": [
        {"power": 0, "efficiency": 1},
        {"power": 300, "efficiency": 0.785},
        {"power": 1500, "efficiency": 0.872},
        {"power": 3000, "efficiency": 0.897},
        {"power": 4500, "efficiency": 0.899}
      ],
      "discharge stages": [
        {"power": 0, "efficiency": 1},
        {"power": 300, "efficiency": 0.75},
        {"power": 600, "efficiency": 0.891},
        {"power": 1500, "efficiency": 0.935},
        {"power": 3000, "efficiency": 0.952},
        {"power": 4500, "efficiency": 0.952},
        {"power": 7500, "efficiency": 0.934}
      ],
      "reduced hours":
       {  
         "18": 2500,
         "19": 2500
       },
      "minimum power": 1,
      "dc_to_bat efficiency": 0.95,
      "dc_to_bat max power": 5000,
      "bat_to_dc efficiency": 0.95,
      "bat_to_dc max power": 5000,
      "cycle cost": 0.01,
      "entity set power feedin": "input_number.dao_set_power_feedin",
      "entity set operating mode": "input_select.dao_set_operating_mode",
      "entity stop inverter": "input_datetime.dao_stop_inverter",
      "entity balance switch": "input_boolean.dao_balance_switch",
      "entity from battery": "input_number.dao_from_battery",
      "entity from pv": "input_number.dao_from_pv",
      "entity from ac": "input_number.dao_from_grid",
      "entity calculated soc": "input_number.dao_calculated_soc",
      "solar": [
        {"name": "PV Voorkant Oost",
          "tilt": 45,
          "orientation": -90,
          "capacity": 3.54,
          "yield": 0.023275,
          "entity pv switch": ""
        },
        {"name": "PV Achterkant West",
          "tilt": 45,
          "orientation": 90,
          "capacity": 9.9,
          "yield": 0.023275,
          "entity pv switch": ""
        }
      ]
    }
  ],
  "solar": [ ],
  "electric vehicle": [ ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [ "sensor.energy_import_total" ],
    "entities grid production": [ "sensor.energy_export_total"  ],
    "entities solar production ac": [ ],
    "entities solar production dc": [ "sensor.solar_energy_template" ],
    "entities ev consumption" : ["sensor.ev_charger_energy_consumption"],
    "entities wp consumption" : ["sensor.heatpump_south_street_energy_template"],
    "entities boiler consumption": ["sensor.heatpump_boiler_energy_template"],
    "entities battery consumption": ["sensor.home_battery_discharged_energy"],
    "entities battery production": ["sensor.home_battery_charged_energy"],
    "entity co2-intensity": ["sensor.electricity_maps_co2_intensiteit"]
  },
  "scheduler": {
    "active": "true",
    "0435": "get_meteo_data",
    "1035": "get_meteo_data",
    "1635": "get_meteo_data",
    "2235": "get_meteo_data",
    "1255": "get_day_ahead_prices",
    "1355": "get_day_ahead_prices",
    "1455": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1655": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "xx15": "calc_optimum",
    "xx30": "calc_optimum",
    "xx45": "calc_optimum",
    "2359": "clean_data"
  }
}
Doe ik wat mis en zie ik wat over het hoofd? Of is er wat anders mis?
Alvast bedankt!

  • Bravo
  • Registratie: Augustus 2005
  • Laatst online: 20:28

Bravo

Second Best

BBuilds schreef op woensdag 15 oktober 2025 @ 17:22:
Toch nog even een andere vraag, ik krijg de use_calc_baseload functie niet werkend.
Wanneer ik de berekening van de baseload laat uitvoeren lijkt alles goed te gaan:

[...]


Wanneer ik echter de Optimaliseringsberekening met debug laat draaien krijg ik de melding: waarschuwing: Geen oplossing voor: minimize cost

[...]


Wanneer ik dezelfde Optimaliseringsberekening met debug laat draaien met een fixed baseload lijkt alles wel te werken: (zelfs zonder de berekening van de baseloads opnieuw te doen)

[...]


Config:

[...]


Doe ik wat mis en zie ik wat over het hoofd? Of is er wat anders mis?
Alvast bedankt!
Je calculated baseload zit vol met negatieve getallen, dat lijkt mij niet goed en niet representatief voor je situatie.
Heb je de entities goed ingesteld en gevuld over de laatste 56 dagen?
Hierdoor gaat de berekening waarschijnlijk ook de mist in als je gebruik maakt van de calculated baseload.
Met fixed baseload gebruikt hij de array die je eronder hebt aangemaakt, daar zitten geen negatieve waarden tussen.

Ioniq 6 LR Lounge 20" @ Elli Pro
2700Wp SSW 30° @ SE2200 | 1720Wp SSW 5° @ HM-1500
Flickr | Canon 6D | 17-40mm f/4 + 50mm f/1.8 II + 70-200mm f/4 | 2x 430EX II | Sirui T005 + C10


  • BBuilds
  • Registratie: November 2013
  • Laatst online: 04-12 23:33
@Bravo Bedankt voor je hulp !
Ik had grid consumption en production, en battery consumption en production omgekeerd opgevat.
Dat was inderdaad de reden van de negatieve waardes.
Entiteiten omgedraaid en probleem is opgelost.

Entities grid import/export, en entities battery charged/discharged in de config file zou volgens mij duidelijker zijn.
Misschien een mogelijke verbetering.

Nogmaals dank voor de hulp.

  • xarow
  • Registratie: Februari 2011
  • Laatst online: 22:35
KC27 schreef op woensdag 9 april 2025 @ 08:40:
[...]


[...]

Dat blijkt dus nog een foutje te zijn.
Ik reken eigenlijk met de drie methoden zo veel mogelijk parallel.
Ik zal dat aanpassen zodat het programma daar niet de mist mee ingaat.
Mooie addon en interessant om toe te passen. Ik ben momenteel aan het kijken hoe ik de warmtepomp kan regelen en wil dit doen op basis van het verschuiven van de stooklijn. Bovenstaand gaf je aan dat er nog een fout in zat, waardoor de stages en graaddagen factor ook ingesteld moesten worden bij de verplaatsing van de stooklijn.

Het lijkt er op dat die fout er nog in zit, of is dit bewust benodigd?
Vanavond is testversie 2025.10.5.rc5 gepubliceerd.
Changelog:
  • Added "max gap" (flex setting), see DOCS.md
  • Added logging "Rekentijd" in sec
  • Fixed error when planning wp-hours with 15min interval (reported by TomKuipers1983)
  • Fixed error when calculating "stop invertor" with 15min-interval
Edit
Er was een zeer storende typo in versie 2025.10.5.rc4.
Dit is gerepareerd met rc5, sorry voor eventueel ongemak!
Opmerking:
Het programma geeft een onterechte waarschuwing als je geen "max gap" hebt gedefinieerd.
Je kunt deze waarschuwing onderdrukken door bijv "max gap": 0.005 op te nemen in je settings.
Dit wordt bij de volgende versie hersteld.

[ Voor 36% gewijzigd door KC27 op 16-10-2025 07:36 ]

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Deikke
  • Registratie: Juni 2004
  • Laatst online: 07-12 06:54
Laat maar, al opgelost

Ik krijg het helaas niet voor elkaar om de baseloads te berekenen. Ik krijg telkens onderstaande foutmelding, enig idee wat hier mis gaat?
-- snip --

[ Voor 152% gewijzigd door Deikke op 16-10-2025 13:50 ]


  • Bravo
  • Registratie: Augustus 2005
  • Laatst online: 20:28

Bravo

Second Best

Deikke schreef op donderdag 16 oktober 2025 @ 10:50:
Ik krijg het helaas niet voor elkaar om de baseloads te berekenen. Ik krijg telkens onderstaande foutmelding, enig idee wat hier mis gaat?

code:
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
 Logging van bewerking "Bereken de baseloads":

2025-10-16 10:44:31 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-16 10:44:31 info: Day Ahead Optimalisering gestart op: 16-10-2025 10:44:31
2025-10-16 10:44:31 info: Day Ahead Optimalisatie gestart: 16-10-2025 10:44:31 taak: calc_baseloads
2025-10-16 10:44:34 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 594, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 539, in calc_baseloads
    report.calc_save_baseloads()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_report.py", line 2738, in calc_save_baseloads
    baseload = self.calc_weekday_baseload(weekday)
  File "/root/dao/prog/da_report.py", line 2643, in calc_weekday_baseload
    grid_consumption = self.get_sensor_week_sum(
        self.grid_consumption_sensors,
    ...<2 lines>...
        "grid_consumption",
    )
  File "/root/dao/prog/da_report.py", line 2617, in get_sensor_week_sum
    df = self.get_sensor_week_data(sensor, weekday, vanaf, tot, col_name)
  File "/root/dao/prog/da_report.py", line 2536, in get_sensor_week_data
    statistics = Table(
        "statistics", self.db_ha.metadata, autoload_with=self.db_ha.engine
    )
  File "<string>", line 2, in __new__
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/deprecations.py", line 281, in warned
    return fn(*args, **kwargs)  # type: ignore[no-any-return]
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 429, in __new__
    return cls._new(*args, **kw)
           ~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 483, in _new
    with util.safe_reraise():
         ~~~~~~~~~~~~~~~~~^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/langhelpers.py", line 224, in __exit__
    raise exc_value.with_traceback(exc_tb)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 479, in _new
    table.__init__(name, metadata, *args, _no_init=False, **kw)  # type: ignore[misc] # noqa: E501
    ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 861, in __init__
    self._autoload(
    ~~~~~~~~~~~~~~^
        metadata,
        ^^^^^^^^^
    ...<4 lines>...
        resolve_fks=resolve_fks,
        ^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 893, in _autoload
    conn_insp.reflect_table(
    ~~~~~~~~~~~~~~~~~~~~~~~^
        self,
        ^^^^^
    ...<4 lines>...
        _reflect_info=_reflect_info,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/engine/reflection.py", line 1548, in reflect_table
    raise exc.NoSuchTableError(table_name)
sqlalchemy.exc.NoSuchTableError: statistics
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 3945, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 3939, in main
    da_calc.run_task_function("calc_baseloads")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 594, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 539, in calc_baseloads
    report.calc_save_baseloads()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_report.py", line 2738, in calc_save_baseloads
    baseload = self.calc_weekday_baseload(weekday)
  File "/root/dao/prog/da_report.py", line 2643, in calc_weekday_baseload
    grid_consumption = self.get_sensor_week_sum(
        self.grid_consumption_sensors,
    ...<2 lines>...
        "grid_consumption",
    )
  File "/root/dao/prog/da_report.py", line 2617, in get_sensor_week_sum
    df = self.get_sensor_week_data(sensor, weekday, vanaf, tot, col_name)
  File "/root/dao/prog/da_report.py", line 2536, in get_sensor_week_data
    statistics = Table(
        "statistics", self.db_ha.metadata, autoload_with=self.db_ha.engine
    )
  File "<string>", line 2, in __new__
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/deprecations.py", line 281, in warned
    return fn(*args, **kwargs)  # type: ignore[no-any-return]
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 429, in __new__
    return cls._new(*args, **kw)
           ~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 483, in _new
    with util.safe_reraise():
         ~~~~~~~~~~~~~~~~~^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/langhelpers.py", line 224, in __exit__
    raise exc_value.with_traceback(exc_tb)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 479, in _new
    table.__init__(name, metadata, *args, _no_init=False, **kw)  # type: ignore[misc] # noqa: E501
    ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 861, in __init__
    self._autoload(
    ~~~~~~~~~~~~~~^
        metadata,
        ^^^^^^^^^
    ...<4 lines>...
        resolve_fks=resolve_fks,
        ^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 893, in _autoload
    conn_insp.reflect_table(
    ~~~~~~~~~~~~~~~~~~~~~~~^
        self,
        ^^^^^
    ...<4 lines>...
        _reflect_info=_reflect_info,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/engine/reflection.py", line 1548, in reflect_table
    raise exc.NoSuchTableError(table_name)
sqlalchemy.exc.NoSuchTableError: statistics


config:

code:
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
{
  "homeassistant": {
  },
  "database ha": {
    "engine": "postgresql",
    "server": "77b2833f-timescaledb",
    "port": 5432,
    "database": "dao",
    "username": "dao",
    "password": "!secret db_ha_password"
  },
  "database da": {
    "engine": "postgresql",
    "server": "77b2833f-timescaledb",
    "port": 5432,
    "database": "dao",
    "username": "dao",
    "password": "!secret db_da_password"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "vat consumption": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat production": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "last invoice": "2025-09-01",
    "tax refund": "True"
  },
  "interval": "15min",
  "logging level": "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show": "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 17
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False",
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater present": "False",
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "battery": [
    {
      "name": "Batterij",
      "entity actual level": "sensor.solis_s5_eh1p_battery_soc",
      "capacity": 10,
      "upper limit": 98,
      "lower limit": 21,
      "optimal lower level": 21,
      "minimum power": 0,
      "charge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 50.0,
          "efficiency": 0.825
        },
        {
          "power": 100.0,
          "efficiency": 0.861
        },
        {
          "power": 150.0,
          "efficiency": 0.873
        },
        {
          "power": 300.0,
          "efficiency": 0.886
        },
        {
          "power": 600.0,
          "efficiency": 0.893
        },
        {
          "power": 1200.0,
          "efficiency": 0.896
        },
        {
          "power": 2000.0,
          "efficiency": 0.897
        },
        {
          "power": 3000.0,
          "efficiency": 0.898
        }
      ],
      "discharge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 50.0,
          "efficiency": 0.825
        },
        {
          "power": 100.0,
          "efficiency": 0.861
        },
        {
          "power": 150.0,
          "efficiency": 0.873
        },
        {
          "power": 300.0,
          "efficiency": 0.886
        },
        {
          "power": 600.0,
          "efficiency": 0.893
        },
        {
          "power": 1200.0,
          "efficiency": 0.896
        },
        {
          "power": 2000.0,
          "efficiency": 0.897
        },
        {
          "power": 3000.0,
          "efficiency": 0.898
        }
      ],
      "dc_to_bat efficiency": 0.95,
      "dc_to_bat max power": 3000.0,
      "bat_to_dc efficiency": 0.93,
      "bat_to_dc max power": 3000.0,
      "cycle cost": 0.03,
      "solar": [
        {
          "name": "Dak bijkeuken",
          "entity pv switch": "",
          "strings": [
            {
              "tilt": 15,
              "orientation": -85,
              "capacity": 2.8,
              "yield": 0.02
            },
            {
              "tilt": 15,
              "orientation": 95,
              "capacity": 2.8,
              "yield": 0.02
            }
          ]
        }
      ]
    }
  ],
  "solar": [
    {
      "name": "Dak zuid",
      "entity pv switch": "",
      "tilt": 10,
      "orientation": 5,
      "capacity": 3.6,
      "yield": 0.02
    }
  ],
  "electric vehicle": [
  ],
  "machines": [
  ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.dsmr_reading_electricity_delivered_1",
      "sensor.dsmr_reading_electricity_delivered_2"
    ],
    "entities grid production": [
      "sensor.dsmr_reading_electricity_returned_1",
      "sensor.dsmr_reading_electricity_returned_2"
    ],
    "entities solar production ac": [
      "sensor.shelly_em_6eaabc_total_returned_1"
    ],
    "entities solar production dc": [
      "sensor.solis_s5_eh1p_pv_today_energy_generation"
    ],
    "entities ev consumption": [
      "sensor.shelly_em_6eaabc_total_0"
    ],
    "entities wp consumption": [
    ],
    "entities boiler consumption": [
    ],
    "entities battery consumption": [
      "sensor.solis_s5_eh1p_today_battery_discharge_energy"
    ],
    "entities battery production": [
      "sensor.solis_s5_eh1p_today_battery_charge_energy"
    ]
  },
  "scheduler": {
    "active": "true",
    "0425": "get_meteo_data",
    "1025": "get_meteo_data",
    "1625": "get_meteo_data",
    "2225": "get_meteo_data",
    "1257": "get_day_ahead_prices",
    "1356": "get_day_ahead_prices",
    "1455": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1655": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "xx15": "calc_optimum",
    "xx30": "calc_optimum",
    "xx45": "calc_optimum",
    "2359": "clean_data"
  }
}
Zelfde afwijking als BBuilds hierboven had
code:
1
2
3
4
5
    "entities battery consumption": [
      "sensor.solis_s5_eh1p_today_battery_discharge_energy"
    ],
    "entities battery production": [
      "sensor.solis_s5_eh1p_today_battery_charge_energy"

Discharge van de batterij is de productie naar het huis toe, charge van de batterij is consumptie vanuit het huis.
Dus deze twee moet je verwisselen.

Ioniq 6 LR Lounge 20" @ Elli Pro
2700Wp SSW 30° @ SE2200 | 1720Wp SSW 5° @ HM-1500
Flickr | Canon 6D | 17-40mm f/4 + 50mm f/1.8 II + 70-200mm f/4 | 2x 430EX II | Sirui T005 + C10


  • Deikke
  • Registratie: Juni 2004
  • Laatst online: 07-12 06:54
Ik heb ze omgedraait, maar nog steeds niks. Ik denk ook niet dat dat iets te maken heeft met de "sqlalchemy.exc.NoSuchTableError: statistics" error die ik krijg. Het lijkt erop dat hij die tabel niet kan vinden.

  • Deikke
  • Registratie: Juni 2004
  • Laatst online: 07-12 06:54
Ik heb het al opgelost, de database naam klopte niet.

  • Batavia
  • Registratie: Mei 2011
  • Laatst online: 19:05
code:
1
2
      "optimal lower level": 20,
      "lower limit": 10,


I have these settings for my battery. However dao seems to never go below 20.

Under what conditions should it go to 10% instead of 20?

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Deikke schreef op donderdag 16 oktober 2025 @ 10:50:
Laat maar, al opgelost

Ik krijg het helaas niet voor elkaar om de baseloads te berekenen. Ik krijg telkens onderstaande foutmelding, enig idee wat hier mis gaat?

[code] Logging van bewerking "Bereken de baseloads":

2025-10-16 10:44:31 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-16 10:44:31 info: Day Ahead Optimalisering gestart op: 16-10-2025 10:44:31
2025-10-16 10:44:31 info: Day Ahead Optimalisatie gestart: 16-10-2025 10:44:31 taak: calc_baseloads
2025-10-16 10:44:34 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
File "/root/dao/prog/da_base.py", line 594, in run_task_function
getattr(self, run_task["function"])()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_base.py", line 539, in calc_baseloads
report.calc_save_baseloads()
~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_report.py", line 2738, in calc_save_baseloads
baseload = self.calc_weekday_baseload(weekday)
File "/root/dao/prog/da_report.py", line 2643, in calc_weekday_baseload
grid_consumption = self.get_sensor_week_sum(
self.grid_consumption_sensors,
...<2 lines>...
"grid_consumption",
)
File "/root/dao/prog/da_report.py", line 2617, in get_sensor_week_sum
df = self.get_sensor_week_data(sensor, weekday, vanaf, tot, col_name)
File "/root/dao/prog/da_report.py", line 2536, in get_sensor_week_data
statistics = Table(
"statistics", self.db_ha.metadata, autoload_with=self.db_ha.engine
)
File "<string>", line 2, in __new__
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/deprecations.py", line 281, in warned
return fn(*args, **kwargs) # type: ignore[no-any-return]
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 429, in __new__
return cls._new(*args, **kw)
~~~~~~~~^^^^^^^^^^^^^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 483, in _new
with util.safe_reraise():
~~~~~~~~~~~~~~~~~^^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/langhelpers.py", line 224, in __exit__
raise exc_value.with_traceback(exc_tb)
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 479, in _new
table.__init__(name, metadata, *args, _no_init=False, **kw) # type: ignore[misc] # noqa: E501
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 861, in __init__
self._autoload(
~~~~~~~~~~~~~~^
metadata,
^^^^^^^^^
...<4 lines>...
resolve_fks=resolve_fks,
^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 893, in _autoload
conn_insp.reflect_table(
~~~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<4 lines>...
_reflect_info=_reflect_info,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/engine/reflection.py", line 1548, in reflect_table
raise exc.NoSuchTableError(table_name)
sqlalchemy.exc.NoSuchTableError: statistics
Traceback (most recent call last):
File "/root/dao/webserver/../prog/day_ahead.py", line 3945, in <module>
main()
~~~~^^
File "/root/dao/webserver/../prog/day_ahead.py", line 3939, in main
da_calc.run_task_function("calc_baseloads")
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
File "/root/dao/prog/da_base.py", line 594, in run_task_function
getattr(self, run_task["function"])()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_base.py", line 539, in calc_baseloads
report.calc_save_baseloads()
~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_report.py", line 2738, in calc_save_baseloads
baseload = self.calc_weekday_baseload(weekday)
File "/root/dao/prog/da_report.py", line 2643, in calc_weekday_baseload
grid_consumption = self.get_sensor_week_sum(
self.grid_consumption_sensors,
...<2 lines>...
"grid_consumption",
)
File "/root/dao/prog/da_report.py", line 2617, in get_sensor_week_sum
df = self.get_sensor_week_data(sensor, weekday, vanaf, tot, col_name)
File "/root/dao/prog/da_report.py", line 2536, in get_sensor_week_data
statistics = Table(
"statistics", self.db_ha.metadata, autoload_with=self.db_ha.engine
)
File "<string>", line 2, in __new__
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/deprecations.py", line 281, in warned
return fn(*args, **kwargs) # type: ignore[no-any-return]
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 429, in __new__
return cls._new(*args, **kw)
~~~~~~~~^^^^^^^^^^^^^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 483, in _new
with util.safe_reraise():
~~~~~~~~~~~~~~~~~^^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/util/langhelpers.py", line 224, in __exit__
raise exc_value.with_traceback(exc_tb)
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 479, in _new
table.__init__(name, metadata, *args, _no_init=False, **kw) # type: ignore[misc] # noqa: E501
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 861, in __init__
self._autoload(
~~~~~~~~~~~~~~^
metadata,
^^^^^^^^^
...<4 lines>...
resolve_fks=resolve_fks,
^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/sql/schema.py", line 893, in _autoload
conn_insp.reflect_table(
~~~~~~~~~~~~~~~~~~~~~~~^
self,
^^^^^
...<4 lines>...
_reflect_info=_reflect_info,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/sqlalchemy/engine/reflection.py", line 1548, in reflect_table
raise exc.NoSuchTableError(table_name)
sqlalchemy.exc.NoSuchTableError: statistics
[/code]

config:

[code]{
"homeassistant": {
},
"database ha": {
"engine": "postgresql",
"server": "77b2833f-timescaledb",
"port": 5432,
"database": "dao",
"username": "dao",
"password": "!secret db_ha_password"
},
"database da": {
"engine": "postgresql",
"server": "77b2833f-timescaledb",
"port": 5432,
"database": "dao",
"username": "dao",
"password": "!secret db_da_password"
},
"meteoserver-key": "!secret meteoserver-key",
"prices": {
"source day ahead": "nordpool",
"regular high": 0.5,
"regular low": 0.4,
"switch to low": 23,
"energy taxes consumption": {
"2022-01-01": 0.06729,
"2023-01-01": 0.12599,
"2024-01-01": 0.1088,
"2025-01-01": 0.10154
},
"energy taxes production": {
"2022-01-01": 0.06729,
"2023-01-01": 0.12599,
"2024-01-01": 0.1088,
"2025-01-01": 0.10154
},
"cost supplier consumption": {
"2022-01-01": 0.002,
"2023-03-01": 0.018,
"2024-04-01": 0.0175,
"2024-08-01": 0.020496
},
"cost supplier production": {
"2022-01-01": 0.002,
"2023-03-01": 0.018,
"2024-04-01": 0.0175,
"2024-08-01": 0.020496
},
"vat consumption": {
"2022-01-01": 21,
"2022-07-01": 9,
"2023-01-01": 21
},
"vat production": {
"2022-01-01": 21,
"2022-07-01": 9,
"2023-01-01": 21
},
"last invoice": "2025-09-01",
"tax refund": "True"
},
"interval": "15min",
"logging level": "info",
"use_calc_baseload": "False",
"baseload calc periode": 56,
"baseload": [
0.14,
0.38,
0.26,
0.42,
0.15,
0.12,
0.13,
0.15,
0.23,
0.26,
0.31,
0.32,
0.31,
0.23,
0.26,
0.21,
0.21,
0.54,
0.26,
0.26,
0.22,
0.19,
0.18,
0.16
],
"graphical backend": "",
"graphics": {
"style": "Solarize_Light2",
"show": "true",
"battery balance": "True",
"prices consumption": "True",
"prices production": "False",
"prices spot": "True",
"average consumption": "True"
},
"strategy": "minimize cost",
"notifications": {
},
"grid": {
"max_power": 17
},
"history": {
"save days": 7
},
"dashboard": {
"port": 5000
},
"boiler": {
"boiler present": "False",
"entity actual temp.": "sensor.boiler_gemeten",
"entity setpoint": "sensor.boiler_ingesteld",
"entity hysterese": "sensor.hysterese_hot_water",
"cop": 2.9,
"cooling rate": 0.4,
"volume": 180,
"heating allowed below": 44,
"elec. power": 1500,
"activate service": "press",
"activate entity": "input_button.hw_trigger"
},
"heating": {
"heater present": "False",
"degree days factor": 3.6,
"stages": [
{
"max_power": 225,
"cop": 7.1
},
{
"max_power": 300,
"cop": 7.0
},
{
"max_power": 400,
"cop": 6.5
},
{
"max_power": 500,
"cop": 6.0
},
{
"max_power": 600,
"cop": 5.5
},
{
"max_power": 750,
"cop": 5.0
},
{
"max_power": 1000,
"cop": 4.5
},
{
"max_power": 1250,
"cop": 4.0
}
],
"entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
"adjustment factor": 0.04
},
"battery": [
{
"name": "Batterij",
"entity actual level": "sensor.solis_s5_eh1p_battery_soc",
"capacity": 10,
"upper limit": 98,
"lower limit": 21,
"optimal lower level": 21,
"minimum power": 0,
"charge stages": [
{
"power": 0.0,
"efficiency": 1
},
{
"power": 50.0,
"efficiency": 0.825
},
{
"power": 100.0,
"efficiency": 0.861
},
{
"power": 150.0,
"efficiency": 0.873
},
{
"power": 300.0,
"efficiency": 0.886
},
{
"power": 600.0,
"efficiency": 0.893
},
{
"power": 1200.0,
"efficiency": 0.896
},
{
"power": 2000.0,
"efficiency": 0.897
},
{
"power": 3000.0,
"efficiency": 0.898
}
],
"discharge stages": [
{
"power": 0.0,
"efficiency": 1
},
{
"power": 50.0,
"efficiency": 0.825
},
{
"power": 100.0,
"efficiency": 0.861
},
{
"power": 150.0,
"efficiency": 0.873
},
{
"power": 300.0,
"efficiency": 0.886
},
{
"power": 600.0,
"efficiency": 0.893
},
{
"power": 1200.0,
"efficiency": 0.896
},
{
"power": 2000.0,
"efficiency": 0.897
},
{
"power": 3000.0,
"efficiency": 0.898
}
],
"dc_to_bat efficiency": 0.95,
"dc_to_bat max power": 3000.0,
"bat_to_dc efficiency": 0.93,
"bat_to_dc max power": 3000.0,
"cycle cost": 0.03,
"solar": [
{
"name": "Dak bijkeuken",
"entity pv switch": "",
"strings": [
{
"tilt": 15,
"orientation": -85,
"capacity": 2.8,
"yield": 0.02
},
{
"tilt": 15,
"orientation": 95,
"capacity": 2.8,
"yield": 0.02
}
]
}
]
}
],
"solar": [
{
"name": "Dak zuid",
"entity pv switch": "",
"tilt": 10,
"orientation": 5,
"capacity": 3.6,
"yield": 0.02
}
],
"electric vehicle": [
],
"machines": [
],
"tibber": {
"api_token": "!secret tibber_api_token"
},
"report": {
"entities grid consumption": [
"sensor.dsmr_reading_electricity_delivered_1",
"sensor.dsmr_reading_electricity_delivered_2"
],
"entities grid production": [
"sensor.dsmr_reading_electricity_returned_1",
"sensor.dsmr_reading_electricity_returned_2"
],
"entities solar production ac": [
"sensor.shelly_em_6eaabc_total_returned_1"
],
"entities solar production dc": [
"sensor.solis_s5_eh1p_pv_today_energy_generation"
],
"entities ev consumption": [
"sensor.shelly_em_6eaabc_total_0"
],
"entities wp consumption": [
],
"entities boiler consumption": [
],
"entities battery consumption": [
"sensor.solis_s5_eh1p_today_battery_discharge_energy"
],
"entities battery production": [
"sensor.solis_s5_eh1p_today_battery_charge_energy"
]
},
"scheduler": {
"active": "true",
"0425": "get_meteo_data",
"1025": "get_meteo_data",
"1625": "get_meteo_data",
"2225": "get_meteo_data",
"1257": "get_day_ahead_prices",
"1356": "get_day_ahead_prices",
"1455": "get_day_ahead_prices",
"1554": "get_day_ahead_prices",
"1655": "get_day_ahead_prices",
"xx00": "calc_optimum",
"xx15": "calc_optimum",
"xx30": "calc_optimum",
"xx45": "calc_optimum",
"2359": "clean_data"
}
}[/code]
Hoi @Deikke er is zo te zien iets niet goed gegaan met je code en quote blokken, zou je dat even willen herstellen? Scheelt de lezers hier wat scrollwerk :P

  • BBuilds
  • Registratie: November 2013
  • Laatst online: 04-12 23:33
Ik heb m'n entiteiten in de report sectie ondertussen goed gezet denk ik. Iemand zin om dat even te dubbelchecken?
code:
1
2
3
4
5
6
7
8
9
10
11
12
  "report": {
    "entities grid consumption": [ "sensor.energy_export_total" ],
    "entities grid production": [ "sensor.energy_import_total"  ],
    "entities solar production ac": [ ],
    "entities solar production dc": [ "sensor.solar_energy_template" ],
    "entities ev consumption" : ["sensor.ev_charger_energy_consumption"],
    "entities wp consumption" : [""],
    "entities boiler consumption": ["sensor.heatpump_boiler_energy_template"],
    "entities battery consumption": ["sensor.home_battery_charged_energy"],
    "entities battery production": ["sensor.home_battery_discharged_energy"],
    "entity co2-intensity": ["sensor.electricity_maps_co2_intensiteit"]
  },
Toch krijg ik in het midden van de dag nog steeds een negatieve baseload waardes.
Is dat omdat er overdag meer opbrengst is geweest dan verbruik? (energie geladen in de batterij en geëxporteerd naar het net)
Of hoort het allemaal zo te zijn?

Ik heb de source entiteiten in HA allemaal nagekeken en deze geven de te verwachte data. Elke sensor is een Utility meter in HA met waardes die oplopen als er verbruik of injectie is.
In het Energy dashboard van HA werkt alles met dezelfde entiteiten goed
Afbeeldingslocatie: https://tweakers.net/i/mgYqeDTp2JpFXJTO605QD0a23eU=/800x/filters:strip_exif()/f/image/84PJccFrPLq7mfZ7FiwWH2Ql.png?f=fotoalbum_large

Baseload waardes na de berekening:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2025-10-16 14:09:15 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-16 14:09:15 info: Day Ahead Optimalisering gestart op: 16-10-2025 14:09:15
2025-10-16 14:09:15 info: Day Ahead Optimalisatie gestart: 16-10-2025 14:09:15 taak: calc_baseloads
2025-10-16 14:09:15 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-16 14:09:25 info: baseload voor weekdag 0 :
2025-10-16 14:09:25 info: 0.302 0.25 0.298 0.289 0.264 0.262 0.288 0.14 -0.379 -0.928 -1.281 -1.064 -0.509 0.282 1.737 1.233 1.313 0.902 0.359 0.878 0.616 0.632 0.231 -0.243 
2025-10-16 14:09:36 info: baseload voor weekdag 1 :
2025-10-16 14:09:36 info: -0.231 -0.273 -0.297 -0.273 -0.257 -0.247 0.287 0.04 -0.34 -0.767 -0.808 -0.573 0.034 0.144 0.232 0.742 0.569 0.676 0.35 0.706 0.532 0.459 0.311 0.377 
2025-10-16 14:09:46 info: baseload voor weekdag 2 :
2025-10-16 14:09:46 info: 0.237 0.275 0.287 0.227 0.264 0.237 0.277 0.23 -0.09 -0.69 -0.968 -0.894 -0.988 -0.665 0.352 0.16 0.809 0.574 0.477 0.466 0.451 0.39 0.312 0.244 
2025-10-16 14:09:57 info: baseload voor weekdag 3 :
2025-10-16 14:09:57 info: 0.301 0.302 0.301 0.264 0.277 0.276 0.252 0.084 -0.562 -0.816 -1.001 -0.602 -0.64 0.228 0.59 1.214 2.415 1.45 0.871 0.398 0.436 0.464 0.326 0.287 
2025-10-16 14:10:07 info: baseload voor weekdag 4 :
2025-10-16 14:10:07 info: 0.264 0.264 0.275 0.251 0.276 0.29 0.325 0.106 -0.77 -1.192 -1.208 -0.427 -0.455 0.004 0.257 -0.545 0.61 0.54 0.374 0.483 0.497 0.538 0.375 0.322 
2025-10-16 14:10:18 info: baseload voor weekdag 5 :
2025-10-16 14:10:18 info: 0.282 0.298 0.239 0.326 0.339 0.277 0.302 0.346 -0.316 -0.905 -0.746 -0.941 0.181 0.487 1.18 0.507 0.094 0.496 0.36 0.38 0.294 0.351 0.34 0.295 
2025-10-16 14:10:28 info: baseload voor weekdag 6 :
2025-10-16 14:10:28 info: 0.288 0.31 0.286 0.29 0.251 0.238 0.263 0.089 -0.718 -1.158 -1.401 -1.4 -1.032 -0.32 0.392 1.152 1.242 1.176 0.48 0.456 0.475 0.67 0.422 0.401 
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7ffeda8e6e30>
Ziet er toch maar gek uit in het charts gedeelte:
Afbeeldingslocatie: https://tweakers.net/i/S9jy7iIjhoi7qtOPXzfbz9Ge9Yk=/x800/filters:strip_exif()/f/image/Hl9XRfl66mvMLmyPZCq41n2Y.png?f=fotoalbum_large

Edit:
Hier nog even een volledige debug log van de berekening van de baseloads, als iemand daar wat aan heeft:
https://notebin.de/?aaaf2...FTPMKbz3sUWuSB91qGiqmM7LT

[ Voor 3% gewijzigd door BBuilds op 16-10-2025 15:19 ]


  • Bravo
  • Registratie: Augustus 2005
  • Laatst online: 20:28

Bravo

Second Best

BBuilds schreef op donderdag 16 oktober 2025 @ 14:20:
Ik heb m'n entiteiten in de report sectie ondertussen goed gezet denk ik. Iemand zin om dat even te dubbelchecken?

code:
1
2
3
4
5
6
7
8
9
10
11
12
  "report": {
    "entities grid consumption": [ "sensor.energy_export_total" ],
    "entities grid production": [ "sensor.energy_import_total"  ],
    "entities solar production ac": [ ],
    "entities solar production dc": [ "sensor.solar_energy_template" ],
    "entities ev consumption" : ["sensor.ev_charger_energy_consumption"],
    "entities wp consumption" : [""],
    "entities boiler consumption": ["sensor.heatpump_boiler_energy_template"],
    "entities battery consumption": ["sensor.home_battery_charged_energy"],
    "entities battery production": ["sensor.home_battery_discharged_energy"],
    "entity co2-intensity": ["sensor.electricity_maps_co2_intensiteit"]
  },
grid consumption -> stroom uit het net. Dus import_total
grid production -> stroom naar het net. Dus export_total
batterij staat wel goed

Edit: Al zou het ook mijn voorkeur hebben om als we het over de netaansluiting hebben te praten over import en export ipv consumption en production. Maar dat mag ergens op de lange lijst van mogelijke verbeteringen.

[ Voor 9% gewijzigd door Bravo op 16-10-2025 17:19 ]

Ioniq 6 LR Lounge 20" @ Elli Pro
2700Wp SSW 30° @ SE2200 | 1720Wp SSW 5° @ HM-1500
Flickr | Canon 6D | 17-40mm f/4 + 50mm f/1.8 II + 70-200mm f/4 | 2x 430EX II | Sirui T005 + C10


  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 17:54
BBuilds schreef op donderdag 16 oktober 2025 @ 14:20:
Toch krijg ik in het midden van de dag nog steeds een negatieve baseload waardes.
Is dat omdat er overdag meer opbrengst is geweest dan verbruik? (energie geladen in de batterij en geëxporteerd naar het net)
Of hoort het allemaal zo te zijn?
Bij mij is/was dat omdat de werkelijke opbrangst van de zonnestroom-omvormers afwijkt van de gerapporteerde. Hoe meer zon hoe negatiever mijn baseload. Als jouw baseload ook een relatie heeft met de zonnestraling...

We gaan er allemaal maar vanuit dat de sensoren waar we mee meten accuraat zijn, maar dat zijn ze bepaald niet. Veel van het slimme-stekker, shelly, zonnestroom-omvormer, etc. spul zit er makkelijk 5-10% naast. Het ergste is een Shelly 1PM; die rapporteert 2600W als er amper 2000 doorheen gaat. :|

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
DaBit schreef op donderdag 16 oktober 2025 @ 18:09:
[...]


Bij mij is/was dat omdat de werkelijke opbrangst van de zonnestroom-omvormers afwijkt van de gerapporteerde. Hoe meer zon hoe negatiever mijn baseload. Als jouw baseload ook een relatie heeft met de zonnestraling...

We gaan er allemaal maar vanuit dat de sensoren waar we mee meten accuraat zijn, maar dat zijn ze bepaald niet. Veel van het slimme-stekker, shelly, zonnestroom-omvormer, etc. spul zit er makkelijk 5-10% naast. Het ergste is een Shelly 1PM; die rapporteert 2600W als er amper 2000 doorheen gaat. :|
@BBuilds waar ik tegen aanliep is dat niet alle sensoren met elkaar in sync lopen met hun rapportage van vermogen en energieverbruik. Als er maar één is die een paar minuten na ijlt (bij mij de laadpaal) en dat gaat net over de uurgrens heen, dan is de rapportage op uur niveau uit balans. En daarmee ook de baseload berekening.

  • Voogel
  • Registratie: April 2016
  • Laatst online: 20:11
Ik blijf timeout meldingen (en forced restart van DAO) houden bij de baseload calculatie op een HA Green, 7 dagen gaat prima maar zodra ik meer doe gaat het mis. CPU en memory pieken niet opvallend en full debug logging laat ook niks zien…. Iemand nog een suggestie?

4x SF165 & 3x SF170 op huisje uit 1896


  • BBuilds
  • Registratie: November 2013
  • Laatst online: 04-12 23:33
@Bravo Bedankt voor de hulp. Ik begrijp de logica achter de naamgeving * production/consumption nog steeds niet 100%, maar door jouw hulp staat het nu goed geconfigureerd, waarvoor dank.

Ik heb ondertussen ook de calc_baseload functie in orde gekregen door mijn solar productie bij entities solar production ac te plaatsen ipv bij entities solar production dc (trial and error), ookal heb ik een hybride solar omvormer met dc gekoppelde batterij.
Heb ik de config daarvan verkeerd begrepen? Welk soort solar moet er dan bij Solar DC geconfigureerd worden?

Als ik m'n solar bij entities solar production dc vermeld krijg ik overdag allemaal negatieve waarden:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2025-10-16 21:11:26 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-16 21:11:26 info: Day Ahead Optimalisering gestart op: 16-10-2025 21:11:26
2025-10-16 21:11:26 info: Day Ahead Optimalisatie gestart: 16-10-2025 21:11:26 taak: calc_baseloads
2025-10-16 21:11:26 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-16 21:11:36 info: baseload voor weekdag 0 :
2025-10-16 21:11:36 info: 0.347 0.297 0.347 0.335 0.309 0.309 0.335 0.184 -0.202 -0.855 -0.999 -1.269 -1.756 -2.742 -2.449 -1.991 -2.022 -1.62 -0.166 0.976 0.697 0.771 0.641 0.635 
2025-10-16 21:11:46 info: baseload voor weekdag 1 :
2025-10-16 21:11:46 info: 0.646 0.609 0.585 0.61 0.621 0.592 0.334 0.083 -0.228 -0.616 -0.873 -1.376 -1.643 -1.975 -2.257 -1.966 -1.916 -1.179 -0.093 0.711 0.659 0.584 0.372 0.422 
2025-10-16 21:11:56 info: baseload voor weekdag 2 :
2025-10-16 21:11:56 info: 0.285 0.322 0.335 0.272 0.31 0.285 0.322 0.284 -0.017 -0.551 -0.997 -1.237 -1.558 -1.641 -1.908 -1.678 -1.556 -0.501 0.012 0.422 0.497 0.434 0.359 0.384 
2025-10-16 21:12:07 info: baseload voor weekdag 3 :
2025-10-16 21:12:07 info: 0.347 0.347 0.347 0.31 0.322 0.322 0.297 0.132 -0.255 -0.789 -1.161 -1.351 -1.482 -1.427 -2.04 -2.14 -2.518 -1.265 -0.404 0.358 0.485 0.572 0.447 0.335 
2025-10-16 21:12:17 info: baseload voor weekdag 4 :
2025-10-16 21:12:17 info: 0.31 0.31 0.322 0.297 0.322 0.334 0.372 0.158 -0.34 -0.688 -1.075 -1.348 -1.661 -2.18 -2.053 -1.39 -2.306 -1.48 0.083 0.572 0.572 0.584 0.497 0.697 
2025-10-16 21:12:27 info: baseload voor weekdag 5 :
2025-10-16 21:12:27 info: 0.809 0.634 0.547 0.634 0.447 0.322 0.347 0.434 -0.117 -0.473 -1.015 -1.704 -2.136 -2.499 -2.901 -2.215 -1.878 -1.672 -0.275 0.455 0.359 0.397 0.384 0.659 
2025-10-16 21:12:37 info: baseload voor weekdag 6 :
2025-10-16 21:12:37 info: 0.659 0.684 0.409 0.334 0.297 0.285 0.31 0.134 -0.235 -0.866 -1.248 -1.303 -1.823 -2.48 -2.677 -2.911 -2.603 -1.612 -0.304 0.492 0.584 0.872 0.622 0.471 
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7ffee3cd6e30>


Als ik dezelfde entiteit bij entities solar production ac vermeld in de config komen er wel allemaal geloofwaardige positieve waardes

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2025-10-16 21:22:10 info: Day Ahead Optimalisering versie: 2025.10.4
2025-10-16 21:22:10 info: Day Ahead Optimalisering gestart op: 16-10-2025 21:22:10
2025-10-16 21:22:10 info: Day Ahead Optimalisatie gestart: 16-10-2025 21:22:10 taak: calc_baseloads
2025-10-16 21:22:10 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-16 21:22:21 info: baseload voor weekdag 0 :
2025-10-16 21:22:21 info: 0.347 0.297 0.347 0.335 0.309 0.309 0.335 0.26 0.385 0.745 1.126 1.393 1.081 1.145 1.339 1.347 1.09 1.13 0.896 1.101 0.697 0.771 0.641 0.635 
2025-10-16 21:22:31 info: baseload voor weekdag 1 :
2025-10-16 21:22:31 info: 0.646 0.609 0.585 0.61 0.621 0.592 0.334 0.295 0.397 0.796 0.764 0.799 0.932 1.3 1.455 1.109 0.572 0.896 0.582 0.861 0.671 0.584 0.372 0.422 
2025-10-16 21:22:41 info: baseload voor weekdag 2 :
2025-10-16 21:22:41 info: 0.285 0.322 0.335 0.272 0.31 0.285 0.322 0.372 0.258 0.399 0.628 0.775 1.067 1.296 0.867 0.935 0.832 0.724 0.575 0.596 0.522 0.434 0.359 0.384 
2025-10-16 21:22:52 info: baseload voor weekdag 3 :
2025-10-16 21:22:52 info: 0.347 0.347 0.347 0.31 0.322 0.322 0.297 0.283 0.533 0.611 0.989 1.186 1.68 1.648 1.072 0.622 0.52 0.798 0.858 0.571 0.498 0.572 0.447 0.335 
2025-10-16 21:23:02 info: baseload voor weekdag 4 :
2025-10-16 21:23:02 info: 0.31 0.31 0.322 0.297 0.322 0.334 0.372 0.371 0.685 0.987 1.162 1.19 1.176 1.244 1.135 1.547 1.169 0.995 1.07 0.797 0.61 0.584 0.497 0.697 
2025-10-16 21:23:12 info: baseload voor weekdag 5 :
2025-10-16 21:23:12 info: 0.809 0.634 0.547 0.634 0.447 0.322 0.347 0.534 0.708 1.114 0.835 0.772 0.764 0.576 0.661 0.985 0.959 0.74 0.775 0.58 0.384 0.397 0.384 0.659 
2025-10-16 21:23:22 info: baseload voor weekdag 6 :
2025-10-16 21:23:22 info: 0.659 0.684 0.409 0.334 0.297 0.285 0.31 0.284 0.653 0.972 1.152 1.385 1.289 1.307 1.398 0.951 0.822 0.825 0.708 0.567 0.597 0.872 0.622 0.471 
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7fff3c7f6e30>


Ziet er veel beter uit zo! d:)b
Afbeeldingslocatie: https://tweakers.net/i/KDXgLVn7d018rME8FM-Zi_gnOcI=/x800/filters:strip_exif()/f/image/JZFKA8mhd9t3brX7D7LIjCJG.png?f=fotoalbum_large

  • balk
  • Registratie: Januari 2000
  • Laatst online: 20:26
@KC27 is het een idee om enkele veel voorkomende fouten af te vangen met een try/except? En dan de gebruiker een keurige notification voorschotelen? Ik heb nu deze fout (in de test versie, dus niet erg), en ik vermoed dat het komt door gebrek aan meteo en prijs data. Over het algemeen gaat het goed maar laatst was er geen prijs data op tijd en draaide DAO de soep in. Ik moest toen handmatig de prijzen ophalen. Met een goede foutmelding, of zelfs specifieke fout code zou je de recovery kunnen automatiseren. Idee?
code:
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
2025-10-16 22:44:47 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 622, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 552, in calc_optimum_met_debug
    dacalc.calc_optimum()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/day_ahead.py", line 93, in calc_optimum
    price_data = report.get_price_data(
        dt.datetime.fromtimestamp(start_hour), end=None, interval=self.interval
    )
  File "/root/dao/prog/da_report.py", line 2847, in get_price_data
    end = datetime.datetime.strptime(df_da["time"].iloc[-1], "%Y-%m-%d %H:%M")
                                     ~~~~~~~~~~~~~~~~~~^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1192, in __getitem__
    return self._getitem_axis(maybe_callable, axis=axis)
           ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1753, in _getitem_axis
    self._validate_integer(key, axis)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1686, in _validate_integer
    raise IndexError("single positional indexer is out-of-bounds")
IndexError: single positional indexer is out-of-bounds
2025-10-16 22:44:47 debug: Starting new HTTP connection (1): 192.168.1.7:8123
2025-10-16 22:44:47 debug: http://192.168.1.7:8123 "POST /api/services/input_text/set_value HTTP/1.1" 200 334
debug:root:hass/api/config: {"allowlist_external_dirs":["/media","/config/www"],"allowlist_external_urls":[],"components":["api","history","shell_command","samsungtv_smart","group.notify","unifi.device_tracker","logbook","spook.number","tuya.siren","websocket_api","update","generic_thermostat.climate","lock","cloud","spook.select","energy","weather","spotifyplus.media_player","remote","unifi.image","google_generative_ai_conversation.conversation","homeassistant","ssdp","tado","hassio","zwave_js.sensor","spook.button","switch_as_x","tuya.switch","mqtt.switch","kleenex_pollenradar","google_generative_ai_conversation.tts","sun.binary_sensor","energy.sensor","mqtt","solaredgeoptimizers","utility_meter.sensor","mqtt.number","timer","tuya.climate","workday.calendar","input_boolean","unifi","tibber.sensor","bluetooth_adapters","zwave_js.event","group.light","derivative","nederlandse_spoorwegen.sensor","mqtt.sensor","homekit_controller.climate","template","openweathermap.weather","system_health","tibber","ical.sensor","samsungtv_smart.media_player","solaredge_modbus.select","onboarding","ffmpeg","wake_on_lan.switch","diagnostics","hassio.update","group","buienradar.camera","nederlandse_spoorwegen","mobile_app","backup.sensor","systemmonitor.sensor","homekit_controller","statistics","rest.sensor","binary_sensor","tuya.sensor","local_todo.todo","esphome.media_player","file_upload","cloud.stt","command_line","sessy","statistics.sensor","assist_pipeline","threshold","version","rest","hassio.sensor","mobile_app.notify","tado.sensor","zwave_js.siren","dsmr_reader.sensor","zwave_js.fan","input_button","switch_as_x.light","smart_thermostat.climate","localtuya.number","cloud.binary_sensor","unifi.update","esphome.button","proxmoxve","samsungtv_smart.remote","mqtt.select","workday","sql","adguard.switch","zwave_js.button","button","template.select","mqtt.text","unifi.sensor","todo","backup.event","integration","kleenex_pollenradar.sensor","tado.water_heater","tuya.select","cast.media_player","hacs.switch","blueprint","sessy.binary_sensor","google_generative_ai_conversation","unifi.switch","spotifyplus","repairs","solaredge_modbus","esphome.update","hassio.switch","backup","climate","conversation","spook.event","afvalwijzer","utility_meter","proxmoxve.binary_sensor","homekit_controller.select","http","ping.sensor","zwave_js","bluetooth","systemmonitor","mqtt.light","mqtt.event","esphome.sensor","application_credentials","tuya.event","input_number","sessy.update","stt","github","openweathermap","tado.switch","local_todo","spook.time","tuya.valve","homeassistant.scene","frank_energie.sensor","cloud.tts","google_generative_ai_conversation.ai_task","zwave_js.cover","switch","spook.binary_sensor","tuya.vacuum","mqtt.binary_sensor","afvalwijzer.sensor","tuya.humidifier","system_log","ical.calendar","watchman","esphome.camera","wake_on_lan","utility_meter.select","mqtt.climate","auto_backup.binary_sensor","config","mobile_app.device_tracker","rest_command","mqtt.fan","trace","esphome.light","tuya.cover","zwave_js.number","tado.device_tracker","template.binary_sensor","tuya.alarm_control_panel","version.sensor","buienalarm.sensor","alarm_control_panel","esphome","tod.binary_sensor","tuya.scene","workday.binary_sensor","google_generative_ai_conversation.stt","tibber.notify","hacs.update","sessy.switch","sun.sensor","watchman.sensor","mobile_app.binary_sensor","zwave_js.binary_sensor","frontend","filter.sensor","media_player","intent","openweathermap.sensor","image","mobile_app.sensor","esphome.number","sessy.sensor","version.binary_sensor","history_stats.sensor","pvoutput","mpd","frank_energie","universal.media_player","media_source","tag","sql.sensor","vacuum","samsungtv","tado.climate","buienradar","ical","cast","person","command_line.sensor","min_max","homekit_controller.sensor","schedule","buienradar.weather","localtuya.sensor","sessy.button","hacs","adguard.sensor","ping.device_tracker","recorder","template.switch","spook.switch","event","spotify","zwave_js.climate","number","tuya.fan","tuya.button","device_tracker","derivative.sensor","dsmr_reader","search","ping.binary_sensor","integration.sensor","zwave_js.light","solaredgeoptimizers.sensor","nodered","scene","wled","entsoe","usb","light","energy_meter.sensor","solaredge_modbus.number","plant","zone","zwave_js.update","ping","humidifier","webhook","scheduler.switch","spook","select","samsungtv.media_player","input_datetime","homekit_controller.button","tuya.number","network","sessy.number","counter","localtuya.switch","input_text","camera","tuya.camera","proxmoxve.button","forecast_solar.sensor","localtuya","adguard","lovelace","tuya","auto_backup","spotify.media_player","template.sensor","sessy.select","notify","valve","text","tado.binary_sensor","hassio.binary_sensor","automation","zwave_js.switch","unifi.button","esphome.switch","my","pvoutput.sensor","energy_meter","esphome.binary_sensor","threshold.binary_sensor","min_max.sensor","buienradar.sensor","ai_task","script","zwave_js.lock","systemmonitor.binary_sensor","zwave_js.select","water_heater","esphome.select","image_upload","solaredge_modbus.sensor","auth","entsoe.sensor","device_automation","toyota","tuya.binary_sensor","forecast_solar","logger","spook.sensor","local_calendar.calendar","persistent_notification","proxmoxve.sensor","sessy.time","scheduler","calendar","siren","mpd.media_player","zwave_js.humidifier","input_select","hardware","tuya.light","zeroconf","cover","github.sensor","esphome.event","nodered.sensor","wake_word","frank_energie.button","buienalarm","auto_backup.button","samsungtv.remote","co2signal.sensor","time","sun","fan","tod","sensor","analytics","co2signal","tts","time_date.sensor","local_calendar","auto_backup.sensor","esphome.cover"],"config_dir":"/config","config_source":"storage","country":"NL","currency":"EUR","debug":false,"elevation":0,"external_url":null,"internal_url":null,"language":"en","latitude":52.01789586139738,"location_name":"Home","longitude":4.3583106994628915,"radius":100,"recovery_mode":false,"safe_mode":false,"state":"RUNNING","time_zone":"Europe/Amsterdam","unit_system":{"length":"km","accumulated_precipitation":"mm","area":"m²","mass":"g","pressure":"Pa","temperature":"°C","volume":"L","wind_speed":"m/s"},"version":"2025.10.2","whitelist_external_dirs":["/media","/config/www"]}
debug:root:Dialect: postgresql, database: day_ahead_test, server: 192.168.1.111
debug:root:db_url: postgresql+psycopg2://day_ahead:G2DpVx66hfM2zK@192.168.1.111:5432/day_ahead_test
debug:root:Dialect: postgresql, database: homeassistant3, server: 192.168.1.111
debug:root:db_url: postgresql+psycopg2://postgres:RMzK5tzHN2zebj@192.168.1.111:5432/homeassistant3
debug:urllib3.connectionpool:Starting new HTTP connection (1): 192.168.1.7:8123
debug:urllib3.connectionpool:http://192.168.1.7:8123 "GET /api/states/input_select.dao_strategy HTTP/1.1" 200 436
debug:urllib3.connectionpool:Starting new HTTP connection (1): 192.168.1.7:8123
debug:urllib3.connectionpool:http://192.168.1.7:8123 "POST /api/services/input_datetime/set_datetime HTTP/1.1" 200 322
debug:root:Connection status Pool size: 5  Connections in pool: 0 Current Overflow: -5 Current Checked out connections: 0 at line 210 in /root/dao/prog/da_base.py
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 3967, in <module>
    main()
    ~~~~^^
  File "/root/dao/webserver/../prog/day_ahead.py", line 3941, in main
    da_calc.run_task_function("calc_optimum_met_debug")
    ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/prog/da_base.py", line 622, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 552, in calc_optimum_met_debug
    dacalc.calc_optimum()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/day_ahead.py", line 93, in calc_optimum
    price_data = report.get_price_data(
        dt.datetime.fromtimestamp(start_hour), end=None, interval=self.interval
    )
  File "/root/dao/prog/da_report.py", line 2847, in get_price_data
    end = datetime.datetime.strptime(df_da["time"].iloc[-1], "%Y-%m-%d %H:%M")
                                     ~~~~~~~~~~~~~~~~~~^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1192, in __getitem__
    return self._getitem_axis(maybe_callable, axis=axis)
           ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1753, in _getitem_axis
    self._validate_integer(key, axis)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1686, in _validate_integer
    raise IndexError("single positional indexer is out-of-bounds")
IndexError: single positional indexer is out-of-bounds

  • balk
  • Registratie: Januari 2000
  • Laatst online: 20:26
Ander idee: Is het mogelijk te maken om de baseload tijdelijk te overschrijven? Stel ik weet 's middags dat er 's avonds pizzas de oven in gaan. Dan kan ik dat in het oor van DAO fluisteren en houdt ie er rekening mee.
Vanavond zijn de volgende (identieke) versies gepubliceerd:
- productie versie 2025.10.5
- test versie 2025.10.5.rc6
Dit staat in de changelog van de productieversie:
Changed:
  • implemented **flex setting** of settings:
    • direct via your settings
    • indirect from HA via an entity in your settings
    More info in DOCS.md
  • Updated several used pyhton-modules (cryptography, numpy)
  • Added "max gap" (flex setting), see DOCS.md
  • Added logging "Rekentijd" in sec
  • made degree_days_factor, boiler_setpoint, boiler_hysterese and strategy flex setting
  • support voor machine consumptions sensors
  • added meteo parameter: wind-snelheid
Fixed:
  • Fixed error when planning wp-hours with 15min interval (reported by TomKuipers1983)
  • Fixed error when calculating "stop invertor" with 15min-interval
  • corrected output of hp with less than 8 stages
  • fixed error second graph
  • fixed error planning ev last hour with 15min prices (reported by @dabit)
  • fixed error when boiler is heated by heatpump

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

balk schreef op donderdag 16 oktober 2025 @ 22:59:
@KC27 is het een idee om enkele veel voorkomende fouten af te vangen met een try/except? En dan de gebruiker een keurige notification voorschotelen? Ik heb nu deze fout (in de test versie, dus niet erg), en ik vermoed dat het komt door gebrek aan meteo en prijs data. Over het algemeen gaat het goed maar laatst was er geen prijs data op tijd en draaide DAO de soep in. Ik moest toen handmatig de prijzen ophalen. Met een goede foutmelding, of zelfs specifieke fout code zou je de recovery kunnen automatiseren. Idee?


[...]
Dank je wel voor het meedenken.
Wordt gemaakt in de volgende (test)versie.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • xarow
  • Registratie: Februari 2011
  • Laatst online: 22:35
xarow schreef op woensdag 15 oktober 2025 @ 21:34:
[...]


Mooie addon en interessant om toe te passen. Ik ben momenteel aan het kijken hoe ik de warmtepomp kan regelen en wil dit doen op basis van het verschuiven van de stooklijn. Bovenstaand gaf je aan dat er nog een fout in zat, waardoor de stages en graaddagen factor ook ingesteld moesten worden bij de verplaatsing van de stooklijn.

Het lijkt er op dat die fout er nog in zit, of is dit bewust benodigd?
@KC27 Ik denk dat er over mijn vraag is heen gelezen. Is het een bug of een feature dat de stages ingesteld dienen te worden indien je de warmtepomp wilt regelen op basis van de stooklijn?
xarow schreef op vrijdag 17 oktober 2025 @ 14:15:
[...]


@KC27 Ik denk dat er over mijn vraag is heen gelezen. Is het een bug of een feature dat de stages ingesteld dienen te worden indien je de warmtepomp wilt regelen op basis van de stooklijn?
Ja, sorry. Te druk met het project (en andere dingen) en dan schiet er soms een reactie bij in.
Nou het is een feature,
Ik werk zelf ook met stooklijnverschuiving en de berekening van die verschuiving gaat helemaal buiten de optimaliseringsberekening om. Het liefst zou ik de inzet van mijn warmtepomp berekenen met behulp van de stages en dan inzetten op de goedkoopste uren en uitzetten op de dure uren. Maar helaas kan ik het elektrisch vermogen van mijn warmtepomp niet rechtstreeks aansturen.
De berekening van de inzet van mijn warmtepomp maakt DAO toch voor mij en het blijkt dat dit goed overeenkomt met het uiteindelijke resultaat van de stooklijnverschuiving.
Als die stages voor jou niet interessant zijn kun je eventueel volstaan met twee stages, bijvoorbeeld:
code:
1
2
3
4
"stages": [
  { "power": 0, "cop": 3.0},
  { "power": 1500, "cop" : 3.0}
]

Als je het allemaal echt heel storend vindt kan ik zien of ik ze bij de "adjustment: heating curve" optioneel kan maken.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • f.welvering
  • Registratie: Oktober 2009
  • Laatst online: 22:20
KC27 schreef op vrijdag 17 oktober 2025 @ 23:18:
[...]

Ja, sorry. Te druk met het project (en andere dingen) en dan schiet er soms een reactie bij in.
Nou het is een feature,
Ik werk zelf ook met stooklijnverschuiving en de berekening van die verschuiving gaat helemaal buiten de optimaliseringsberekening om. Het liefst zou ik de inzet van mijn warmtepomp berekenen met behulp van de stages en dan inzetten op de goedkoopste uren en uitzetten op de dure uren. Maar helaas kan ik het elektrisch vermogen van mijn warmtepomp niet rechtstreeks aansturen.
De berekening van de inzet van mijn warmtepomp maakt DAO toch voor mij en het blijkt dat dit goed overeenkomt met het uiteindelijke resultaat van de stooklijnverschuiving.
Als die stages voor jou niet interessant zijn kun je eventueel volstaan met twee stages, bijvoorbeeld:
code:
1
2
3
4
"stages": [
  { "power": 0, "cop": 3.0},
  { "power": 1500, "cop" : 3.0}
]

Als je het allemaal echt heel storend vindt kan ik zien of ik ze bij de "adjustment: heating curve" optioneel kan maken.
Hoe pas jij die strooklijn verschuiving toe?
Pas je de configuratie van je wp aan of stuur je de Thermostaat / woonkamer temperatuur aan?

WP: DeWarmte PompAO 6.4Kw Hybrid, CV Intergas, Thermostaat Netatmo, 70m2 vvw, PV: 34x 325wp solaredge omvormer en optimizers,Wan ip adres weten? https://mijnips.eu


  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 21:55
f.welvering schreef op zaterdag 18 oktober 2025 @ 09:09:
[...]


Hoe pas jij die strooklijn verschuiving toe?
Pas je de configuratie van je wp aan of stuur je de Thermostaat / woonkamer temperatuur aan?
Ik ga dit doen door mijn thermostaat te verhogen/verlagen. Die stuurt vervolgens de wp aan met een aan/uit signaal waar weer de eigen stooklijn in zit (die ik niet kan aanpassen)

PV 5.590 Wp Enphase, 2.700 Wp Growatt - Easee laadpaal - Itho Amber 95 WP


  • xarow
  • Registratie: Februari 2011
  • Laatst online: 22:35
KC27 schreef op vrijdag 17 oktober 2025 @ 23:18:
[...]

Ja, sorry. Te druk met het project (en andere dingen) en dan schiet er soms een reactie bij in.
Nou het is een feature,
Ik werk zelf ook met stooklijnverschuiving en de berekening van die verschuiving gaat helemaal buiten de optimaliseringsberekening om. Het liefst zou ik de inzet van mijn warmtepomp berekenen met behulp van de stages en dan inzetten op de goedkoopste uren en uitzetten op de dure uren. Maar helaas kan ik het elektrisch vermogen van mijn warmtepomp niet rechtstreeks aansturen.
De berekening van de inzet van mijn warmtepomp maakt DAO toch voor mij en het blijkt dat dit goed overeenkomt met het uiteindelijke resultaat van de stooklijnverschuiving.
Als die stages voor jou niet interessant zijn kun je eventueel volstaan met twee stages, bijvoorbeeld:
code:
1
2
3
4
"stages": [
  { "power": 0, "cop": 3.0},
  { "power": 1500, "cop" : 3.0}
]

Als je het allemaal echt heel storend vindt kan ik zien of ik ze bij de "adjustment: heating curve" optioneel kan maken.
Duidelijk, dan ga ik even kijken hoe ik die stages ga invullen. Bedankt!
f.welvering schreef op zaterdag 18 oktober 2025 @ 09:09:
[...]


Hoe pas jij die stooklijn verschuiving toe?
Pas je de configuratie van je wp aan of stuur je de Thermostaat / woonkamer temperatuur aan?
Mijn wp heeft de mogelijkheid om de stooklijn parallel te verschuiven. Dat is een instelling op wp zelf maar dat kan ook op afstand. Dat doe ik met DAO via de Home Assistant custom integratie.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • diamanten
  • Registratie: Juli 2024
  • Laatst online: 22:37
Na upgrade naar 2025.10.5, ik krijg nu:
code:
1
2
changed to 2025-10-19 08:30:00 waarschuwing: Er is te weinig tijd om tot 80.0% te laden triggered by action input_text: Set
08:30:00 - 13 minutes ago - Supervisor

terwijl de auto niet ingeplugd is:
code:
1
2025-10-19 08:30:23 info: Kia Niro EV is niet thuis of niet ingeplugd

Klopt dit?
diamanten schreef op zondag 19 oktober 2025 @ 08:46:
Na upgrade naar 2025.10.5, ik krijg nu:
code:
1
2
changed to 2025-10-19 08:30:00 waarschuwing: Er is te weinig tijd om tot 80.0% te laden triggered by action input_text: Set
08:30:00 - 13 minutes ago - Supervisor

terwijl de auto niet ingeplugd is:
code:
1
2025-10-19 08:30:23 info: Kia Niro EV is niet thuis of niet ingeplugd

Klopt dit?
Dat is inderdaad een foutje.
Ik zal het in de volgende versie aanpassen door daar extra check's op te zetten.
Dank voor het melden.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • CopyCatz
  • Registratie: September 2000
  • Laatst online: 23:44
Ik heb van de week deze integratie ontdekt en na wat uurtjes puzzelen met de configuratie heb ik de zaak nu draaiend. Heel erg bedankt voor het bouwen van deze integratie, echt super!

Ik heb wel een vraagje, het viel me op dat ik qua hem meetwaardes alleen mijn accu percentage sensor hoef in te vullen, verder geen opbrengst/verbruik of zonnepaneel sensors. Betekent dit dat jullie een aantal zaken zelf al standaard kunnen ophalen? Ik vermoed via de settings van het energy dashboard?

  • Impossibl3
  • Registratie: November 2012
  • Laatst online: 21:55
CopyCatz schreef op zondag 19 oktober 2025 @ 16:17:
Ik heb van de week deze integratie ontdekt en na wat uurtjes puzzelen met de configuratie heb ik de zaak nu draaiend. Heel erg bedankt voor het bouwen van deze integratie, echt super!

Ik heb wel een vraagje, het viel me op dat ik qua hem meetwaardes alleen mijn accu percentage sensor hoef in te vullen, verder geen opbrengst/verbruik of zonnepaneel sensors. Betekent dit dat jullie een aantal zaken zelf al standaard kunnen ophalen? Ik vermoed via de settings van het energy dashboard?
Nee onder aan de configuratie uit het voorbeeld staan wat sensoren zoals grid, pv etc. Daar vul je de kwh meters in.

PV 5.590 Wp Enphase, 2.700 Wp Growatt - Easee laadpaal - Itho Amber 95 WP


  • CopyCatz
  • Registratie: September 2000
  • Laatst online: 23:44
Impossibl3 schreef op zondag 19 oktober 2025 @ 16:57:
[...]


Nee onder aan de configuratie uit het voorbeeld staan wat sensoren zoals grid, pv etc. Daar vul je de kwh meters in.
Doh! helemaal gemist.

[ Voor 22% gewijzigd door CopyCatz op 19-10-2025 18:12 ]


  • f.welvering
  • Registratie: Oktober 2009
  • Laatst online: 22:20
KC27 schreef op zaterdag 18 oktober 2025 @ 19:26:
[...]

Mijn wp heeft de mogelijkheid om de stooklijn parallel te verschuiven. Dat is een instelling op wp zelf maar dat kan ook op afstand. Dat doe ik met DAO via de Home Assistant custom integratie.
Ik zat even naar jouw eerdere post te kijken met een screenshot van de HA kaart.
Hoewel mijn aansturing anders is zou ik mijn thermostaat dan + of - het aantal graden moeten doen op basis van het advies van DAO? Of gebruik ik juist de ON/OFF. Ik ben de weg wat kwijt zoals je wellicht merkt.

Ik krijg ondertussen deze grafiek vanuit DAO richting HA, zowel de stooklijn verschuiving als de WP ON/OFF.

Afbeeldingslocatie: https://tweakers.net/i/B7MPnIGazvKBw-LSZPhd6qPBU68=/800x/filters:strip_exif()/f/image/AqiIxzjCKzMU75A8qJRnxA5T.png?f=fotoalbum_large

WP: DeWarmte PompAO 6.4Kw Hybrid, CV Intergas, Thermostaat Netatmo, 70m2 vvw, PV: 34x 325wp solaredge omvormer en optimizers,Wan ip adres weten? https://mijnips.eu


  • CopyCatz
  • Registratie: September 2000
  • Laatst online: 23:44
Is het ook mogelijk om een aantal dagen historie te wissen? ik heb een fout gemaakt in de config, per ongeluk bij entities grid consumption twee keer dezelfde sensor ingevuld waardoor er nu dubbel geteld is. Als ik dan later de baseload wil laten uitrekenen heb ik liever de incorrecte data eerst verwijderd.

  • itavero
  • Registratie: Oktober 2004
  • Laatst online: 07-12 16:30
Goede vraag, CopyCatz! Dat vroeg ik mij ook nog af. Een van mijn entiteiten had de verkeerde eenheid, waardoor die er een factor 1000 naast zat. 😅

Ik overweeg binnenkort over te stappen van Frank Energie naar een andere energieleverancier.
Momenteel twijfel ik tussen Tibber en Zonneplan.

Zonneplan biedt een "zonnebonus": 10% extra vergoeding voor teruglevering tussen zonsopkomst en zonsondergang.
Dit is momenteel nog niet te modelleren in DAO, toch?

De vergoedingen tussen beide leveranciers schelen elkaar niet zo veel. Overal is Zonneplan in mijn situatie waarschijnlijk iets goedkoper, maar Tibber heeft weer als voordeel dat een van onze EVs gekoppeld kan worden voor de "Grid Rewards".

  • Deikke
  • Registratie: Juni 2004
  • Laatst online: 07-12 06:54
@KC27 Volgens mij gaat er hier iets mis. Het lijkt erop dat de DC PV naar de accu zou moeten, gezien die is verdwenen in de geoptimaliseerde grafiek. Maar de SOC is een vlakke lijn.

Afbeeldingslocatie: https://tweakers.net/i/KqNeM4XrO1r9IonI-woro8dMZLs=/x800/filters:strip_exif()/f/image/z9MxK1SHZvSvb2eKfWIfQLa4.png?f=fotoalbum_large

  • storeman
  • Registratie: April 2004
  • Laatst online: 23:08
@itavero Tibber heeft kwartierprijzen, Zonneplan niet, misschien ook nog iets om rekening mee te houden?

"Chaos kan niet uit de hand lopen"


  • sMoKeFiSh
  • Registratie: Februari 2003
  • Laatst online: 04-12 23:06
Ik zie de laatste paar dagen ook de volgende errors staan onderin m'n log:

<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f8e614b5120>
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f8e61c87010>

Had iemand toevallig al gevonden hoe dit te verhelpen is zonder over te schakelen naar MySQL?

Full Electric | 2x Deye 12KSG04LP3 met 1.680Ah LFP 51,2V (4x Seplos Mason 280, 2x Seplos vertical 280) | 23,3 kWp PV


  • Dogooder
  • Registratie: April 2004
  • Laatst online: 23:31

Dogooder

dus...

Dat komt volgens mij door de upgrade van python 3.12 naar 3.13. Versie 3.13 geeft hier een warning over, https://docs.python.org/3/whatsnew/3.13.html#sqlite3, waar 3.12 het gewoon negeerde.

Snelle scan leert dat db_manager.py bij de get x functies geen connections.close() heeft. Daar zou het theoretisch aan kunnen liggen. Ik heb het niet getest.

[ Voor 28% gewijzigd door Dogooder op 20-10-2025 15:57 ]


  • CopyCatz
  • Registratie: September 2000
  • Laatst online: 23:44
Ik snap niet helemaal hoe ik de reports moet instellen. Ik heb nu dit:

"report": {
"entities grid consumption": [
"sensor.shellypro3em_total_active_energy"
],
"entities grid production": [
"sensor.shellypro3em_total_active_returned_energy"
],
"entities solar production ac": [
"sensor.kwh_meter_total_energy_export"
],

Ik zie in het report bv verbruik, productie, netto:
15:00 0.185 0.342 -0.157

Het lijkt erop dat verbruik al verbruik minus opwek is (shellypro3em_total_active_returned_energy is alleen wat retour het net op gaat), en nu wordt nog een keer daar de productie van afgetrokken. Hoe los ik dit slim op? Of maak ik een denkfout?
Dogooder schreef op maandag 20 oktober 2025 @ 15:50:
Dat komt volgens mij door de upgrade van python 3.12 naar 3.13. Versie 3.13 geeft hier een warning over, https://docs.python.org/3/whatsnew/3.13.html#sqlite3, waar 3.12 het gewoon negeerde.

Snelle scan leert dat db_manager.py bij de get x functies geen connections.close() heeft. Daar zou het theoretisch aan kunnen liggen. Ik heb het niet getest.
Ik had er al naar gekeken, maar alle connections worden geopend met een with-context en die zouden door sql-alchemy gesloten moeten worden.
Ik zal er nog eens naar kijken.
Bedankt voor de tip!

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

CopyCatz schreef op maandag 20 oktober 2025 @ 12:01:
Is het ook mogelijk om een aantal dagen historie te wissen? ik heb een fout gemaakt in de config, per ongeluk bij entities grid consumption twee keer dezelfde sensor ingevuld waardoor er nu dubbel geteld is. Als ik dan later de baseload wil laten uitrekenen heb ik liever de incorrecte data eerst verwijderd.
De historie wordt door DAO niet opgeslagen.
DAO haalt de historie uit de db van Home Assistant.
Als je je sensoren goed zet dan herberekent DAO met die nieuwe setting (als die goed is) de juiste baseloads.
Lukt dat niet met het run-menu (time out) doe het dan met de scheduler, zet eventueel tijdelijk een extra taak in je scheduler en wacht het resultaat af.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • wmc
  • Registratie: November 2012
  • Laatst online: 19:02

wmc

Ik ben sinds vandaag ook begonnen met DAO, echter ik loop al vrij snel tegen een probleem aan. Ik heb de meteoserver werkend gerekegen, als ook de rapportage van day ahead prijzen. Als ik vervolgens met de default waardes op "Optimaliseringsberekening met debug" druk krijg ik onderstaande fout. Oftewel, ergens wordt door nul gedeeld met de default waardes. Wat doe ik fout?

+++++++++++++++++++++++++++++++++++++++++++++++++
Logging van bewerking "Optimaliseringsberekening met debug":
2025-10-20 19:11:19 info: Day Ahead Optimalisering versie: 2025.10.5
2025-10-20 19:11:19 info: Day Ahead Optimalisering gestart op: 20-10-2025 19:11:19
2025-10-20 19:11:19 info: Day Ahead Optimalisatie gestart: 20-10-2025 19:11:19 taak: calc_optimum_met_debug
2025-10-20 19:11:19 info: Debug = True
2025-10-20 19:11:19 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
File "/root/dao/prog/da_base.py", line 623, in run_task_function
getattr(self, run_task["function"])()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_base.py", line 553, in calc_optimum_met_debug
dacalc.calc_optimum()
~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/day_ahead.py", line 166, in calc_optimum
p_avg = sum(pl) / U # max(pl) #
~~~~~~~~^~~
ZeroDivisionError: division by zero
Traceback (most recent call last):
File "/root/dao/webserver/../prog/day_ahead.py", line 3967, in <module>
main()
~~~~^^
File "/root/dao/webserver/../prog/day_ahead.py", line 3941, in main
da_calc.run_task_function("calc_optimum_met_debug")
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/dao/prog/da_base.py", line 623, in run_task_function
getattr(self, run_task["function"])()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_base.py", line 553, in calc_optimum_met_debug
dacalc.calc_optimum()
~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/day_ahead.py", line 166, in calc_optimum
p_avg = sum(pl) / U # max(pl) #
~~~~~~~~^~~
ZeroDivisionError: division by zero
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f9daa2200>
++++++++++++++++++++++
wmc schreef op maandag 20 oktober 2025 @ 19:17:
Ik ben sinds vandaag ook begonnen met DAO, echter ik loop al vrij snel tegen een probleem aan. Ik heb de meteoserver werkend gerekegen, als ook de rapportage van day ahead prijzen. Als ik vervolgens met de default waardes op "Optimaliseringsberekening met debug" druk krijg ik onderstaande fout. Oftewel, ergens wordt door nul gedeeld met de default waardes. Wat doe ik fout?

+++++++++++++++++++++++++++++++++++++++++++++++++
Logging van bewerking "Optimaliseringsberekening met debug":
2025-10-20 19:11:19 info: Day Ahead Optimalisering versie: 2025.10.5
2025-10-20 19:11:19 info: Day Ahead Optimalisering gestart op: 20-10-2025 19:11:19
2025-10-20 19:11:19 info: Day Ahead Optimalisatie gestart: 20-10-2025 19:11:19 taak: calc_optimum_met_debug
2025-10-20 19:11:19 info: Debug = True
2025-10-20 19:11:19 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
File "/root/dao/prog/da_base.py", line 623, in run_task_function
getattr(self, run_task["function"])()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_base.py", line 553, in calc_optimum_met_debug
dacalc.calc_optimum()
~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/day_ahead.py", line 166, in calc_optimum
p_avg = sum(pl) / U # max(pl) #
~~~~~~~~^~~
ZeroDivisionError: division by zero
Traceback (most recent call last):
File "/root/dao/webserver/../prog/day_ahead.py", line 3967, in <module>
main()
~~~~^^
File "/root/dao/webserver/../prog/day_ahead.py", line 3941, in main
da_calc.run_task_function("calc_optimum_met_debug")
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/dao/prog/da_base.py", line 623, in run_task_function
getattr(self, run_task["function"])()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/da_base.py", line 553, in calc_optimum_met_debug
dacalc.calc_optimum()
~~~~~~~~~~~~~~~~~~~^^
File "/root/dao/prog/day_ahead.py", line 166, in calc_optimum
p_avg = sum(pl) / U # max(pl) #
~~~~~~~~^~~
ZeroDivisionError: division by zero
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f9daa2200>
++++++++++++++++++++++
Heb je de prijzen van vandaag en morgen opgehaald?
Voor vandaag: vul het "prijzen vanaf"-veld in met 2025-10-20 en klik op "prijzen ophalen"
Voor morgen: prijzen vanaf of blanco of 2025-10-21

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

CopyCatz schreef op maandag 20 oktober 2025 @ 16:18:
Ik snap niet helemaal hoe ik de reports moet instellen. Ik heb nu dit:

"report": {
"entities grid consumption": [
"sensor.shellypro3em_total_active_energy"
],
"entities grid production": [
"sensor.shellypro3em_total_active_returned_energy"
],
"entities solar production ac": [
"sensor.kwh_meter_total_energy_export"
],

Ik zie in het report bv verbruik, productie, netto:
15:00 0.185 0.342 -0.157

Het lijkt erop dat verbruik al verbruik minus opwek is (shellypro3em_total_active_returned_energy is alleen wat retour het net op gaat), en nu wordt nog een keer daar de productie van afgetrokken. Hoe los ik dit slim op? Of maak ik een denkfout?
Bij consumption alleen sensoren opgeven die het verbruik vanaf het net naar je meterkast registeren
Bij production alleen sensoren die registeren wat er vanaf je huis terug naar het net gaat.
Die data worden ook apart geregistreerd met je slimme meter. Als je die uitleest via de P1-poort (er zijn diverse integraties voor) en in HA aan sensoren koppelt heb je exact dezelfde data als je energieleverancier.
Als je dat allemaal al hebt en je hebt het energy-dashboard van HA geconfigureerd dan kun je diezelfde sensoren opgeven in DAO.

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

Deikke schreef op maandag 20 oktober 2025 @ 12:21:
@KC27 Volgens mij gaat er hier iets mis. Het lijkt erop dat de DC PV naar de accu zou moeten, gezien die is verdwenen in de geoptimaliseerde grafiek. Maar de SOC is een vlakke lijn.

[Afbeelding]
Er klopt iets niet. Heb je voor mij (liefs in quotes vanwege de lengte):
  • een kopie van je battery-settings
  • een kopie van de logging van de berekening (logging level "info")

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

itavero schreef op maandag 20 oktober 2025 @ 12:19:
Goede vraag, CopyCatz! Dat vroeg ik mij ook nog af. Een van mijn entiteiten had de verkeerde eenheid, waardoor die er een factor 1000 naast zat. 😅

Ik overweeg binnenkort over te stappen van Frank Energie naar een andere energieleverancier.
Momenteel twijfel ik tussen Tibber en Zonneplan.

Zonneplan biedt een "zonnebonus": 10% extra vergoeding voor teruglevering tussen zonsopkomst en zonsondergang.
Dit is momenteel nog niet te modelleren in DAO, toch?

De vergoedingen tussen beide leveranciers schelen elkaar niet zo veel. Overal is Zonneplan in mijn situatie waarschijnlijk iets goedkoper, maar Tibber heeft weer als voordeel dat een van onze EVs gekoppeld kan worden voor de "Grid Rewards".
Zie mijn reactie op @CopyCatz voor de "historie".
Ik ben bezig met de prijs-berekening flexibeler te maken. Je kunt dan daadwerkelijk de gekste formules invullen. Daarmee kunnen onze zuiderburen DAO beter gebruiken, maar ook de zonnebonus van Zonneplan kan dan worden geconfigureerd.
Ook voor gebruikers met een SAP kunnen dan losgaan met de "laagste" inkoopprijs" cq de "hoogste terugleverprijs".

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • wmc
  • Registratie: November 2012
  • Laatst online: 19:02

wmc

KC27 schreef op maandag 20 oktober 2025 @ 19:25:
[...]

Heb je de prijzen van vandaag en morgen opgehaald?
Voor vandaag: vul het "prijzen vanaf"-veld in met 2025-10-20 en klik op "prijzen ophalen"
Voor morgen: prijzen vanaf of blanco of 2025-10-21
Daar ging het blijkbaar fout, ik had vandaag wel, maar morgen niet. Dank voor de snelle hulp!

  • CopyCatz
  • Registratie: September 2000
  • Laatst online: 23:44
In de installatie handleiding staat “ In de documentatie verderop zul je nog een methode vinden waarmee je na ca 6 weken gebruik van het programma de baseload door het programma zelf kunt laten berekenenen en dan ook nog verschillend per dag van de week. “

dus ik nam aan dat daarvoor eerst historie moest worden opgebouwd :)

  • DaBit
  • Registratie: Januari 2000
  • Laatst online: 17:54
Schoonheidsfoutje?
code:
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
 2025-10-20 18:00:06 info: Day Ahead Optimalisering versie: 2025.10.5.rc6
2025-10-20 18:00:06 info: Day Ahead Optimalisering gestart op: 20-10-2025 18:00:06
2025-10-20 18:00:06 info: Day Ahead Optimalisatie gestart: 20-10-2025 18:00:06 taak: calc_optimum
..
..
2025-10-20 18:00:07 info: Instellingen voor laden van EV: boiler
2025-10-20 18:00:07 info: Direct laden is uit
2025-10-20 18:00:07 info:  Ampere  Effic. Grid kW Accu kW
2025-10-20 18:00:07 info:    0.00    1.00    0.00    0.00
2025-10-20 18:00:07 info:    4.00    0.93    0.92    0.86
2025-10-20 18:00:07 info:    5.00    0.93    1.15    1.07
2025-10-20 18:00:07 info:    6.00    0.95    1.38    1.31
2025-10-20 18:00:07 info:    7.00    0.97    1.61    1.56
2025-10-20 18:00:07 info:    8.00    0.99    1.84    1.82
2025-10-20 18:00:07 info:    9.00    0.99    2.07    2.05
2025-10-20 18:00:07 info:   10.00    0.99    2.30    2.28
2025-10-20 18:00:07 info: Capaciteit accu: 13.4 kWh
2025-10-20 18:00:07 info: Maximaal laadvermogen: 2.3 kW
2025-10-20 18:00:07 info: Klaar met laden op: 20-10-2025 18:00:00
2025-10-20 18:00:07 info: Huidig laadniveau: 18.5249996185303 %
2025-10-20 18:00:07 info: Gewenst laadniveau:70.0 %
2025-10-20 18:00:07 info: Marge voor het laden: 1 %
2025-10-20 18:00:07 info: Locatie: home
2025-10-20 18:00:07 info: Ingeplugged:False
2025-10-20 18:00:07 waarschuwing: Er is te weinig tijd om tot 70.0% te laden
2025-10-20 18:00:07 info: Bijgesteld gewenst laadniveau:17.5 %
2025-10-20 18:00:07 info: Benodigde netto energie: 0.000 kWh
2025-10-20 18:00:07 info: Tijd nodig om te laden: 0:0 uur
2025-10-20 18:00:07 info: Afgerond naar hele intervallen: 0 kwartier
2025-10-20 18:00:07 info: Stand laden schakelaar: on
2025-10-20 18:00:07 info: Stand aantal ampere laden: 10.0 A
2025-10-20 18:00:07 info: Opladen wordt niet ingepland, omdat werkelijk niveau (18.5%) hoger is of gelijk aan gewenst niveau (17.5% minus de marge 1%), auto is niet ingeplugd, opgegeven tijdstip (2025-10-20 18:00:00) is verouderd.
Ingeplugged:False, maar wel de waarschuwing dat er te weinig tijd is om tot 70.0% te laden. Maar dat hoeft dan ook niet...

[ Voor 6% gewijzigd door DaBit op 20-10-2025 22:19 ]

CopyCatz schreef op maandag 20 oktober 2025 @ 21:33:
In de installatie handleiding staat “ In de documentatie verderop zul je nog een methode vinden waarmee je na ca 6 weken gebruik van het programma de baseload door het programma zelf kunt laten berekenenen en dan ook nog verschillend per dag van de week. “

dus ik nam aan dat daarvoor eerst historie moest worden opgebouwd :)
Ik zal het aanpassen. 6 weken historie in Home Assistant volstaat.
Dank voor je opmerkzaamheid!

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer

DaBit schreef op maandag 20 oktober 2025 @ 22:19:
Schoonheidsfoutje?


[...]


Ingeplugged:False, maar wel de waarschuwing dat er te weinig tijd is om tot 70.0% te laden. Maar dat hoeft dan ook niet...
Klopt, was ook al door anderen gesignaleerd.
Volgende versie is dit opgelost!

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op dinsdag 14 oktober 2025 @ 12:50:
[...]

Het kan beide, maar het is wellicht slim om de boel te ontkoppelen met helpers en dan de waarden via een automatisering te actualiseren. Dan kun je de koppeling eenvoudig deactiveren door de automatisering uit te zetten.
Ik vind dit zelf ook het meest ingewikkelde. Ik ben een half jaar geleden met DAO begonnen en heb het nooit echt aan de gang gekregen. Ik krijg vaak errors en dan geef ik het na dagen weer op. Het lijkt me geweldige software maar het is voor mij echt te ingewikkeld.

Ik probeer zoveel mogelijk json voorbeelden uit dit topic te gebruiken van andere gebruikers die een Marstek hebben. Misschien heeft iemand zin om de helpers eens uit te leggen? Dit is voor mij het allerlastigst.

Automations is voor volgende week. Eerst correcte helpers denk ik?

Afbeeldingslocatie: https://tweakers.net/i/F1X-PGD1V2Yn8bwplilIlT_NujA=/800x/filters:strip_exif()/f/image/rH1fAXaAodNw5WXQqhP11GMj.png?f=fotoalbum_large
"entity min soc end opt": "input_number.dao_min_soc_einde_opt", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 100 als waarde
"entity max soc end opt": "input_number.dao_max_soc_einde_opt", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 100 als waarde
"entity set power feedin": "input_number.dao_set_power_feedin", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity set operating mode": "input_select.dao_set_operating_mode", >> Geen idee welke opties hier in moeten?
"entity stop inverter": "input_datetime.dao_stop_marstek", >> Ik heb een date/time helper aangemaakt met deze exacte naam
"entity balance switch": "input_boolean.dao_balance_grid", >> Alleen een switch aangemaakt met deze naam
"entity from battery": "input_number.dao_from_battery", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity from pv": "input_number.dao_marstek_from_pv", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity from ac": "input_number.dao_marstek_from_ac", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity calculated soc": "input_number.dao_marstek_calculated_soc", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 100 als waarde
Deze helpers heb ik aangemaakt op basis van de json van @Mirabis
code:
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
{
  "homeassistant": { },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.50,
    "regular low": 0.40,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "vat consumption": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat production": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
   "last invoice": "2022-09-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.33,
    0.33,
    0.32,
    0.32,
    0.31,
    0.33,
    0.33,
    0.34,
    0.33,
    0.35,
    0.35,
    0.33,
    0.31,
    0.33,
    0.33,
    0.33,
    0.33,
    0.33,
    0.33,
    0.33,
    0.32,
    0.31,
    0.31,
    0.31
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "True",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 8
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False",
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater present": "False",
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
"battery": [
    {
      "name": "Marstek Venus-E 5.12kWh",
      "capacity": 5.12,
      "lower limit": 11,
      "upper limit": 100,
      "optimal lower level": 11,
      "charge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 100.0,
          "efficiency": 0.36
        },
        {
          "power": 200.0,
          "efficiency": 0.8221
        },
        {
          "power": 400.0,
          "efficiency": 0.8673
        },
        {
          "power": 600.0,
          "efficiency": 0.8861
        },
        {
          "power": 800.0,
          "efficiency": 0.8975
        },
        {
          "power": 1000.0,
          "efficiency": 0.8933
        },
        {
          "power": 1500.0,
          "efficiency": 0.9015
        },
        {
          "power": 2000.0,
          "efficiency": 0.9010
        },
        {
          "power": 2500.0,
          "efficiency": 0.9017
        }
      ],
      "discharge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 100.0,
          "efficiency": 0.7907
        },
        {
          "power": 200.0,
          "efficiency": 0.8957
        },
        {
          "power": 400.0,
          "efficiency": 0.9581
        },
        {
          "power": 600.0,
          "efficiency": 0.9767
        },
        {
          "power": 800.0,
          "efficiency": 0.9812
        },
        {
          "power": 1000.0,
          "efficiency": 0.9890
        },
        {
          "power": 1500.0,
          "efficiency": 0.9907
        },
        {
          "power": 2000.0,
          "efficiency": 0.9841
        },
        {
          "power": 2500.0,
          "efficiency": 0.9928
        }
      ],
      "reduced hours": {},
      "dc_to_bat max power": 2500.0,
      "bat_to_dc max power": 2500.0,
      "dc_to_bat efficiency": 0.935,
      "bat_to_dc efficiency": 0.935,
      "cycle cost": 0.005,
      "minimum power": 400,
      "entity actual level": "sensor.lilygo_rs485_marstek_battery_state_of_charge",
      "entity min soc end opt": "input_number.dao_min_soc_einde_opt",
      "entity max soc end opt": "input_number.dao_max_soc_einde_opt",
      "entity set power feedin": "input_number.dao_set_power_feedin",
      "entity set operating mode": "input_select.dao_set_operating_mode",
      "entity stop inverter": "input_datetime.dao_stop_marstek",
      "entity balance switch": "input_boolean.dao_balance_grid",
      "entity from battery": "input_number.dao_from_battery",
      "entity from pv": "input_number.dao_marstek_from_pv",
      "entity from ac": "input_number.dao_marstek_from_ac",
      "entity calculated soc": "input_number.dao_marstek_calculated_soc",
      "solar": []
    }
  ],


  "solar": [
    { "name" : "Oost West",
      "entity pv switch": "input_boolean.oost_west_turn_inverter_on_off",
      "strings": [
        {
        "tilt": 45,
        "orientation": -135,
        "capacity": 0.43,
        "yield": 0.00624
        },
        {
        "tilt": 45,
        "orientation": -135,
        "capacity": 0.43,
        "yield": 0.00624
        },
        {
        "tilt": 45,
        "orientation": 45,
        "capacity": 0.43,
        "yield": 0.00624
        },
        {
        "tilt": 45,
        "orientation": 45,
        "capacity": 0.43,
        "yield": 0.00624
        }
      ]
    },
    {
      "name": "Zuid paneel",
      "entity pv switch": "input_boolean.zuid_paneel_on_off",
      "tilt": 60,
      "orientation": -45,
      "capacity": 0.43,
      "yield": 0.00624
    },
    {
      "name": "Schuine dak",
      "entity pv switch": "input_boolean.schuin_dak_on_off",
      "tilt": 45,
      "orientation": 45,
      "capacity": 0.50,
      "yield": 0.00798
    }
     
  ],
  "electric vehicle": [ ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.electricity_meter_energieverbruik_tarief_1",
      "sensor.electricity_meter_energieverbruik_tarief_2"
    ],
    "entities grid production": [
      "sensor.electricity_meter_energieproductie_tarief_1",
      "sensor.electricity_meter_energieproductie_tarief_2"
    ],
    "entities solar production ac": [
      "sensor.hms_2000_4t_yieldtotal",
      "sensor.zuid_paneel_yieldtotal",
      "sensor.schuine_dak_yieldtotal"
    ],
    "entities battery consumption": ["sensor.lilygo_rs485_marstek_total_charging_energy"],
    "entities battery production": ["sensor.lilygo_rs485_marstek_total_discharging_energy"]
  },
  "scheduler": {
    "active": "True",
    "0430": "get_meteo_data",
    "1030": "get_meteo_data",
    "1630": "get_meteo_data",
    "2230": "get_meteo_data",
    "1255": "get_day_ahead_prices",
    "1355": "get_day_ahead_prices",
    "1455": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1655": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "2359": "clean_data"
  }
}
Daarna krijg ik nog een rits aan errors:
code:
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
2025-10-21 02:02:38 info: Day Ahead Optimalisering versie: 2025.10.5.rc6
2025-10-21 02:02:38 info: Day Ahead Optimalisering gestart op: 21-10-2025 02:02:38
2025-10-21 02:02:38 info: Day Ahead Optimalisatie gestart: 21-10-2025 02:02:38 taak: calc_optimum
2025-10-21 02:02:38 info: Debug = False
2025-10-21 02:02:38 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-21 02:02:38 info: Baseload uit instellingen
2025-10-21 02:02:38 info: Start waarden: 
      uur                tijd   p_l   p_t  base  pv_ac  pv_dc
0   02:00 2025-10-21 02:00:00 0.180 0.180 0.320  0.000      0
1   03:00 2025-10-21 03:00:00 0.168 0.168 0.320  0.000      0
2   04:00 2025-10-21 04:00:00 0.173 0.173 0.310  0.000      0
3   05:00 2025-10-21 05:00:00 0.195 0.195 0.330  0.000      0
4   06:00 2025-10-21 06:00:00 0.230 0.230 0.330  0.000      0
5   07:00 2025-10-21 07:00:00 0.245 0.245 0.340  0.000      0
6   08:00 2025-10-21 08:00:00 0.260 0.260 0.330  0.039      0
7   09:00 2025-10-21 09:00:00 0.253 0.253 0.350  0.157      0
8   10:00 2025-10-21 10:00:00 0.238 0.238 0.350  0.948      0
9   11:00 2025-10-21 11:00:00 0.226 0.226 0.330  0.733      0
10  12:00 2025-10-21 12:00:00 0.205 0.205 0.310  2.505      0
11  13:00 2025-10-21 13:00:00 0.184 0.184 0.330  0.578      0
12  14:00 2025-10-21 14:00:00 0.186 0.186 0.330  4.863      0
13  15:00 2025-10-21 15:00:00 0.215 0.215 0.330  3.272      0
14  16:00 2025-10-21 16:00:00 0.230 0.230 0.330  1.981      0
15  17:00 2025-10-21 17:00:00 0.265 0.265 0.330  0.536      0
16  18:00 2025-10-21 18:00:00 0.292 0.292 0.330  0.000      0
17  19:00 2025-10-21 19:00:00 0.289 0.289 0.330  0.000      0
18  20:00 2025-10-21 20:00:00 0.269 0.269 0.320  0.000      0
19  21:00 2025-10-21 21:00:00 0.245 0.245 0.310  0.000      0
20  22:00 2025-10-21 22:00:00 0.245 0.245 0.310  0.000      0
21  23:00 2025-10-21 23:00:00 0.236 0.236 0.310  0.000      0
2025-10-21 02:02:39 info: No reduced hours applied for Marstek Venus-E 5.12kWh
2025-10-21 02:02:39 info: Startwaarde SoC Marstek Venus-E 5.12kWh: 27.0%

2025-10-21 02:02:39 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-10-21 02:02:39 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland

2025-10-21 02:02:39 info: Strategie: minimale kosten
2025-10-21 02:02:39 info: Maximale fout (maximal gap): 0.005000 euro
2025-10-21 02:02:39 info: Rekentijd: 0.13  sec
2025-10-21 02:02:39 info: Het programma heeft een optimale oplossing gevonden.
2025-10-21 02:02:39 info: In- en uitgaande energie per uur batterij Marstek Venus-E 5.12kWh
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
 02:00   0.00     --   0.00   0.00   0.00     --   0.00     --  27.00
 03:00   2.50  90.17   2.25   0.00   2.25  93.50   2.11  84.31  68.17
 04:00   1.93  90.11   1.74   0.00   1.74  93.50   1.63  84.25 100.00
 05:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 06:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 07:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 08:00  -2.48  99.28  -2.50   0.00  -2.50  93.50  -2.67  92.83  47.78
 09:00  -1.43  99.07  -1.44   0.00  -1.44  93.50  -1.54  92.63  17.67
 10:00   0.00     --   0.00   0.00   0.00     --   0.00     --  17.67
 11:00   0.00     --   0.00   0.00   0.00     --   0.00     --  17.67
 12:00   0.00     --   0.00   0.00   0.00     --   0.00     --  17.67
 13:00   2.50  90.17   2.25   0.00   2.25  93.50   2.11  84.31  58.83
 14:00   2.50  90.17   2.25   0.00   2.25  93.50   2.11  84.31 100.00
 15:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 17:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 18:00  -2.18  99.28  -2.20   0.00  -2.20  93.50  -2.35  92.83  54.08
 19:00  -2.00  99.28  -2.01   0.00  -2.01  93.50  -2.15  92.83  12.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
Totaal   1.34     --   0.35   0.00   0.35     --  -0.77     --       
2025-10-21 02:02:40 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 02:00    0.00     0.00   0.31   0.00   0.32   0.00   0.00   0.00   0.00   0.06   -0.00  20.00
 03:00    2.50     0.00   2.82   0.00   0.32   0.00   0.00   0.00   0.00   0.47   -0.00  20.00
 04:00    1.93     0.00   2.24   0.00   0.31   0.00   0.00   0.00   0.00   0.39   -0.00  20.00
 05:00    0.00     0.00   0.33   0.00   0.33   0.00   0.00   0.00   0.00   0.06   -0.00  20.00
 06:00    0.00     0.00   0.33   0.00   0.33   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 07:00    0.00     0.00   0.34   0.00   0.34   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 08:00    0.00     2.48   0.00   2.19   0.33   0.00   0.00   0.00   0.04   0.00   -0.57  20.00
 09:00    0.00     1.43   0.00   1.23   0.35   0.00   0.00   0.00   0.16   0.00   -0.31  20.00
 10:00    0.00     0.00   0.00   0.60   0.35   0.00   0.00   0.00   0.95   0.00   -0.14  20.00
 11:00    0.00     0.00   0.00   0.40   0.33   0.00   0.00   0.00   0.73   0.00   -0.09  20.00
 12:00    0.00     0.00   0.00   2.19   0.31   0.00   0.00   0.00   2.50   0.00   -0.45  20.00
 13:00    2.50     0.00   2.25   0.00   0.33   0.00   0.00   0.00   0.58   0.42   -0.00  20.00
 14:00    2.50     0.00   0.00   2.03   0.33   0.00   0.00   0.00   4.86   0.00   -0.38  20.00
 15:00    0.00     0.00   0.00   2.94   0.33   0.00   0.00   0.00   3.27   0.00   -0.63  20.00
 16:00    0.00     0.00   0.00   1.65   0.33   0.00   0.00   0.00   1.98   0.00   -0.38  20.00
 17:00    0.00     0.00   0.00   0.21   0.33   0.00   0.00   0.00   0.54   0.00   -0.05  20.00
 18:00    0.00     2.18   0.00   1.85   0.33   0.00   0.00   0.00   0.00   0.00   -0.54  20.00
 19:00    0.00     2.00   0.00   1.67   0.33   0.00   0.00   0.00   0.00   0.00   -0.48  20.00
 20:00    0.00     0.00   0.32   0.00   0.32   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 21:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 22:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 23:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.07   -0.00  20.00
Totaal    9.43     8.09   9.87  16.97   7.18   0.00   0.00   0.00  15.61   1.87   -4.03       

2025-10-21 02:02:40 info: Consumption               9.87 (kWh)
2025-10-21 02:02:40 info: Cost consumption          1.87 (€)
2025-10-21 02:02:40 info: Tariff consumption        0.189 (€/kWh)
2025-10-21 02:02:40 info: Production               16.97 (kWh)
2025-10-21 02:02:40 info: Profit production        -4.03 (€)
2025-10-21 02:02:40 info: Tariff production         0.238 (€/kWh)

2025-10-21 02:02:40 info: 
Calculation profit after optimize in €
Cost before optimize              -1.62
Cost consumption      1.87
Profit production    -4.03
Cycle cost            0.08
Battery storage       0.16
Boiler storage        0.00
Total                -1.93
Cost after optimize              -1.93
Profit:                           0.30
2025-10-21 02:02:40 info: Doorzetten van alle settings naar HA
2025-10-21 02:02:40 info: Grid set point: 320.0 W
2025-10-21 02:02:40 info: Cycle cost Marstek Venus-E 5.12kWh: 0.08 euro
2025-10-21 02:02:40 fout: File: /root/dao/webserver/../prog/day_ahead.py, line 3967, in <module>
2025-10-21 02:02:40 fout: File: /root/dao/webserver/../prog/day_ahead.py, line 3943, in main
2025-10-21 02:02:40 fout: File: /root/dao/prog/da_base.py, line 623, in run_task_function
2025-10-21 02:02:40 fout: File: /root/dao/webserver/../prog/day_ahead.py, line 3304, in calc_optimum
2025-10-21 02:02:40 fout: File: /root/dao/prog/da_base.py, line 476, in set_entity_option
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py, line 49, in select_option
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py, line 28, in call_service
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py, line 68, in _post
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py, line 90, in _process_response
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py, line 95, in _raise_error
2025-10-21 02:02:40 fout: Onverwachte fout: 500 status code returned from http://supervisor/core/api/services/input_select/select_option
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 3095, in calc_optimum
    self.set_entity_option(
    ~~~~~~~~~~~~~~~~~~~~~~^
        "entity set operating mode", self.battery_options[b], new_state
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/prog/da_base.py", line 476, in set_entity_option
    self.select_option(entity_id, value)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py", line 49, in select_option
    return self.call_service("select_option", entity_id=entity_id, option=option)
           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py", line 28, in call_service
    self._post(
    ~~~~~~~~~~^
        endpoint=f"/services/{domain}/{service}",
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        entity_id=entity_id,
        ^^^^^^^^^^^^^^^^^^^^
        **kwargs,  # type: ignore
        ^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 68, in _post
    return self._process_response(
           ~~~~~~~~~~~~~~~~~~~~~~^
        requests.post(
        ^^^^^^^^^^^^^^
    ...<5 lines>...
        )
        ^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 90, in _process_response
    self._raise_error(response.status_code, response.url)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 95, in _raise_error
    raise error(f"{status_code} status code returned from {url}",)  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hassapi.exceptions.InternalServerError: 500 status code returned from http://supervisor/core/api/services/input_select/select_option
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f5b9ae589a0>
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f5b9bae2c50>
Ook al wil ik het bijna opgeven. Er gaat ook veel goed ;) Alleen haal ik echt geen 4kWh uit mijn zonnepanelen
Afbeeldingslocatie: https://tweakers.net/i/FV3OmNUHan_KrxBRKgZw0_lA110=/x800/filters:strip_exif()/f/image/0nVf6iDL3feNsjbhIX4gFnd8.png?f=fotoalbum_large

[ Voor 145% gewijzigd door Animal op 21-10-2025 12:26 ]


  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op dinsdag 21 oktober 2025 @ 01:27:
[...]

Ik vind dit zelf ook het meest ingewikkelde. Ik ben een half jaar geleden met DAO begonnen en heb het nooit echt aan de gang gekregen. Ik krijg vaak errors en dan geef ik het na dagen weer op. Het lijkt me geweldige software maar het is voor mij echt te ingewikkeld.

Ik probeer zoveel mogelijk json voorbeelden uit dit topic te gebruiken van andere gebruikers die een Marstek hebben. Misschien heeft iemand zin om de helpers eens uit te leggen? Dit is voor mij het allerlastigst.

Automations is voor volgende week. Eerst correcte helpers denk ik?

[Afbeelding]

"entity min soc end opt": "input_number.dao_min_soc_einde_opt", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 100 als waarde
"entity max soc end opt": "input_number.dao_max_soc_einde_opt", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 100 als waarde
"entity set power feedin": "input_number.dao_set_power_feedin", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity set operating mode": "input_select.dao_set_operating_mode", >> Geen idee welke opties hier in moeten?
"entity stop inverter": "input_datetime.dao_stop_marstek", >> Ik heb een date/time helper aangemaakt met deze exacte naam
"entity balance switch": "input_boolean.dao_balance_grid", >> Alleen een switch aangemaakt met deze naam
"entity from battery": "input_number.dao_from_battery", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity from pv": "input_number.dao_marstek_from_pv", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity from ac": "input_number.dao_marstek_from_ac", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 2500 als waarde
"entity calculated soc": "input_number.dao_marstek_calculated_soc", >> Ik heb voor nu gewoon een input number aangemaakt met minimaal 0 en maximaal 100 als waarde


Deze helpers heb ik aangemaakt op basis van de json van @Mirabis

code:
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
{
  "homeassistant": { },
  "database ha": {
    "engine": "sqlite",
    "database": "home-assistant_v2.db",
    "db_path": "/homeassistant"
  },
  "database da": {
    "engine": "sqlite",
    "db_path": "../data"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.50,
    "regular low": 0.40,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.10880,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "vat consumption": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat production": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
   "last invoice": "2022-09-01",
    "tax refund": "True"
  },
  "logging level" : "info",
  "use_calc_baseload": "False",
  "baseload calc periode": 56,
  "baseload": [
    0.33,
    0.33,
    0.32,
    0.32,
    0.31,
    0.33,
    0.33,
    0.34,
    0.33,
    0.35,
    0.35,
    0.33,
    0.31,
    0.33,
    0.33,
    0.33,
    0.33,
    0.33,
    0.33,
    0.33,
    0.32,
    0.31,
    0.31,
    0.31
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show" : "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "True",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 8
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False",
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater present": "False",
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
"battery": [
    {
      "name": "Marstek Venus-E 5.12kWh",
      "capacity": 5.12,
      "lower limit": 11,
      "upper limit": 100,
      "optimal lower level": 11,
      "charge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 100.0,
          "efficiency": 0.36
        },
        {
          "power": 200.0,
          "efficiency": 0.8221
        },
        {
          "power": 400.0,
          "efficiency": 0.8673
        },
        {
          "power": 600.0,
          "efficiency": 0.8861
        },
        {
          "power": 800.0,
          "efficiency": 0.8975
        },
        {
          "power": 1000.0,
          "efficiency": 0.8933
        },
        {
          "power": 1500.0,
          "efficiency": 0.9015
        },
        {
          "power": 2000.0,
          "efficiency": 0.9010
        },
        {
          "power": 2500.0,
          "efficiency": 0.9017
        }
      ],
      "discharge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 100.0,
          "efficiency": 0.7907
        },
        {
          "power": 200.0,
          "efficiency": 0.8957
        },
        {
          "power": 400.0,
          "efficiency": 0.9581
        },
        {
          "power": 600.0,
          "efficiency": 0.9767
        },
        {
          "power": 800.0,
          "efficiency": 0.9812
        },
        {
          "power": 1000.0,
          "efficiency": 0.9890
        },
        {
          "power": 1500.0,
          "efficiency": 0.9907
        },
        {
          "power": 2000.0,
          "efficiency": 0.9841
        },
        {
          "power": 2500.0,
          "efficiency": 0.9928
        }
      ],
      "reduced hours": {},
      "dc_to_bat max power": 2500.0,
      "bat_to_dc max power": 2500.0,
      "dc_to_bat efficiency": 0.935,
      "bat_to_dc efficiency": 0.935,
      "cycle cost": 0.005,
      "minimum power": 400,
      "entity actual level": "sensor.lilygo_rs485_marstek_battery_state_of_charge",
      "entity min soc end opt": "input_number.dao_min_soc_einde_opt",
      "entity max soc end opt": "input_number.dao_max_soc_einde_opt",
      "entity set power feedin": "input_number.dao_set_power_feedin",
      "entity set operating mode": "input_select.dao_set_operating_mode",
      "entity stop inverter": "input_datetime.dao_stop_marstek",
      "entity balance switch": "input_boolean.dao_balance_grid",
      "entity from battery": "input_number.dao_from_battery",
      "entity from pv": "input_number.dao_marstek_from_pv",
      "entity from ac": "input_number.dao_marstek_from_ac",
      "entity calculated soc": "input_number.dao_marstek_calculated_soc",
      "solar": []
    }
  ],


  "solar": [
    { "name" : "Oost West",
      "entity pv switch": "input_boolean.oost_west_turn_inverter_on_off",
      "strings": [
        {
        "tilt": 45,
        "orientation": -135,
        "capacity": 0.43,
        "yield": 0.00624
        },
        {
        "tilt": 45,
        "orientation": -135,
        "capacity": 0.43,
        "yield": 0.00624
        },
        {
        "tilt": 45,
        "orientation": 45,
        "capacity": 0.43,
        "yield": 0.00624
        },
        {
        "tilt": 45,
        "orientation": 45,
        "capacity": 0.43,
        "yield": 0.00624
        }
      ]
    },
    {
      "name": "Zuid paneel",
      "entity pv switch": "input_boolean.zuid_paneel_on_off",
      "tilt": 60,
      "orientation": -45,
      "capacity": 0.43,
      "yield": 0.00624
    },
    {
      "name": "Schuine dak",
      "entity pv switch": "input_boolean.schuin_dak_on_off",
      "tilt": 45,
      "orientation": 45,
      "capacity": 0.50,
      "yield": 0.00798
    }
     
  ],
  "electric vehicle": [ ],
  "machines" : [ ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.electricity_meter_energieverbruik_tarief_1",
      "sensor.electricity_meter_energieverbruik_tarief_2"
    ],
    "entities grid production": [
      "sensor.electricity_meter_energieproductie_tarief_1",
      "sensor.electricity_meter_energieproductie_tarief_2"
    ],
    "entities solar production ac": [
      "sensor.hms_2000_4t_yieldtotal",
      "sensor.zuid_paneel_yieldtotal",
      "sensor.schuine_dak_yieldtotal"
    ],
    "entities battery consumption": ["sensor.lilygo_rs485_marstek_total_charging_energy"],
    "entities battery production": ["sensor.lilygo_rs485_marstek_total_discharging_energy"]
  },
  "scheduler": {
    "active": "True",
    "0430": "get_meteo_data",
    "1030": "get_meteo_data",
    "1630": "get_meteo_data",
    "2230": "get_meteo_data",
    "1255": "get_day_ahead_prices",
    "1355": "get_day_ahead_prices",
    "1455": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1655": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "2359": "clean_data"
  }
}


Daarna krijg ik nog een rits aan errors:

code:
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
2025-10-21 02:02:38 info: Day Ahead Optimalisering versie: 2025.10.5.rc6
2025-10-21 02:02:38 info: Day Ahead Optimalisering gestart op: 21-10-2025 02:02:38
2025-10-21 02:02:38 info: Day Ahead Optimalisatie gestart: 21-10-2025 02:02:38 taak: calc_optimum
2025-10-21 02:02:38 info: Debug = False
2025-10-21 02:02:38 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-21 02:02:38 info: Baseload uit instellingen
2025-10-21 02:02:38 info: Start waarden: 
      uur                tijd   p_l   p_t  base  pv_ac  pv_dc
0   02:00 2025-10-21 02:00:00 0.180 0.180 0.320  0.000      0
1   03:00 2025-10-21 03:00:00 0.168 0.168 0.320  0.000      0
2   04:00 2025-10-21 04:00:00 0.173 0.173 0.310  0.000      0
3   05:00 2025-10-21 05:00:00 0.195 0.195 0.330  0.000      0
4   06:00 2025-10-21 06:00:00 0.230 0.230 0.330  0.000      0
5   07:00 2025-10-21 07:00:00 0.245 0.245 0.340  0.000      0
6   08:00 2025-10-21 08:00:00 0.260 0.260 0.330  0.039      0
7   09:00 2025-10-21 09:00:00 0.253 0.253 0.350  0.157      0
8   10:00 2025-10-21 10:00:00 0.238 0.238 0.350  0.948      0
9   11:00 2025-10-21 11:00:00 0.226 0.226 0.330  0.733      0
10  12:00 2025-10-21 12:00:00 0.205 0.205 0.310  2.505      0
11  13:00 2025-10-21 13:00:00 0.184 0.184 0.330  0.578      0
12  14:00 2025-10-21 14:00:00 0.186 0.186 0.330  4.863      0
13  15:00 2025-10-21 15:00:00 0.215 0.215 0.330  3.272      0
14  16:00 2025-10-21 16:00:00 0.230 0.230 0.330  1.981      0
15  17:00 2025-10-21 17:00:00 0.265 0.265 0.330  0.536      0
16  18:00 2025-10-21 18:00:00 0.292 0.292 0.330  0.000      0
17  19:00 2025-10-21 19:00:00 0.289 0.289 0.330  0.000      0
18  20:00 2025-10-21 20:00:00 0.269 0.269 0.320  0.000      0
19  21:00 2025-10-21 21:00:00 0.245 0.245 0.310  0.000      0
20  22:00 2025-10-21 22:00:00 0.245 0.245 0.310  0.000      0
21  23:00 2025-10-21 23:00:00 0.236 0.236 0.310  0.000      0
2025-10-21 02:02:39 info: No reduced hours applied for Marstek Venus-E 5.12kWh
2025-10-21 02:02:39 info: Startwaarde SoC Marstek Venus-E 5.12kWh: 27.0%

2025-10-21 02:02:39 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-10-21 02:02:39 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland

2025-10-21 02:02:39 info: Strategie: minimale kosten
2025-10-21 02:02:39 info: Maximale fout (maximal gap): 0.005000 euro
2025-10-21 02:02:39 info: Rekentijd: 0.13  sec
2025-10-21 02:02:39 info: Het programma heeft een optimale oplossing gevonden.
2025-10-21 02:02:39 info: In- en uitgaande energie per uur batterij Marstek Venus-E 5.12kWh
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
 02:00   0.00     --   0.00   0.00   0.00     --   0.00     --  27.00
 03:00   2.50  90.17   2.25   0.00   2.25  93.50   2.11  84.31  68.17
 04:00   1.93  90.11   1.74   0.00   1.74  93.50   1.63  84.25 100.00
 05:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 06:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 07:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 08:00  -2.48  99.28  -2.50   0.00  -2.50  93.50  -2.67  92.83  47.78
 09:00  -1.43  99.07  -1.44   0.00  -1.44  93.50  -1.54  92.63  17.67
 10:00   0.00     --   0.00   0.00   0.00     --   0.00     --  17.67
 11:00   0.00     --   0.00   0.00   0.00     --   0.00     --  17.67
 12:00   0.00     --   0.00   0.00   0.00     --   0.00     --  17.67
 13:00   2.50  90.17   2.25   0.00   2.25  93.50   2.11  84.31  58.83
 14:00   2.50  90.17   2.25   0.00   2.25  93.50   2.11  84.31 100.00
 15:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 17:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 18:00  -2.18  99.28  -2.20   0.00  -2.20  93.50  -2.35  92.83  54.08
 19:00  -2.00  99.28  -2.01   0.00  -2.01  93.50  -2.15  92.83  12.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
Totaal   1.34     --   0.35   0.00   0.35     --  -0.77     --       
2025-10-21 02:02:40 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 02:00    0.00     0.00   0.31   0.00   0.32   0.00   0.00   0.00   0.00   0.06   -0.00  20.00
 03:00    2.50     0.00   2.82   0.00   0.32   0.00   0.00   0.00   0.00   0.47   -0.00  20.00
 04:00    1.93     0.00   2.24   0.00   0.31   0.00   0.00   0.00   0.00   0.39   -0.00  20.00
 05:00    0.00     0.00   0.33   0.00   0.33   0.00   0.00   0.00   0.00   0.06   -0.00  20.00
 06:00    0.00     0.00   0.33   0.00   0.33   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 07:00    0.00     0.00   0.34   0.00   0.34   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 08:00    0.00     2.48   0.00   2.19   0.33   0.00   0.00   0.00   0.04   0.00   -0.57  20.00
 09:00    0.00     1.43   0.00   1.23   0.35   0.00   0.00   0.00   0.16   0.00   -0.31  20.00
 10:00    0.00     0.00   0.00   0.60   0.35   0.00   0.00   0.00   0.95   0.00   -0.14  20.00
 11:00    0.00     0.00   0.00   0.40   0.33   0.00   0.00   0.00   0.73   0.00   -0.09  20.00
 12:00    0.00     0.00   0.00   2.19   0.31   0.00   0.00   0.00   2.50   0.00   -0.45  20.00
 13:00    2.50     0.00   2.25   0.00   0.33   0.00   0.00   0.00   0.58   0.42   -0.00  20.00
 14:00    2.50     0.00   0.00   2.03   0.33   0.00   0.00   0.00   4.86   0.00   -0.38  20.00
 15:00    0.00     0.00   0.00   2.94   0.33   0.00   0.00   0.00   3.27   0.00   -0.63  20.00
 16:00    0.00     0.00   0.00   1.65   0.33   0.00   0.00   0.00   1.98   0.00   -0.38  20.00
 17:00    0.00     0.00   0.00   0.21   0.33   0.00   0.00   0.00   0.54   0.00   -0.05  20.00
 18:00    0.00     2.18   0.00   1.85   0.33   0.00   0.00   0.00   0.00   0.00   -0.54  20.00
 19:00    0.00     2.00   0.00   1.67   0.33   0.00   0.00   0.00   0.00   0.00   -0.48  20.00
 20:00    0.00     0.00   0.32   0.00   0.32   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 21:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 22:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 23:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.07   -0.00  20.00
Totaal    9.43     8.09   9.87  16.97   7.18   0.00   0.00   0.00  15.61   1.87   -4.03       

2025-10-21 02:02:40 info: Consumption               9.87 (kWh)
2025-10-21 02:02:40 info: Cost consumption          1.87 (€)
2025-10-21 02:02:40 info: Tariff consumption        0.189 (€/kWh)
2025-10-21 02:02:40 info: Production               16.97 (kWh)
2025-10-21 02:02:40 info: Profit production        -4.03 (€)
2025-10-21 02:02:40 info: Tariff production         0.238 (€/kWh)

2025-10-21 02:02:40 info: 
Calculation profit after optimize in €
Cost before optimize              -1.62
Cost consumption      1.87
Profit production    -4.03
Cycle cost            0.08
Battery storage       0.16
Boiler storage        0.00
Total                -1.93
Cost after optimize              -1.93
Profit:                           0.30
2025-10-21 02:02:40 info: Doorzetten van alle settings naar HA
2025-10-21 02:02:40 info: Grid set point: 320.0 W
2025-10-21 02:02:40 info: Cycle cost Marstek Venus-E 5.12kWh: 0.08 euro
2025-10-21 02:02:40 fout: File: /root/dao/webserver/../prog/day_ahead.py, line 3967, in <module>
2025-10-21 02:02:40 fout: File: /root/dao/webserver/../prog/day_ahead.py, line 3943, in main
2025-10-21 02:02:40 fout: File: /root/dao/prog/da_base.py, line 623, in run_task_function
2025-10-21 02:02:40 fout: File: /root/dao/webserver/../prog/day_ahead.py, line 3304, in calc_optimum
2025-10-21 02:02:40 fout: File: /root/dao/prog/da_base.py, line 476, in set_entity_option
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py, line 49, in select_option
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py, line 28, in call_service
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py, line 68, in _post
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py, line 90, in _process_response
2025-10-21 02:02:40 fout: File: /root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py, line 95, in _raise_error
2025-10-21 02:02:40 fout: Onverwachte fout: 500 status code returned from http://supervisor/core/api/services/input_select/select_option
Traceback (most recent call last):
  File "/root/dao/webserver/../prog/day_ahead.py", line 3095, in calc_optimum
    self.set_entity_option(
    ~~~~~~~~~~~~~~~~~~~~~~^
        "entity set operating mode", self.battery_options[b], new_state
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/prog/da_base.py", line 476, in set_entity_option
    self.select_option(entity_id, value)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py", line 49, in select_option
    return self.call_service("select_option", entity_id=entity_id, option=option)
           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/services.py", line 28, in call_service
    self._post(
    ~~~~~~~~~~^
        endpoint=f"/services/{domain}/{service}",
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        entity_id=entity_id,
        ^^^^^^^^^^^^^^^^^^^^
        **kwargs,  # type: ignore
        ^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 68, in _post
    return self._process_response(
           ~~~~~~~~~~~~~~~~~~~~~~^
        requests.post(
        ^^^^^^^^^^^^^^
    ...<5 lines>...
        )
        ^
    )
    ^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 90, in _process_response
    self._raise_error(response.status_code, response.url)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/hassapi/client/base.py", line 95, in _raise_error
    raise error(f"{status_code} status code returned from {url}",)  # type: ignore
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
hassapi.exceptions.InternalServerError: 500 status code returned from http://supervisor/core/api/services/input_select/select_option
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f5b9ae589a0>
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f5b9bae2c50>


Ook al wil ik het bijna opgeven. Er gaat ook veel goed ;) Alleen haal ik echt geen 4kWh uit mijn zonnepanelen
[Afbeelding]
Hoi @Animal we komen hier vast wel uit. Je bent al een heel eind, dus geef de moed niet op :). Zou je ten eerste je post willen aanpassen en de code blokken ook nog tussen een quote blok willen opnemen? Dat scheelt de toevallige voorbijganger een hoop gescroll op het scherm ;)

Je hebt geluk, de instellingen voor zonnepanelen en battery heb ik al uitgebreid beschreven in de wiki van DAO heb je daar ook naar gekeken?
De “rits aan foutmeldingen” is maar één foutmelding en is op “entity set operating mode”, degene waar jij geen idee hebt wat je moet invullen. In de wiki staat: “ Optioneel. Entiteit in HA waarmee je de omvormer aan/uit zet. Type "input_select" met minimaal opties "Aan" en "Uit". Hiermee kun je een automatisering triggeren die de benodigde acties uitvoert.”.
Deze entiteit is optioneel, dus als je hem niet nodig hebt, lekker weg laten, anders vullen met keuzes “Aan” en “Uit”.
De hoge pv opwek komt waarschijnlijk door een te hoge yield. Reken die nog eens goed na (staat ook duidelijk in de wiki). 5x een zelfde yield voor oost, west en zuid is sowieso verdacht. Heb je ook bewust de strings op Oost en West er 2 x in staan? Tip is om zoveel mogelijk gelijke dingen samen te voegen, dat scheelt DAO rekentijd. Dus die 2 op Oost samenvoegen en die 2 op West ook.

  • Deikke
  • Registratie: Juni 2004
  • Laatst online: 07-12 06:54
KC27 schreef op maandag 20 oktober 2025 @ 19:35:
[...]

Er klopt iets niet. Heb je voor mij (liefs in quotes vanwege de lengte):
  • een kopie van je battery-settings
  • een kopie van de logging van de berekening (logging level "info")
config:

code:
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
{
  "homeassistant": {
  },
  "database ha": {
    "engine": "postgresql",
    "server": "77b2833f-timescaledb",
    "port": 5432,
    "database": "homeassistant",
    "username": "dao",
    "password": "!secret db_ha_password"
  },
  "database da": {
    "engine": "postgresql",
    "server": "77b2833f-timescaledb",
    "port": 5432,
    "database": "dao",
    "username": "dao",
    "password": "!secret db_da_password"
  },
  "meteoserver-key": "!secret meteoserver-key",
  "prices": {
    "source day ahead": "nordpool",
    "regular high": 0.5,
    "regular low": 0.4,
    "switch to low": 23,
    "energy taxes consumption": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "energy taxes production": {
      "2022-01-01": 0.06729,
      "2023-01-01": 0.12599,
      "2024-01-01": 0.1088,
      "2025-01-01": 0.10154
    },
    "cost supplier consumption": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "cost supplier production": {
      "2022-01-01": 0.002,
      "2023-03-01": 0.018,
      "2024-04-01": 0.0175,
      "2024-08-01": 0.020496
    },
    "vat consumption": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "vat production": {
      "2022-01-01": 21,
      "2022-07-01": 9,
      "2023-01-01": 21
    },
    "last invoice": "2025-09-01",
    "tax refund": "True"
  },
  "interval": "15min",
  "logging level": "info",
  "use_calc_baseload": "True",
  "baseload calc periode": 14,
  "baseload": [
    0.14,
    0.38,
    0.26,
    0.42,
    0.15,
    0.12,
    0.13,
    0.15,
    0.23,
    0.26,
    0.31,
    0.32,
    0.31,
    0.23,
    0.26,
    0.21,
    0.21,
    0.54,
    0.26,
    0.26,
    0.22,
    0.19,
    0.18,
    0.16
  ],
  "graphical backend": "",
  "graphics": {
    "style": "Solarize_Light2",
    "show": "true",
    "battery balance": "True",
    "prices consumption": "True",
    "prices production": "False",
    "prices spot": "True",
    "average consumption": "True"
  },
  "strategy": "minimize cost",
  "notifications": {
  },
  "grid": {
    "max_power": 17
  },
  "history": {
    "save days": 7
  },
  "dashboard": {
    "port": 5000
  },
  "boiler": {
    "boiler present": "False",
    "entity actual temp.": "sensor.boiler_gemeten",
    "entity setpoint": "sensor.boiler_ingesteld",
    "entity hysterese": "sensor.hysterese_hot_water",
    "cop": 2.9,
    "cooling rate": 0.4,
    "volume": 180,
    "heating allowed below": 44,
    "elec. power": 1500,
    "activate service": "press",
    "activate entity": "input_button.hw_trigger"
  },
  "heating": {
    "heater present": "False",
    "degree days factor": 3.6,
    "stages": [
      {
        "max_power": 225,
        "cop": 7.1
      },
      {
        "max_power": 300,
        "cop": 7.0
      },
      {
        "max_power": 400,
        "cop": 6.5
      },
      {
        "max_power": 500,
        "cop": 6.0
      },
      {
        "max_power": 600,
        "cop": 5.5
      },
      {
        "max_power": 750,
        "cop": 5.0
      },
      {
        "max_power": 1000,
        "cop": 4.5
      },
      {
        "max_power": 1250,
        "cop": 4.0
      }
    ],
    "entity adjust heating curve": "input_number.stooklijn_verschuiving_day_ahead",
    "adjustment factor": 0.04
  },
  "battery": [
    {
      "name": "Batterij",
      "entity actual level": "sensor.solis_s5_eh1p_battery_soc",
      "capacity": 10,
      "upper limit": 98,
      "lower limit": 21,
      "optimal lower level": 21,
      "minimum power": 0,
      "charge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 50.0,
          "efficiency": 0.825
        },
        {
          "power": 100.0,
          "efficiency": 0.861
        },
        {
          "power": 150.0,
          "efficiency": 0.873
        },
        {
          "power": 300.0,
          "efficiency": 0.886
        },
        {
          "power": 600.0,
          "efficiency": 0.893
        },
        {
          "power": 1200.0,
          "efficiency": 0.896
        },
        {
          "power": 2000.0,
          "efficiency": 0.897
        },
        {
          "power": 3000.0,
          "efficiency": 0.898
        }
      ],
      "discharge stages": [
        {
          "power": 0.0,
          "efficiency": 1
        },
        {
          "power": 50.0,
          "efficiency": 0.825
        },
        {
          "power": 100.0,
          "efficiency": 0.861
        },
        {
          "power": 150.0,
          "efficiency": 0.873
        },
        {
          "power": 300.0,
          "efficiency": 0.886
        },
        {
          "power": 600.0,
          "efficiency": 0.893
        },
        {
          "power": 1200.0,
          "efficiency": 0.896
        },
        {
          "power": 2000.0,
          "efficiency": 0.897
        },
        {
          "power": 3000.0,
          "efficiency": 0.898
        }
      ],
      "dc_to_bat efficiency": 0.95,
      "dc_to_bat max power": 3000.0,
      "bat_to_dc efficiency": 0.93,
      "bat_to_dc max power": 3000.0,
      "cycle cost": 0.03,
      "solar": [
        {
          "name": "Dak bijkeuken",
          "entity pv switch": "",
          "strings": [
            {
              "tilt": 15,
              "orientation": -85,
              "capacity": 2.8,
              "yield": 0.01
            },
            {
              "tilt": 15,
              "orientation": 95,
              "capacity": 2.8,
              "yield": 0.01
            }
          ]
        }
      ]
    }
  ],
  "solar": [
    {
      "name": "Dak zuid",
      "entity pv switch": "",
      "tilt": 10,
      "orientation": 5,
      "capacity": 3.6,
      "yield": 0.01
    }
  ],
  "electric vehicle": [
  ],
  "machines": [
  ],
  "tibber": {
    "api_token": "!secret tibber_api_token"
  },
  "report": {
    "entities grid consumption": [
      "sensor.dsmr_reading_electricity_delivered_1",
      "sensor.dsmr_reading_electricity_delivered_2"
    ],
    "entities grid production": [
      "sensor.dsmr_reading_electricity_returned_1",
      "sensor.dsmr_reading_electricity_returned_2"
    ],
    "entities solar production ac": [
      "sensor.shelly_em_6eaabc_total_returned_1"
    ],
    "entities solar production dc": [
      "sensor.solis_s5_eh1p_pv_today_energy_generation"
    ],
    "entities ev consumption": [
      "sensor.shelly_em_6eaabc_total_0"
    ],
    "entities wp consumption": [
    ],
    "entities boiler consumption": [
    ],
    "entities battery consumption": [
      "sensor.solis_s5_eh1p_today_battery_charge_energy"
    ],
    "entities battery production": [
      "sensor.solis_s5_eh1p_today_battery_discharge_energy"
    ]
  },
  "scheduler": {
    "active": "true",
    "0425": "get_meteo_data",
    "1025": "get_meteo_data",
    "1625": "get_meteo_data",
    "2225": "get_meteo_data",
    "1257": "get_day_ahead_prices",
    "1356": "get_day_ahead_prices",
    "1455": "get_day_ahead_prices",
    "1554": "get_day_ahead_prices",
    "1655": "get_day_ahead_prices",
    "xx00": "calc_optimum",
    "xx15": "calc_optimum",
    "xx30": "calc_optimum",
    "xx45": "calc_optimum",
    "2359": "clean_data"
  }
}
Hier is de log van deze run:
code:
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
 2025-10-20 12:00:00 info: Day Ahead Optimalisering versie: 2025.10.5
2025-10-20 12:00:00 info: Day Ahead Optimalisering gestart op: 20-10-2025 12:00:00
2025-10-20 12:00:00 info: Day Ahead Optimalisatie gestart: 20-10-2025 12:00:00 taak: calc_optimum
2025-10-20 12:00:00 info: Debug = False
2025-10-20 12:00:00 info: Zelf berekende baseload
2025-10-20 12:00:00 info: Start waarden: 
      uur                tijd   p_l   p_t   base  pv_ac  pv_dc
0   12:00 2025-10-20 12:00:00 0.223 0.223 -0.039  0.011  0.021
1   12:15 2025-10-20 12:15:00 0.217 0.217 -0.032  0.012  0.024
2   12:30 2025-10-20 12:30:00 0.214 0.214 -0.025  0.014  0.026
3   12:45 2025-10-20 12:45:00 0.217 0.217 -0.020  0.015  0.028
4   13:00 2025-10-20 13:00:00 0.219 0.219 -0.018  0.015  0.028
5   13:15 2025-10-20 13:15:00 0.221 0.221 -0.013  0.017  0.031
6   13:30 2025-10-20 13:30:00 0.220 0.220 -0.008  0.018  0.033
7   13:45 2025-10-20 13:45:00 0.222 0.222  0.004  0.025  0.045
8   14:00 2025-10-20 14:00:00 0.217 0.217  0.023  0.032  0.057
9   14:15 2025-10-20 14:15:00 0.223 0.223  0.035  0.039  0.069
10  14:30 2025-10-20 14:30:00 0.226 0.226  0.047  0.046  0.082
11  14:45 2025-10-20 14:45:00 0.242 0.242  0.052  0.075  0.125
12  15:00 2025-10-20 15:00:00 0.226 0.226  0.047  0.149  0.209
13  15:15 2025-10-20 15:15:00 0.237 0.237  0.051  0.199  0.256
14  15:30 2025-10-20 15:30:00 0.259 0.259  0.056  0.249  0.301
15  15:45 2025-10-20 15:45:00 0.274 0.274  0.073  0.266  0.291
16  16:00 2025-10-20 16:00:00 0.236 0.236  0.107  0.122  0.242
17  16:15 2025-10-20 16:15:00 0.255 0.255  0.125  0.117  0.232
18  16:30 2025-10-20 16:30:00 0.281 0.281  0.142  0.112  0.222
19  16:45 2025-10-20 16:45:00 0.308 0.308  0.131  0.096  0.191
20  17:00 2025-10-20 17:00:00 0.257 0.257  0.095  0.072  0.143
21  17:15 2025-10-20 17:15:00 0.279 0.279  0.084  0.057  0.112
22  17:30 2025-10-20 17:30:00 0.289 0.289  0.074  0.041  0.081
23  17:45 2025-10-20 17:45:00 0.300 0.300  0.082  0.029  0.058
24  18:00 2025-10-20 18:00:00 0.289 0.289  0.107  0.017  0.035
25  18:15 2025-10-20 18:15:00 0.292 0.292  0.115  0.006  0.011
26  18:30 2025-10-20 18:30:00 0.294 0.294  0.123  0.000  0.000
27  18:45 2025-10-20 18:45:00 0.279 0.279  0.117  0.000  0.000
28  19:00 2025-10-20 19:00:00 0.293 0.293  0.099  0.001  0.002
29  19:15 2025-10-20 19:15:00 0.274 0.274  0.093  0.000  0.000
30  19:30 2025-10-20 19:30:00 0.264 0.264  0.087  0.000  0.000
31  19:45 2025-10-20 19:45:00 0.252 0.252  0.092  0.000  0.000
32  20:00 2025-10-20 20:00:00 0.272 0.272  0.109  0.000  0.000
33  20:15 2025-10-20 20:15:00 0.245 0.245  0.114  0.000  0.000
34  20:30 2025-10-20 20:30:00 0.232 0.232  0.119  0.000  0.000
35  20:45 2025-10-20 20:45:00 0.229 0.229  0.107  0.000  0.000
36  21:00 2025-10-20 21:00:00 0.258 0.258  0.079  0.000  0.000
37  21:15 2025-10-20 21:15:00 0.253 0.253  0.067  0.000  0.000
38  21:30 2025-10-20 21:30:00 0.232 0.232  0.054  0.000  0.000
39  21:45 2025-10-20 21:45:00 0.213 0.213  0.050  0.000  0.000
40  22:00 2025-10-20 22:00:00 0.242 0.242  0.052  0.000  0.000
41  22:15 2025-10-20 22:15:00 0.226 0.226  0.047  0.000  0.000
42  22:30 2025-10-20 22:30:00 0.221 0.221  0.043  0.000  0.000
43  22:45 2025-10-20 22:45:00 0.208 0.208  0.038  0.000  0.000
44  23:00 2025-10-20 23:00:00 0.212 0.212  0.033  0.000  0.000
45  23:15 2025-10-20 23:15:00 0.216 0.216  0.028  0.000  0.000
46  23:30 2025-10-20 23:30:00 0.213 0.213  0.024  0.000  0.000
47  23:45 2025-10-20 23:45:00 0.196 0.196  0.019  0.000  0.000
2025-10-20 12:00:00 info: No reduced hours applied for Batterij
2025-10-20 12:00:00 info: Startwaarde SoC Batterij: 22.0%

2025-10-20 12:00:00 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-10-20 12:00:00 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland

2025-10-20 12:00:00 info: Strategie: minimale kosten
2025-10-20 12:00:00 info: Maximale fout (maximal gap): 0.005000 euro
2025-10-20 12:00:02 info: Rekentijd: 1.68  sec
2025-10-20 12:00:02 info: Het programma heeft een optimale oplossing gevonden.
2025-10-20 12:00:02 info: In- en uitgaande energie per kwartier batterij Batterij
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat    o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh        %      %
 12:00   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.05
 12:15   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.11
 12:30   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.17
 12:45   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.24
 13:00   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.30
 13:15   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.38
 13:30   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.45
 13:45   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.56
 14:00   0.00     --   0.00   0.01   0.01  95.00   0.01       --  22.70
 14:15  -0.01  86.10  -0.02   0.02   0.00     --   0.00       --  22.70
 14:30  -0.02  86.10  -0.02   0.02   0.00     --   0.00       --  22.70
 14:45  -0.03  87.30  -0.03   0.03   0.00     --   0.00       --  22.70
 15:00  -0.05  88.60  -0.05   0.05   0.00     --   0.00       --  22.70
 15:15  -0.06  88.60  -0.06   0.06   0.00     --   0.00       --  22.70
 15:30  -0.07  88.60  -0.08   0.08   0.00     --   0.00       --  22.70
 15:45  -0.06  88.60  -0.07   0.07   0.00     --   0.00       --  22.70
 16:00  -0.05  88.60  -0.06   0.06   0.00     --   0.00       --  22.70
 16:15  -0.05  88.60  -0.06   0.06   0.00     --   0.00       --  22.70
 16:30  -0.05  88.60  -0.06   0.06   0.00     --   0.00       --  22.70
 16:45  -0.18  89.60  -0.21   0.05  -0.16  93.00  -0.17   108.69  21.01
 17:00  -0.03  87.30  -0.04   0.04   0.00     --   0.00       --  21.01
 17:15  -0.03  87.30  -0.03   0.03  -0.00  93.00  -0.00  3960.97  21.00
 17:30  -0.02  86.10  -0.02   0.02   0.00     --   0.00       --  21.00
 17:45  -0.01  86.10  -0.01   0.01  -0.00  93.00  -0.00 37881.14  21.00
 18:00  -0.01  82.50  -0.01   0.01   0.00     --   0.00       --  21.00
 18:15  -0.00  82.50  -0.00   0.00   0.00     --   0.00       --  21.00
 18:30   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 18:45   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 19:00  -0.00  82.50  -0.00   0.00   0.00     --   0.00       --  21.00
 19:15  -0.00  82.50  -0.00   0.00   0.00     --   0.00       --  21.00
 19:30   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 19:45   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 20:15   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 20:30   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 20:45   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 21:15   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 21:30   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 21:45   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 22:15   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 22:30   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 22:45   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 23:15   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 23:30   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
 23:45   0.00     --   0.00   0.00   0.00     --   0.00       --  21.00
Totaal  -0.73     --  -0.82   0.74  -0.08     --  -0.10       --       
2025-10-20 12:00:08 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 12:00    0.00     0.00   0.00   0.05  -0.04   0.00   0.00   0.00   0.01   0.00   -0.01  20.00
 12:15    0.00     0.00   0.00   0.04  -0.03   0.00   0.00   0.00   0.01   0.00   -0.01  20.00
 12:30    0.00     0.00   0.00   0.04  -0.03   0.00   0.00   0.00   0.01   0.00   -0.01  20.00
 12:45    0.00     0.00   0.00   0.04  -0.02   0.00   0.00   0.00   0.02   0.00   -0.01  20.00
 13:00    0.00     0.00   0.00   0.03  -0.02   0.00   0.00   0.00   0.02   0.00   -0.01  20.00
 13:15    0.00     0.00   0.00   0.03  -0.01   0.00   0.00   0.00   0.02   0.00   -0.01  20.00
 13:30    0.00     0.00   0.00   0.03  -0.01   0.00   0.00   0.00   0.02   0.00   -0.01  20.00
 13:45    0.00     0.00   0.00   0.02   0.00   0.00   0.00   0.00   0.03   0.00   -0.00  20.00
 14:00    0.00     0.00   0.00   0.01   0.02   0.00   0.00   0.00   0.03   0.00   -0.00  20.00
 14:15    0.00     0.01   0.00   0.02   0.04   0.00   0.00   0.00   0.04   0.00   -0.00  20.00
 14:30    0.00     0.02   0.00   0.02   0.05   0.00   0.00   0.00   0.05   0.00   -0.00  20.00
 14:45    0.00     0.03   0.00   0.05   0.05   0.00   0.00   0.00   0.08   0.00   -0.01  20.00
 15:00    0.00     0.05   0.00   0.15   0.05   0.00   0.00   0.00   0.15   0.00   -0.03  20.00
 15:15    0.00     0.06   0.00   0.20   0.05   0.00   0.00   0.00   0.20   0.00   -0.05  20.00
 15:30    0.00     0.07   0.00   0.26   0.06   0.00   0.00   0.00   0.25   0.00   -0.07  20.00
 15:45    0.00     0.06   0.00   0.26   0.07   0.00   0.00   0.00   0.27   0.00   -0.07  20.00
 16:00    0.00     0.05   0.00   0.07   0.11   0.00   0.00   0.00   0.12   0.00   -0.02  20.00
 16:15    0.00     0.05   0.00   0.04   0.12   0.00   0.00   0.00   0.12   0.00   -0.01  20.00
 16:30    0.00     0.05   0.00   0.02   0.14   0.00   0.00   0.00   0.11   0.00   -0.01  20.00
 16:45    0.00     0.18   0.00   0.15   0.13   0.00   0.00   0.00   0.10   0.00   -0.05  20.00
 17:00    0.00     0.03   0.00   0.01   0.10   0.00   0.00   0.00   0.07   0.00   -0.00  20.00
 17:15    0.00     0.03   0.00   0.00   0.08   0.00   0.00   0.00   0.06   0.00   -0.00  20.00
 17:30    0.00     0.02   0.02   0.00   0.07   0.00   0.00   0.00   0.04   0.00   -0.00  20.00
 17:45    0.00     0.01   0.04   0.00   0.08   0.00   0.00   0.00   0.03   0.01   -0.00  20.00
 18:00    0.00     0.01   0.08   0.00   0.11   0.00   0.00   0.00   0.02   0.02   -0.00  20.00
 18:15    0.00     0.00   0.11   0.00   0.12   0.00   0.00   0.00   0.01   0.03   -0.00  20.00
 18:30    0.00     0.00   0.12   0.00   0.12   0.00   0.00   0.00   0.00   0.04   -0.00  20.00
 18:45    0.00     0.00   0.12   0.00   0.12   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 19:00    0.00     0.00   0.10   0.00   0.10   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 19:15    0.00     0.00   0.09   0.00   0.09   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 19:30    0.00     0.00   0.09   0.00   0.09   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 19:45    0.00     0.00   0.09   0.00   0.09   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 20:00    0.00     0.00   0.11   0.00   0.11   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 20:15    0.00     0.00   0.11   0.00   0.11   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 20:30    0.00     0.00   0.12   0.00   0.12   0.00   0.00   0.00   0.00   0.03   -0.00  20.00
 20:45    0.00     0.00   0.11   0.00   0.11   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 21:00    0.00     0.00   0.08   0.00   0.08   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 21:15    0.00     0.00   0.07   0.00   0.07   0.00   0.00   0.00   0.00   0.02   -0.00  20.00
 21:30    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 21:45    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 22:00    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 22:15    0.00     0.00   0.05   0.00   0.05   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 22:30    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 22:45    0.00     0.00   0.04   0.00   0.04   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:00    0.00     0.00   0.03   0.00   0.03   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:15    0.00     0.00   0.03   0.00   0.03   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:30    0.00     0.00   0.02   0.00   0.02   0.00   0.00   0.00   0.00   0.01   -0.00  20.00
 23:45    0.00     0.00   0.02   0.00   0.02   0.00   0.00   0.00   0.00   0.00   -0.00  20.00
Totaal    0.00     0.73   1.84   1.53   2.89   0.00   0.00   0.00   1.85   0.47   -0.38       

2025-10-20 12:00:08 info: Consumption               1.84 (kWh)
2025-10-20 12:00:08 info: Cost consumption          0.47 (€)
2025-10-20 12:00:08 info: Tariff consumption        0.258 (€/kWh)
2025-10-20 12:00:08 info: Production                1.53 (kWh)
2025-10-20 12:00:08 info: Profit production        -0.38 (€)
2025-10-20 12:00:08 info: Tariff production         0.250 (€/kWh)

2025-10-20 12:00:08 info: 
Calculation profit after optimize in €
Cost before optimize              -0.38
Cost consumption      0.47
Profit production    -0.38
Cycle cost            0.01
Battery storage       0.02
Boiler storage        0.00
Total                 0.12
Cost after optimize               0.12
Profit:                          -0.49
2025-10-20 12:00:08 info: Doorzetten van alle settings naar HA
2025-10-20 12:00:08 info: Grid set point: -197.0 W
2025-10-20 12:00:08 info: Cycle cost Batterij: 0.01 euro
2025-10-20 12:00:08 info: Netto vermogen naar(+)/uit(-) omvormer Batterij: 0 W
2025-10-20 12:00:08 info: Balanceren: False
2025-10-20 12:00:08 info: Vermogen uit batterij: -21W
2025-10-20 12:00:08 info: Vermogen dat binnenkomt van pv: 21W
2025-10-20 12:00:08 info: Vermogen dat binnenkomt van ac: 0W
2025-10-20 12:00:08 info: Waarde SoC na eerste uur: 22.1%

  • itavero
  • Registratie: Oktober 2004
  • Laatst online: 07-12 16:30
Het is dat ik al zoveel hobbyprojectjes heb, maar anders zou ik denk ik de configuratie UI een keer wat liefde geven.
Naast dat deze op mijn smartphone onbruikbaar is (ik denk soms een kleine tweak te maken, maar kan nooit goed scrollen in die JSON viewer), denk ik dat het bijvoorbeeld heel handig zou zijn als je suggesties krijgt wanneer je entiteiten op moet/kunt geven voor een bepaalde instelling (inclusief eventueel de suggestie om een nieuwe helper aan te maken die aan de verwachtingen van DAO voldoet).

De meeste fouten die ik zelf namelijk heb gemaakt kwamen doordat ik net niet helemaal goed had gelezen welke type/opties DAO verwacht voor een entiteit of doordat ik een tikfoutje maakte in de naam van een entiteit.
Ook andere handige features, zoals bijvoorbeeld het bepalen van de kwartierwaarden voor een machine op basis van historische data uit je HA instance zouden dan geintegreerd kunnen worden (heb hier nu een Python scriptje voor gemaakt.. zal binnenkort eens kijken of ik dit ergens kan delen).

Maar goed, helaas heb ik maar beperkte tijd 😅

  • Los Tigros
  • Registratie: Augustus 2009
  • Laatst online: 16:47
Zijn er meer mensen die problemen hebben met de addon? Werkt tot gister goed maar krijg nu zo lijkt het de day ahead prijzen niet meer binnen. UPDATE: Ligt aan ENTSO zo lijkt het. Voor nu even omgezet naar Nordpool en werkt weer goed.

code:
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
2025-10-21 11:15:00 fout: Er is een fout opgetreden, zie de fout-tracering
Traceback (most recent call last):
  File "/root/dao/prog/da_base.py", line 623, in run_task_function
    getattr(self, run_task["function"])()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/da_base.py", line 561, in calc_optimum
    dacalc.calc_optimum()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/root/dao/prog/day_ahead.py", line 93, in calc_optimum
    price_data = report.get_price_data(
        dt.datetime.fromtimestamp(start_hour), end=None, interval=self.interval
    )
  File "/root/dao/prog/da_report.py", line 2847, in get_price_data
    end = datetime.datetime.strptime(df_da["time"].iloc[-1], "%Y-%m-%d %H:%M")
                                     ~~~~~~~~~~~~~~~~~~^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1192, in __getitem__
    return self._getitem_axis(maybe_callable, axis=axis)
           ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1753, in _getitem_axis
    self._validate_integer(key, axis)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/pandas/core/indexing.py", line 1686, in _validate_integer
    raise IndexError("single positional indexer is out-of-bounds")
IndexError: single positional indexer is out-of-bounds
single positional indexer is out-of-bounds
[2025-10-21 11:29:48 +0200] [12] [CRITICAL] WORKER TIMEOUT (pid:22)
[2025-10-21 11:29:48 +0200] [22] [fout] Error handling request /
Traceback (most recent call last):
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 134, in handle
    self.handle_request(listener, req, client, addr)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 177, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1536, in __call__
    return self.wsgi_app(environ, start_response)
           ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 1511, in wsgi_app
    response = self.full_dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 917, in full_dispatch_request
    rv = self.dispatch_request()
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/flask/app.py", line 902, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)  # type: ignore[no-any-return]
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/root/dao/webserver/app/routes.py", line 213, in menu
    return run_process()
  File "/root/dao/webserver/app/routes.py", line 342, in run_process
    proc = run(cmd, stdout=PIPE, stderr=PIPE)
  File "/usr/lib/python3.13/subprocess.py", line 556, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
                     ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 1222, in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
                     ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/subprocess.py", line 2128, in _communicate
    ready = selector.select(timeout)
  File "/usr/lib/python3.13/selectors.py", line 398, in select
    fd_event_list = self._selector.poll(timeout)
  File "/root/dao/venv/day_ahead/lib/python3.13/site-packages/gunicorn/workers/base.py", line 204, in handle_abort
    sys.exit(1)
    ~~~~~~~~^^^
SystemExit: 1

  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op dinsdag 21 oktober 2025 @ 07:52:
[...]

Hoi @Animal we komen hier vast wel uit. Je bent al een heel eind, dus geef de moed niet op :). Zou je ten eerste je post willen aanpassen en de code blokken ook nog tussen een quote blok willen opnemen? Dat scheelt de toevallige voorbijganger een hoop gescroll op het scherm ;)

Je hebt geluk, de instellingen voor zonnepanelen en battery heb ik al uitgebreid beschreven in de wiki van DAO heb je daar ook naar gekeken?
De “rits aan foutmeldingen” is maar één foutmelding en is op “entity set operating mode”, degene waar jij geen idee hebt wat je moet invullen. In de wiki staat: “ Optioneel. Entiteit in HA waarmee je de omvormer aan/uit zet. Type "input_select" met minimaal opties "Aan" en "Uit". Hiermee kun je een automatisering triggeren die de benodigde acties uitvoert.”.
Deze entiteit is optioneel, dus als je hem niet nodig hebt, lekker weg laten, anders vullen met keuzes “Aan” en “Uit”.
De hoge pv opwek komt waarschijnlijk door een te hoge yield. Reken die nog eens goed na (staat ook duidelijk in de wiki). 5x een zelfde yield voor oost, west en zuid is sowieso verdacht. Heb je ook bewust de strings op Oost en West er 2 x in staan? Tip is om zoveel mogelijk gelijke dingen samen te voegen, dat scheelt DAO rekentijd. Dus die 2 op Oost samenvoegen en die 2 op West ook.
Fijn. Ik gebruik al een hele tijd DOCS.md en daar staat minder informatie in lijkt het? De Wiki is vele malen duidelijker. Ik kan weer even vooruit
code:
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
Logging van bewerking "Optimaliseringsberekening zonder debug":

2025-10-21 12:48:57 info: Day Ahead Optimalisering versie: 2025.10.5.rc6
2025-10-21 12:48:57 info: Day Ahead Optimalisering gestart op: 21-10-2025 12:48:57
2025-10-21 12:48:57 info: Day Ahead Optimalisatie gestart: 21-10-2025 12:48:57 taak: calc_optimum
2025-10-21 12:48:57 info: Debug = False
2025-10-21 12:48:57 waarschuwing: "last invoice" (2022-09-01) is verouderd en moet worden bijgewerkt
2025-10-21 12:48:57 info: Baseload uit instellingen
2025-10-21 12:48:57 info: Start waarden: 
      uur                tijd   p_l   p_t  base  pv_ac  pv_dc
0   12:00 2025-10-21 12:00:00 0.205 0.205 0.310  0.405      0
1   13:00 2025-10-21 13:00:00 0.184 0.184 0.330  5.016      0
2   14:00 2025-10-21 14:00:00 0.186 0.186 0.330  3.385      0
3   15:00 2025-10-21 15:00:00 0.215 0.215 0.330  1.153      0
4   16:00 2025-10-21 16:00:00 0.230 0.230 0.330  1.388      0
5   17:00 2025-10-21 17:00:00 0.265 0.265 0.330  0.392      0
6   18:00 2025-10-21 18:00:00 0.292 0.292 0.330  0.039      0
7   19:00 2025-10-21 19:00:00 0.289 0.289 0.330  0.000      0
8   20:00 2025-10-21 20:00:00 0.269 0.269 0.320  0.000      0
9   21:00 2025-10-21 21:00:00 0.245 0.245 0.310  0.000      0
10  22:00 2025-10-21 22:00:00 0.245 0.245 0.310  0.000      0
11  23:00 2025-10-21 23:00:00 0.236 0.236 0.310  0.000      0
2025-10-21 12:48:58 info: No reduced hours applied for Marstek Venus-E 5.12kWh
2025-10-21 12:48:58 info: Startwaarde SoC Marstek Venus-E 5.12kWh: 12.0%

2025-10-21 12:48:58 info: Boiler niet aanwezig of staat uit, boiler wordt niet ingepland
2025-10-21 12:48:58 info: Warmtepomp niet aanwezig of enabled - warmtepomp wordt niet ingepland

2025-10-21 12:48:58 info: Strategie: minimale kosten
2025-10-21 12:48:58 info: Maximale fout (maximal gap): 0.005000 euro
2025-10-21 12:48:59 info: Rekentijd: 0.07  sec
2025-10-21 12:48:59 info: Het programma heeft een optimale oplossing gevonden.
2025-10-21 12:48:59 info: In- en uitgaande energie per uur batterij Marstek Venus-E 5.12kWh
   uur   ac->    eff   ->dc pv->dc   dc->    eff  ->bat  o_eff    SoC
          kWh      %    kWh    kWh    kWh      %    kWh      %      %
 12:00   0.37  90.10   0.33   0.00   0.33  93.50   0.31  84.24  18.06
 13:00   2.50  90.17   2.25   0.00   2.25  93.50   2.11  84.31  59.23
 14:00   2.48  90.17   2.23   0.00   2.23  93.50   2.09  84.31 100.00
 15:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 16:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 17:00   0.00     --   0.00   0.00   0.00     --   0.00     -- 100.00
 18:00  -2.18  99.28  -2.20   0.00  -2.20  93.50  -2.35  92.83  54.08
 19:00  -2.00  99.28  -2.01   0.00  -2.01  93.50  -2.15  92.83  12.00
 20:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 21:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 22:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
 23:00   0.00     --   0.00   0.00   0.00     --   0.00     --  12.00
Totaal   1.16     --   0.61   0.00   0.61     --   0.00     --       
2025-10-21 12:48:59 info: Berekende prognoses: 
   uur  bat_in  bat_out   cons   prod   base   boil     wp     ev  pv_ac   cost  profit  b_tem
 12:00    0.37     0.00   0.02   0.00   0.31   0.00   0.00   0.00   0.40   0.00   -0.00  20.00
 13:00    2.50     0.00   0.00   2.19   0.33   0.00   0.00   0.00   5.02   0.00   -0.40  20.00
 14:00    2.48     0.00   0.00   0.58   0.33   0.00   0.00   0.00   3.39   0.00   -0.11  20.00
 15:00    0.00     0.00   0.00   0.82   0.33   0.00   0.00   0.00   1.15   0.00   -0.18  20.00
 16:00    0.00     0.00   0.00   1.06   0.33   0.00   0.00   0.00   1.39   0.00   -0.24  20.00
 17:00    0.00     0.00   0.00   0.06   0.33   0.00   0.00   0.00   0.39   0.00   -0.02  20.00
 18:00    0.00     2.18   0.00   1.89   0.33   0.00   0.00   0.00   0.04   0.00   -0.55  20.00
 19:00    0.00     2.00   0.00   1.67   0.33   0.00   0.00   0.00   0.00   0.00   -0.48  20.00
 20:00    0.00     0.00   0.32   0.00   0.32   0.00   0.00   0.00   0.00   0.09   -0.00  20.00
 21:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 22:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.08   -0.00  20.00
 23:00    0.00     0.00   0.31   0.00   0.31   0.00   0.00   0.00   0.00   0.07   -0.00  20.00
Totaal    5.34     4.18   1.27   8.27   3.87   0.00   0.00   0.00  11.78   0.32   -1.98       

2025-10-21 12:48:59 info: Consumption               1.27 (kWh)
2025-10-21 12:48:59 info: Cost consumption          0.32 (€)
2025-10-21 12:48:59 info: Tariff consumption        0.248 (€/kWh)
2025-10-21 12:48:59 info: Production                8.27 (kWh)
2025-10-21 12:48:59 info: Profit production        -1.98 (€)
2025-10-21 12:48:59 info: Tariff production         0.240 (€/kWh)

2025-10-21 12:48:59 info: 
Calculation profit after optimize in €
Cost before optimize              -1.40
Cost consumption      0.32
Profit production    -1.98
Cycle cost            0.05
Battery storage      -0.00
Boiler storage        0.00
Total                -1.62
Cost after optimize              -1.62
Profit:                           0.22
2025-10-21 12:48:59 info: Doorzetten van alle settings naar HA
2025-10-21 12:48:59 info: Grid set point: 111.0 W
2025-10-21 12:48:59 info: Cycle cost Marstek Venus-E 5.12kWh: 0.05 euro
2025-10-21 12:48:59 info: Netto vermogen naar(+)/uit(-) omvormer Marstek Venus-E 5.12kWh: 2000 W
2025-10-21 12:48:59 info: Balanceren: False
2025-10-21 12:48:59 info: Vermogen uit batterij: -1802W
2025-10-21 12:48:59 info: Vermogen dat binnenkomt van pv: 0W
2025-10-21 12:48:59 info: Vermogen dat binnenkomt van ac: 1802W
2025-10-21 12:48:59 info: Waarde SoC na eerste uur: 18.1%
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f530dbb48b0>
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at 0x7f530e38ac50>
Bijna geen errors meer. Alleen een database error maar dat ligt aan de laatste python update dus
<sys>:0: ResourceWarning: unclosed database in <sqlite3.Connection object at

[ Voor 64% gewijzigd door Animal op 21-10-2025 13:12 ]


  • BBuilds
  • Registratie: November 2013
  • Laatst online: 04-12 23:33
Torch1969 schreef op dinsdag 21 oktober 2025 @ 07:52:
[...]

Hoi @Animal we komen hier vast wel uit. Je bent al een heel eind, dus geef de moed niet op :). Zou je ten eerste je post willen aanpassen en de code blokken ook nog tussen een quote blok willen opnemen? Dat scheelt de toevallige voorbijganger een hoop gescroll op het scherm ;)

Je hebt geluk, de instellingen voor zonnepanelen en battery heb ik al uitgebreid beschreven in de wiki van DAO heb je daar ook naar gekeken?
De “rits aan foutmeldingen” is maar één foutmelding en is op “entity set operating mode”, degene waar jij geen idee hebt wat je moet invullen. In de wiki staat: “ Optioneel. Entiteit in HA waarmee je de omvormer aan/uit zet. Type "input_select" met minimaal opties "Aan" en "Uit". Hiermee kun je een automatisering triggeren die de benodigde acties uitvoert.”.
Deze entiteit is optioneel, dus als je hem niet nodig hebt, lekker weg laten, anders vullen met keuzes “Aan” en “Uit”.
De hoge pv opwek komt waarschijnlijk door een te hoge yield. Reken die nog eens goed na (staat ook duidelijk in de wiki). 5x een zelfde yield voor oost, west en zuid is sowieso verdacht. Heb je ook bewust de strings op Oost en West er 2 x in staan? Tip is om zoveel mogelijk gelijke dingen samen te voegen, dat scheelt DAO rekentijd. Dus die 2 op Oost samenvoegen en die 2 op West ook.
Ondertussen DAO bijna helemaal geconfigureerd met de DOCS.md maar deze Wiki was ik ook nog niet tegengekomen. Die is inderdaad een pak duidelijker.
Bedankt voor het maken en het delen @Torch1969 !

  • storeman
  • Registratie: April 2004
  • Laatst online: 23:08
Ik heb nog een interessante casus. Gisteren was de hoogste stroomprijspiek de laatste piek, maar dus wel de interessantste. De batterij was hierbij al flink ontladen, waardoor deze niet meer op zijn piekvermogen kon gaan werken.

We hebben nu al (dis)charge stages, hier zou per item eigenlijk een min_soc bij moeten komen als voorwaarde. Ik denk even hardop hoe dat eruit zou kunnen zien:

code:
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
"discharge stages": [
      {
        "power": 0.0,
        "efficiency": 1, 
        "min_soc": 0 (=default)
      },
      {
        "power": 500.0,
        "efficiency": 0.94
      },
      {
        "power": 1000.0,
        "efficiency": 0.95
      },
      {
        "power": 4000.0,
        "efficiency": 0.95,
        "min_soc": 30
      },
      {
        "power": 8000.0,
        "efficiency": 0.93,
        "min_soc": 50 (betekent dat 8kW discharge alleen kan bij een SoC > 50%)
      }
]


Geen idee of dit kan, maar ik zag gisteren dus een gewenste discharge van 10kW, maar de batterij kon maar maar 3kW output leveren.

En nog even een klein applausje voor KC27! Deze maand heb (so far) netto 112 kWh afgenomen en er toch 12,15 voor teruggekregen. Dat zijn de mooie sommetjes.

[ Voor 7% gewijzigd door storeman op 21-10-2025 16:39 ]

"Chaos kan niet uit de hand lopen"

Er klopt inderdaad iets niet.
Het lijkt erop dat de pv_dc tijdens de berekening wordt gereduceerd.
Ik kan er nu even niet naar kijken (laptop kapot ☹️), maar zodra die weer up en running is kom ik erop terug.

[ Voor 5% gewijzigd door KC27 op 21-10-2025 16:39 ]

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op dinsdag 21 oktober 2025 @ 07:52:
[...]

Hoi @Animal we komen hier vast wel uit. Je bent al een heel eind, dus geef de moed niet op :). Zou je ten eerste je post willen aanpassen en de code blokken ook nog tussen een quote blok willen opnemen? Dat scheelt de toevallige voorbijganger een hoop gescroll op het scherm ;)

Je hebt geluk, de instellingen voor zonnepanelen en battery heb ik al uitgebreid beschreven in de wiki van DAO heb je daar ook naar gekeken?
De “rits aan foutmeldingen” is maar één foutmelding en is op “entity set operating mode”, degene waar jij geen idee hebt wat je moet invullen. In de wiki staat: “ Optioneel. Entiteit in HA waarmee je de omvormer aan/uit zet. Type "input_select" met minimaal opties "Aan" en "Uit". Hiermee kun je een automatisering triggeren die de benodigde acties uitvoert.”.
Deze entiteit is optioneel, dus als je hem niet nodig hebt, lekker weg laten, anders vullen met keuzes “Aan” en “Uit”.
De hoge pv opwek komt waarschijnlijk door een te hoge yield. Reken die nog eens goed na (staat ook duidelijk in de wiki). 5x een zelfde yield voor oost, west en zuid is sowieso verdacht. Heb je ook bewust de strings op Oost en West er 2 x in staan? Tip is om zoveel mogelijk gelijke dingen samen te voegen, dat scheelt DAO rekentijd. Dus die 2 op Oost samenvoegen en die 2 op West ook.
String 1 Hoymiles micro omvormer >> met 4 inputs (2x noord oost en 2x oost west (zo'n dakje zeg maar).
Ik heb de yield berekend voor elk zonnepaneel via de berekening (elk paneel van string 1 is 430wp)
String 2 Hoymiles micro omvormer >> is een paneel op zuid oost van 430wp
String 3 Hoymiles micro omvormer >> is een groter paneel op zuid west van 450wp

Mis ik iets?

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
BBuilds schreef op dinsdag 21 oktober 2025 @ 12:52:
[...]


Ondertussen DAO bijna helemaal geconfigureerd met de DOCS.md maar deze Wiki was ik ook nog niet tegengekomen. Die is inderdaad een pak duidelijker.
Bedankt voor het maken en het delen @Torch1969 !
De Wiki is nog niet compleet, is nog wat Work in progress voor de komende winter :)

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op dinsdag 21 oktober 2025 @ 13:23:
[...]

String 1 Hoymiles micro omvormer >> met 4 inputs (2x noord oost en 2x oost west (zo'n dakje zeg maar).
Ik heb de yield berekend voor elk zonnepaneel via de berekening (elk paneel van string 1 is 430wp)
String 2 Hoymiles micro omvormer >> is een paneel op zuid oost van 430wp
String 3 Hoymiles micro omvormer >> is een groter paneel op zuid west van 450wp

Mis ik iets?
( 430Wp x 0,85 ) / 400.000 = 0,00091375
Ik zou die 2x430 Wp op noordoost gewoon bij elkaar optellen (dus 860 Wp met yield 0,0018275) en die van zuid west ook

[ Voor 10% gewijzigd door Torch1969 op 21-10-2025 18:44 ]


  • balk
  • Registratie: Januari 2000
  • Laatst online: 20:26
itavero schreef op dinsdag 21 oktober 2025 @ 09:50:
Het is dat ik al zoveel hobbyprojectjes heb, maar anders zou ik denk ik de configuratie UI een keer wat liefde geven.
Naast dat deze op mijn smartphone onbruikbaar is (ik denk soms een kleine tweak te maken, maar kan nooit goed scrollen in die JSON viewer), denk ik dat het bijvoorbeeld heel handig zou zijn als je suggesties krijgt wanneer je entiteiten op moet/kunt geven voor een bepaalde instelling (inclusief eventueel de suggestie om een nieuwe helper aan te maken die aan de verwachtingen van DAO voldoet).

De meeste fouten die ik zelf namelijk heb gemaakt kwamen doordat ik net niet helemaal goed had gelezen welke type/opties DAO verwacht voor een entiteit of doordat ik een tikfoutje maakte in de naam van een entiteit.
Ook andere handige features, zoals bijvoorbeeld het bepalen van de kwartierwaarden voor een machine op basis van historische data uit je HA instance zouden dan geintegreerd kunnen worden (heb hier nu een Python scriptje voor gemaakt.. zal binnenkort eens kijken of ik dit ergens kan delen).

Maar goed, helaas heb ik maar beperkte tijd 😅
Ja, ik heb er ook wel eens over nagedacht. Alleen ben ik er technisch niet toe in staat om zoiets te maken. Misschien wel nadenken over hoe het zou kunnen werken.

Ik heb chatGPT laatst wel om raad gevraagd, en daar kwam wel iets nuttigs uit. Het zou nuttig zijn om de config aan te kunnen passen met een api maar ook via een flashy web interface. En dat beiden wegschrijven naar het zelfde bestand. Ofzoiets.

  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op dinsdag 21 oktober 2025 @ 18:41:
[...]

( 430Wp x 0,85 ) / 400.000 = 0,00091375
Ik zou die 2x430 Wp op noordoost gewoon bij elkaar optellen (dus 860 Wp met yield 0,0018275) en die van zuid west ook
Super. De voorspelling lijkt een stuk beter te kloppen. Ik ga vavavond aan de slag om de helpers die ik gemaakt heb voor DAO te koppelen aan de lillygo esphome sensoren van mijn Marstek. Mocht iemand nog handige automations hebben of blueprints dan laat zeker weten.

Edit: ik ga weer opnieuw starten :>

[ Voor 145% gewijzigd door Animal op 22-10-2025 18:56 ]


  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op woensdag 22 oktober 2025 @ 16:31:
[...]

Super. De voorspelling lijkt een stuk beter te kloppen. Ik ga vavavond aan de slag om de helpers die ik gemaakt heb voor DAO te koppelen aan de lillygo esphome sensoren van mijn Marstek. Mocht iemand nog handige automations hebben of blueprints dan laat zeker weten.

Edit: ik ga weer opnieuw starten :>
Begin eenvoudig, alleen de noodzakelijke entiteiten. Voor een Sessy thuisbatterij heb ik in feite alleen het power setpoint nodig (weet niet wat er bij Marstek nodig is). Ik heb de volgende configuratie:
De helpers:
Afbeeldingslocatie: https://tweakers.net/i/eBnrUuSBGD_Ii6gzl4rLqapvoUk=/800x/filters:strip_exif()/f/image/2piPNGUJwqdZ7juXgNLLTk6S.png?f=fotoalbum_large
En in een dashboard:
Afbeeldingslocatie: https://tweakers.net/i/XCFXaVN1anyu5k2bXNTWj2_6t74=/x800/filters:strip_exif()/f/image/7ePecnaA3nfuUjLuNY0r4n0w.png?f=fotoalbum_large

En een automatisering die de setpoint helper doorzet naar het power setpoint van mijn Sessy en één die een balanceer automatisering aanzet.

  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op woensdag 22 oktober 2025 @ 20:10:
[...]

Begin eenvoudig, alleen de noodzakelijke entiteiten. Voor een Sessy thuisbatterij heb ik in feite alleen het power setpoint nodig (weet niet wat er bij Marstek nodig is). Ik heb de volgende configuratie:
De helpers:
[Afbeelding]
En in een dashboard:
[Afbeelding]

En een automatisering die de setpoint helper doorzet naar het power setpoint van mijn Sessy en één die een balanceer automatisering aanzet.
Dankjewel! Ik heb bij mijn Marstek een setpoint voor charge en discharge. Maar mijn input_number.dao_set_power_feedin sensor kan nu zowel negatief als positief zijn.
Zodra input_number.dao_set_power_feedin boven de nul komt dan moet de batterij op de charge stand komen
Zodra input_number.dao_set_power_feedin onder de nul is dan moet de batterij die waarde discharge

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op woensdag 22 oktober 2025 @ 20:14:
[...]

Dankjewel! Ik heb bij mijn Marstek een setpoint voor charge en discharge. Maar mijn input_number.dao_set_power_feedin sensor kan nu zowel negatief als positief zijn.
Zodra input_number.dao_set_power_feedin boven de nul komt dan moet de batterij op de charge stand komen
Zodra input_number.dao_set_power_feedin onder de nul is dan moet de batterij die waarde discharge
Dan maak je een automatisering die reageert op wijziging van input_number.dao_set_power_feedin
In het actions deel maak je een "Kiezen" actie en daarbinnen maak je drie opties: input_number.dao_set_power_feedin > 0, dan als actie stel charge in (en zet discharge op 0?)
input_number.dao_set_power_feedin < 0, dan als actie stel discharge in (en zet charge op 0?)
input_number.dao_set_power_feedin = 0, dan als actie stel charge en discharge op 0 in.

  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op woensdag 22 oktober 2025 @ 20:20:
[...]

Dan maak je een automatisering die reageert op wijziging van input_number.dao_set_power_feedin
In het actions deel maak je een "Kiezen" actie en daarbinnen maak je drie opties: input_number.dao_set_power_feedin > 0, dan als actie stel charge in (en zet discharge op 0?)
input_number.dao_set_power_feedin < 0, dan als actie stel discharge in (en zet charge op 0?)
input_number.dao_set_power_feedin = 0, dan als actie stel charge en discharge op 0 in.
Top! Al veel stappen verder. Ik heb nu de automation van @Mirabis aangehouden. Daarin worden ook keuzes gemaakt bij waarde boven of onder 0. De device ID's en entity id's heb ik aangepast.
Dank zover!

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op woensdag 22 oktober 2025 @ 21:00:
[...]

Top! Al veel stappen verder. Ik heb nu de automation van @Mirabis aangehouden. Daarin worden ook keuzes gemaakt bij waarde boven of onder 0. De device ID's en entity id's heb ik aangepast.
Dank zover!
Fijn, ga je de wekker op vannacht 4 uur zetten om te kijken of het werkt? ;) of plant DAO voor jou dan geen laadmomentje.

Afbeeldingslocatie: https://tweakers.net/i/3IVs9bRIq4Lhy-UtEDKmZ0IxNgA=/800x/filters:strip_exif()/f/image/0RIrQz79aFzvzaJbDb0HQPrm.png?f=fotoalbum_large

@KC27 er lijkt nog een foutje in de balkjes te zitten. Als de teruglevering accu in én teruglevering is (zie morgen 13u), dan is het oranje balkje (accu in) niet lang genoeg. (Versie 2025.10.4)

  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op woensdag 22 oktober 2025 @ 21:24:
[...]

Fijn, ga je de wekker op vannacht 4 uur zetten om te kijken of het werkt? ;) of plant DAO voor jou dan geen laadmomentje.

[Afbeelding]

@KC27 er lijkt nog een foutje in de balkjes te zitten. Als de teruglevering accu in én teruglevering is (zie morgen 13u), dan is het oranje balkje (accu in) niet lang genoeg. (Versie 2025.10.4)
Ik kan bij reports>>morgen en bij accu in zien dat er om 5:00 2kWh geladen gaat worden.
Is een grafisch rapport pas te zien op de nieuwe dag(op de hoofdpagina?)
Afbeeldingslocatie: https://tweakers.net/i/TsLbzHx_49LwuVXL0G2nZhhSW3w=/800x/filters:strip_exif()/f/image/PeqP9G16wsnpHUukimFBmMHJ.png?f=fotoalbum_large

Ik zet de wekker!

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op woensdag 22 oktober 2025 @ 21:28:
[...]

Ik kan bij reports>>morgen en bij accu in zien dat er om 5:00 2kWh geladen gaat worden.
Is een grafisch rapport pas te zien op de nieuwe dag(op de hoofdpagina?)

[...]
[Afbeelding]

Ik zet de wekker!
Ja, home pagina selecteren en dan grafiek. En dan blader je eventueel naar de laatste optimalisatie berekening.

  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op woensdag 22 oktober 2025 @ 21:31:
[...]

Ja, home pagina selecteren en dan grafiek. En dan blader je eventueel naar de laatste optimalisatie berekening.
Dankje. Bij reports kan ik wel een prognose en plan vinden voor de volgende dag.
Bij home kan ik alleen het laatste rapport bekijken. Dit is gegenereerd op 22-10-2025 om 21:00 (toen day ahead prijzen etc al bekend waren).

Moet ik de grafiek interpreteren alsof hij voor morgen is? Dus komende uren en vanaf links voor na 0:00?


Niet home maar Reports en dan grafiek en dan morgen selecteren. Wekker staat om 5:00. bedankt voor alle hulp!

[ Voor 11% gewijzigd door Animal op 22-10-2025 21:57 ]


  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op woensdag 22 oktober 2025 @ 21:51:
[...]

Dankje. Bij reports kan ik wel een prognose en plan vinden voor de volgende dag.
Bij home kan ik alleen het laatste rapport bekijken. Dit is gegenereerd op 22-10-2025 om 21:00 (toen day ahead prijzen etc al bekend waren).

Moet ik de grafiek interpreteren alsof hij voor morgen is? Dus komende uren en vanaf links voor na 0:00?
Klopt, links is eerstvolgende uur en loopt zo door naar rechts tot zover de uurprijzen bekend zijn (uren staan er ook onder). Elk uur dat er een nieuwe berekening wordt gemaakt een nieuwe grafiek met een uur minder (links eraf) en om 13u komen er weer 24 uur bij voor de volgende dag aan de rechterkant.

  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op woensdag 22 oktober 2025 @ 21:51:
[...]

Dankje. Bij reports kan ik wel een prognose en plan vinden voor de volgende dag.
Bij home kan ik alleen het laatste rapport bekijken. Dit is gegenereerd op 22-10-2025 om 21:00 (toen day ahead prijzen etc al bekend waren).

Moet ik de grafiek interpreteren alsof hij voor morgen is? Dus komende uren en vanaf links voor na 0:00?


Niet home maar Reports en dan grafiek en dan morgen selecteren. Wekker staat om 5:00. bedankt voor alle hulp!
Ik heb het over deze:
Afbeeldingslocatie: https://tweakers.net/i/0mKm4CXnPO_DvwZIMo_85PVXYv8=/x800/filters:strip_exif()/f/image/2lmMIMMqwvINW05VHuNgMoq1.png?f=fotoalbum_large

  • Animal
  • Registratie: Maart 2002
  • Laatst online: 04-12 21:49
Torch1969 schreef op woensdag 22 oktober 2025 @ 21:57:
[...]

Klopt, links is eerstvolgende uur en loopt zo door naar rechts tot zover de uurprijzen bekend zijn (uren staan er ook onder). Elk uur dat er een nieuwe berekening wordt gemaakt een nieuwe grafiek met een uur minder (links eraf) en om 13u komen er weer 24 uur bij voor de volgende dag aan de rechterkant.
Maar dan zou dus de 21:00 balk hetzelfde moeten zijn? (levering is een klein beetje minder bij de linker 21:00 uur)
Of is heel deze grafiek voor morgen en niet voor vandaag?

Overigens kan ik bij Reports>>grafiek wel morgen kiezen en de hele dag bekijken. Maar misschien interpreteer ik de grafiek bij Home niet goed
Afbeeldingslocatie: https://tweakers.net/i/72phhzDMyL1-YrLDEDuCLLjHYj8=/800x/filters:strip_exif()/f/image/eurXoNwxHYT5zdieHOXBiMBc.png?f=fotoalbum_large

[ Voor 11% gewijzigd door Animal op 22-10-2025 22:04 ]

Torch1969 schreef op woensdag 22 oktober 2025 @ 21:24:
[...]

Fijn, ga je de wekker op vannacht 4 uur zetten om te kijken of het werkt? ;) of plant DAO voor jou dan geen laadmomentje.

[Afbeelding]

@KC27 er lijkt nog een foutje in de balkjes te zitten. Als de teruglevering accu in én teruglevering is (zie morgen 13u), dan is het oranje balkje (accu in) niet lang genoeg. (Versie 2025.10.4)
Ik zie het.
Ik ga ernaar kijken.
Dank voor de tip!

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • CopyCatz
  • Registratie: September 2000
  • Laatst online: 23:44
@KC27 Hoe moet ik deze setting interpreteren?

entity set operating mode string Optioneel. Entiteit in HA waarmee je de omvormer aan/uit zet. Type "input_select" met minimaal opties "Aan" en "Uit". Hiermee kun je een automatisering triggeren die de benodigde acties uitvoert.

Ik zou graag willen dat de operating mode mijn zendure settings kan aanpassen, dus "aan" zou moeten worden "handmatig" en "uit" "standby". Vanwege het "minimaal opties" dacht ik dat dit te configureren of te mappen was. Of moet ik gewoon een automatisering laten kijken naar de DAO waardes en ze omzetten?

Edit: in de source gevonden dat het wel letterlijk Aan en Uit moeten zijn. Het zou heel tof zijn om in de config een mapping te kunnen opgeven, dan kan de batterij rechtstreeks worden aangestuurd.

dus zoiets als:

"entity set operating mode": "input_select.dao_zendure_operating_mode",
"entity set operating mode on": "Aan",
"entity set operating mode off": "Uit",

Zodat ik ze kan aanpassen.

[ Voor 25% gewijzigd door CopyCatz op 22-10-2025 22:58 ]

Gelukkig werkt mijn laptop weer :) .
Ik heb de fout gevonden en gerepareerd (iets met kwartieren :? )
Wordt in de volgende versie opgeleverd!

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • Torch1969
  • Registratie: Juni 2013
  • Laatst online: 20:43
Animal schreef op woensdag 22 oktober 2025 @ 22:01:
[...]

Maar dan zou dus de 21:00 balk hetzelfde moeten zijn? (levering is een klein beetje minder bij de linker 21:00 uur)
Of is heel deze grafiek voor morgen en niet voor vandaag?

Overigens kan ik bij Reports>>grafiek wel morgen kiezen en de hele dag bekijken. Maar misschien interpreteer ik de grafiek bij Home niet goed
[Afbeelding]
Links is 21u vandaag, rechts is 21u morgen. Dus grafiek is voor resterende uren van vandaag en heel morgen. Ik vermoed dat het balkje bij vandaag wat korter is omdat dit de grafiek is van een berekening van iets na 21u? Dan berekent DAO maar voor het resterende deel van dat uur, en dat is dus wat minder dan voor een heel uur….
CopyCatz schreef op woensdag 22 oktober 2025 @ 22:15:
@KC27 Hoe moet ik deze setting interpreteren?

entity set operating mode string Optioneel. Entiteit in HA waarmee je de omvormer aan/uit zet. Type "input_select" met minimaal opties "Aan" en "Uit". Hiermee kun je een automatisering triggeren die de benodigde acties uitvoert.

Ik zou graag willen dat de operating mode mijn zendure settings kan aanpassen, dus "aan" zou moeten worden "handmatig" en "uit" "standby". Vanwege het "minimaal opties" dacht ik dat dit te configureren of te mappen was. Of moet ik gewoon een automatisering laten kijken naar de DAO waardes en ze omzetten?
Je kunt twee dingen in HA doen:
  1. een input_select maken met de opties "Aan" en "Uit" en daar een automation aanhangen,die dat vertaalt naar jouw instellingen en deze doorzet naar jouw batterij
  2. de "entity set operating mode" helemaal weglaten in de settings en uit de waarde van de entity die je opgeeft bij "entity set power feedin" bepalen of je de omvormer naar "handmatig" (als waarde <>0) of "standby" (als waarde = 0) moet zetten.
Edit:
mappings klinkt leuk, maar is nu even te veel werk. Ik zet het op het to-do lijstje.
Maar als jij tijd over hebt, "be my guest" : maak een fork, pas het aan en dien een Pull Request in.

[ Voor 7% gewijzigd door KC27 op 22-10-2025 23:04 ]

WP: Alpha Innotec MSW2-6S | PV: 20 x 300 Wp AEG | ACCU: 2x16x280Ah LiFePO4 3 x Multiplus II 48/3000 | DYN: Tibber | Gasloos | Day Ahead Optimizer


  • CopyCatz
  • Registratie: September 2000
  • Laatst online: 23:44
KC27 schreef op woensdag 22 oktober 2025 @ 22:59:
[...]

Je kunt twee dingen in HA doen:
  1. een input_select maken met de opties "Aan" en "Uit" en daar een automation aanhangen,die dat vertaalt naar jouw instellingen en deze doorzet naar jouw batterij
  2. de "entity set operating mode" helemaal weglaten in de settings en uit de waarde van de entity die je opgeeft bij "entity set power feedin" bepalen of je de omvormer naar "handmatig" (als waarde <>0) of "standby" (als waarde = 0) moet zetten.
Had het al gezien, thanks. Zie mijn edit hierboven.
Pagina: 1 ... 18 ... 23 Laatste