My battery's "Available Energy" always reports the same value (9,529 kWh) #886
Replies: 4 comments
-
The integration does only report what it receives over modbus. It does not calculate anything. There are internal checks to avoid displaying bad data (and options to allow it in the case of battery energy in/out) but when these trigger the entity will show unavailable state, we will never change a reported value. You can download the diagnostic file at different times which shows the internal raw data as hex values. Many of the battery values are IEEE float so you will need to convert them (https://www.h-schmidt.net/FloatConverter/IEEE754.html) |
Beta Was this translation helpful? Give feedback.
-
Thanks for your notes and clarifications. It would appear that the inverter is to blame in this case. I'm considering to just define a template helper that multiplies the State of Charge and the rated storage capacity of my batteries and call it "Stored Energy" or something along those lines. It just means I have to accept and trust that the State of Charge % is accurate (and why wouldn't it? ;) ). In any event: huge thanks for creating this integration, it is amazing and for a data hungry nerd like me it provides so much fun! By the way: I guess Maximum Energy kind of represents the total physical storage present in the batteries, meaning there's a little buffer above the capacity on the spec sheet? I've got something similar in my EV I believe, it's rated for 64 kWh but according to the dealership the actual battery capacity is about 5% higher... Same with the SolarEdge batteries? |
Beta Was this translation helpful? Give feedback.
-
My understanding is that they have oversized the capacity from the name plate, so there will be times when it will report higher. In my tests I have found when it does report higher, I can pretty much extract that value of energy from the battery (when going from 100-0%). I use this value, plus the state of energy to define what quantity of energy is left in the battery, as I find it more meaningful to determine if my other automation (and Predbat) is planning correctly. E.g if I understand that the battery has 2kWh left, and my heat pump and house is consuming 750w I know how much time I've got left. I typically use this to help me track consumption until the next cheap electricity rates on our time of use tariff. |
Beta Was this translation helpful? Give feedback.
-
Thanks for sharing that, seems to confirm what I've noticed. Thanks also for pointing me in the direction of Predbat, that looks very interesting and definitely worth a look! Am I correct in assuming that in your case, the "Available Energy" sensor is also always reporting a fixed value and not changing along with the "State of Energy" sensor? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Describe the bug
I had my batteries installed on July 10 (along with a swap of my inverter to make it compatible with batteries).
My battery setup is that I have two 4,6 kWh 48V batteries, so on the spec sheet they're supposed to be able to store 9,2 kWh.
From the first day, the "Maximum Energy" sensor reported 9,2 kWh, but on July 23 (so almost 2 weeks after installation) that sensor changed to 9,7 kWh. I think some sort of calibration was completed and the actual battery capacity was determined.
The "Available Energy" sensor initially didn't have a value.
The same day the "Maximum Energy" sensor changed (increased) on July 23, the "Available Energy" sensor started reporting, initially 9,626 kWh (and static), and on July 27 it changed to 9,529 kWh. And it has been at that value ever since (I'm writing this on August 10).
The "State of Charge" percentage sensor is constantly changing during the day and night, and I was expecting that the Available Energy would reflect that percentage but expressed in Energy (so kWh). Hence my surprise that Available Energy has been stuck at the same value for 3 weeks.
It could be that the inverter is somehow mistakenly reporting this as a static value, and this integration, and thus Home Assistant is just reporting what it's receiving over modbus TCP. It could also be that for whatever reason it's reading the wrong Modbus register. I tried looking for clues in the source code and although I could find some references to 'AvailableEnergy' I quickly lost track of how it works.
I don't think this is related to issue #230 since the rated energy of the batteries is reported in the attributes as 9700.
Is there any other information I could provide to help diagnose this matter?
Expected behavior
I would expect that "Available Energy" reflects the stored amount of energy in the batteries, so fluctuating all the time along with the State of Charge percentage.
Screenshots
Diagnostic File
config_entry-solaredge_modbus_multi-01JZT7TB2EQG3C9HZR2E89NF8J.json
Debug logs
Home Assistant Version
2025.7.3
solaredge-modbus-multi Version
Version 3.1.6
Installation Type
Core
Read the Instructions
Additional Context
Note I'm using a comma as decimal separator, European user here ;)
Beta Was this translation helpful? Give feedback.
All reactions