Open vmangelschots opened 1 year ago
Hey there @frenck, mind taking a look at this issue as it has been labeled with an integration (solaredge
) you are listed as a code owner for? Thanks!
(message by CodeOwnersMention)
solaredge documentation solaredge source (message by IssueLinks)
It suddenly started working after 24 hours. Maybe I was too impatient. If anybody else has this problem with a new installation, I recommend waiting 24 hours.
Thx to all the people involved with the Home assistant project!
Apparently it's still not resolved. The reason I thought it was resolved was because the energy dashboard started to use the production energy statistics (the daily one) The lifeTimeData is still invalid
The same with my system: The integration stopped working after 5 weeks yesterday, lunch time. Until then it worked without any problem. Now no data will be monitored:
sensor.solaredge_current_power => Not available sensor.solaredge_lifetime_energy => Not available
the rest of all entities (provided by the integration) I cannot and could not use up to now.
If you need some details from myside for further help, please let me know, ...
I think, the problem is caused by SolarEdge response to ther "overview" API request. It provides incorrect data for last_year (means current_year) and last_month (means current_month) energy. My Solaredge installation was installed in 08/23. The values are always increasing and are always greater as the life_time energy. See these two responses for the API call for my installation below as examples:
\<overview> \<lastUpdateTime>2023-08-11 19:54:07\</lastUpdateTime> \<lifeTimeData> \<energy>43762.0\</energy> \</lifeTimeData> \<lastYearData> \<energy>43798.0\</energy> \</lastYearData> \<lastMonthData> \<energy>43798.0\</energy> \</lastMonthData> \<lastDayData> \<energy>2841.0\</energy> \</lastDayData> \<currentPower> \<power>0.0\</power> \</currentPower> \<measuredBy>INVERTER\</measuredBy> \</overview>
\<overview> \<lastUpdateTime>2023-08-11 20:09:07\</lastUpdateTime> \<lifeTimeData> \<energy>43782.0\</energy> \</lifeTimeData> \<lastYearData> \<energy>43818.0\</energy> \</lastYearData> \<lastMonthData> \<energy>43818.0\</energy> \</lastMonthData> \<lastDayData> \<energy>2861.0\</energy> \</lastDayData> \<currentPower> \<power>241.80513\</power> \</currentPower> \<measuredBy>INVERTER\</measuredBy> \</overview>
I have created an ticket in the SolarEdge portal to fix the API.
I installed/configured this integration recently for my solar install (dated March 2023), though all the sensors were created in a disabled state and upon manually enabling them all they all don't have any value assigned.
@tmack8001: You could check what result is provided when sending a SolarEdge Api request in the browser like e.g. https://monitoringapi.solaredge.com/site/your-siteid/overview?api_key=your-apikey modified with your site-ID and API-key. If that does not provide some energy values, the solaredge integation will also not be able to provide results. In addition you should enable debug logging for the integration for > 30 min and ckeck the (detailed) logs for solaredge related entries. The integration provides at least the sensor data it sends towards HA.
Getting no values for ALL solaredge integration sensor seems to be different from the problem for lifetime energy. This should affect the value for "Lifetime energy" and maybe also for "Energy this year", "Energy this month" and "Energy today".
I have checked the API when the solar installer set up that for me so that API is returning data
Similarly I see data being fetched in the debug logs as well
I was thinking of creating a new ticket, but from the looks of it ... no one is actively maintaining solaredge integration, given that it is a native integration the next thing I was thinking of doing is diving into the code and figuring out what is going on myself.
This is what I mean by no sensors having any assigned data, this was after I manually "enabled" them all one by one. Upon initial installation+configuration all the device entities were disabled for some reason, thought that maybe that is why data wasn't being reported to them... but nope even after enabling and restarting they still aren't assigned values.
For testing purpose I have:
With this change my "custom component solaredge" is reading lifeTimeData again.
@tmack8001: If you click aon e.g. solaredge(Lifetime energy), what does it show?
@tmack8001: If you click aon e.g. solaredge(Lifetime energy), what does it show?
I swear that this morning this wasn't working at all... no clue what changed, but now I see a value associated. Still doesn't explain why on a fresh install all these entities were disabled 😖 . Knew that as soon as I said something it was going to work.
@tmack8001: I was diving into the code myself, for fetching the battery charging and discharging energy values form the solaredge portal, so I can tell you that the sensors are marked with "entity_registry_enabled_default=False" in const.py. So it is intentionally. Maybe the idea is that you enable only the few sensors you neeed. For the energy dashboard you would need only 3 of them.
Interesting, thanks for that additional insight.
In that case I'd expect imported, exported and production to be enabled by default... allowing quick and easy Energy dashboard configuration for new users 🤷♂️.
Now that my entities have values I'll be looking to essentially recreate the mobile app into HA dashboards alongside my device consumptions 😉
Someone knows if there is a way to populate the other entities in the SolarEdge integration ? Because now it is indeed very limited :)
Probably this is more an own topic, but what "other entities" are you missing after activating entities provided by the integration? Is the information supplied by SolarEdge API? I feel the API does not provide best info if you have a system with DC-coupled battery, because most energy value show energy at the AC side and it is nearly impossibele to calculate the energy coming from the Solar pannels (e.g. Life time energy etc. alsways subtract/add energy to/from batteries). The value is sent by the inverter to SolarEdge (in the statics tab on the web-page it is possible get the energy graph for the lines of solar modules connceted to the inverter), but the value is not provided in the API.
I was able to enable a few of them right from within the UI. However I switched to the unofficial integration to get the information directly from the inverter through modbus via tcp(https://github.com/binsentsu/home-assistant-solaredge-modbus). Works like a charm but you need to switch this option on in your inverter.
Actually I was hoping for additional metrics like Selfconsumption and others, but when using the API calls I get no result either to be honest.
https://monitoringapi.solaredge.com/site/xxx/energyDetails?meters=CONSUMPTION&timeUnit=HOUR&startTime=2023-08-20 11:00:00&endTime=2023-08-20 12:00:00&api_key=xxxx
I just get an empty response back.
{
"energyDetails": {
"timeUnit": "HOUR",
"unit": "Wh",
"meters": []
}
}
You got the same result ?
@bjorndewulf: Seems there are no meters present. I have them populated in the result and in the integration. As long as no values are coming from proral the integration will not provide them either. Without these values it is not possible to configure the energy dashboard in a meaningful way. Your inverter is connected to internet and on the solaredge portal / APP you see decent values?
Thanks a lot @toms0601 ! Does it require an additional module to be installed ?
No, after installation of the integration in HA it should workand provide data to the aktivated sensors after 15 min, but it uses the API and it will not get data as long as your API calls do not provide data.
Thanks @toms0601, this is clear to me, but the fact the solaredge is not producing the data do you need to enable something additionally or add up some hardware ?
Not that I would know anything. Because you have an API key and a Side ID, I assume your account at SolarEdge is setup and working and you have accepted the API terms on the administation page. If the Web portal shows decend values it must be some issue on solaredge side,
The solaredge inverter only knows its own production. Not how it is used. For this you need an additional energy meter that sits between the grid and your own house. I myself opted not to take this energy meter because my old analogue utility meter will be replaced with a digital one that I can integrate with HA. As I understand it (but I am by no means an expert on this matter) when you use the solar edge energy meter and link this to the inverter through e.a. a modbus wire then the inverter reports grid import/export and self usage as well to the app and I can only assume that when you do this you would receive these values from the api as well
something like this : https://www.solaredge.com/en/products/metering-and-sensors/energy-meter-with-modbus-connection
Up to now, I have no response or progress with my ticket at SolarEdge to fix the LifeTimeEnergy values in the Overview API call response. If anyone whats to use the integration before @frenck as provided an update to the integration or before SolarEdge fixes the API, I guess, it is also possible to use the "Energy this year", "Energy this month" or "Energy today" sensors for the solar production in the energy dashboard instead of "Lifetime energy". Somewhere I read, that HA will take a drop of the sensor value for more than 10% as "sensor reset" and deal with the reset.
Please don't pull people into conversations by mentioning. I get you mean it friendly, but can come across demanding.
Thanks for understanding 👍
../Frenck
Hi Guys, I have the same issue since begin augustus. i'm getting the following errors, and the value is ignored.
2023-08-30 14:11:03.723 INFO (SyncWorker_6) [homeassistant.components.solaredge] Ignoring invalid energy value 1241247.0 for lifeTimeData 2023-08-30 14:11:03.724 DEBUG (SyncWorker_6) [homeassistant.components.solaredge] Updated SolarEdge overview: {'lastUpdateTime': '2023-08-30 14:10:27', 'lastYearData': 1241270.0, 'lastMonthData': 859688.0, 'lastDayData': 8213.0, 'currentPower': 1495.4628, 'measuredBy': 'INVERTER'}
Any development on this issue?
My ticket at SolarEdge is still "in progress". Their first statement was "Everything looks ok." and asked for more information. I have passed the requested information and stated again that from my point of view the lifeTimeEnergy value is not ok.
I have dived in more deeply in this issue. it looks like Solaredge is reporting higer LastYearData than the LifetimeData. In my case. there is a difference of 23 It looks to me that solaredge is reporting every time a higer lastyear data value than the lifetime data, so the value will never be larger, only next year.
This is the first year of usage, so maye next year the problem is solved automatically. Is it possible the add maybe 100 W to the check in the coordinator.py
if any(self.data[k] > self.data[key] for k in energy_keys[index:]):
LOGGER.info(
"Ignoring invalid energy value %s for %s", self.data[key], key
)
self.data.pop(key)
Thanks.
We have exactly the same issue. having the Solaredge since a few months. When I query the SolarEdge, the lastyear value is higher as the lifetime value. "lifeTimeData": { "energy": 726954 }, "lastYearData": { "energy": 726976
Changed the Lifetime value to Production Energy within Home Assistant. This was the only one I could select from the list. Hopefully this will solve the issue till the end of the year :-)
My ticket at SolarEdge for this issue has now been escalated to second level support.
My ticket at SolarEdge for this issue has now been escalated to third level support.
I'm experiencing the exact same as mentioned by toms0601. I have 2 site-id's (2 inverters). The first one is functioning fine and the LifeTimeData is larger than the lastYearData. The second instance did function fine until a certain moment in time. After verifying the data I can see that the LifeTimeData is smaller than the lastYearData. In the HA energy dashboard the first instance shows the right data and the second instance shows always 0 kWh. I'll create an issue with SolarEdge as well.
Now I understand what the issue is, I have this issue since April this year. My difference is even bigger:
In April I finally got the inverter I ordered. (Before that installation company made a mistake and delivered a smaller one than requested) So most likely the lastYearData is from both inverters, while the lifeTimeData is from the last one only.
The feedback from the SolarEdge support is really slow. I've opened the case on October 18th and the first respons was on October 30th: Some adjustments has been made on the system, please verify your data," what I immediately did and I've sent feedback that the problem still persists. Today, November 14th I've received new feedback: "We have updated the energy yield details of your site. The lifetime yield is now correct. Please let us know if the problem you expierienced is fully resolved and if we may close the case."
At this moment my lifetime energy shows 0.0 and therefore the problem has only increased, whereas the lastYearData, lastMonthData etc still show their original values.
@toms0601 how is your ticket progressing?
@Miggle007: There is no further reaction from SolarEdge support since the ticket was escalated to level 3 support.
I feel the problem will only disappear for us on Jan. 1st, when lastYearData is reset to 0. But it will reappear for other people that have their system setup in 2024. I have currently no pressure with this issue, because I am using a private adapted copy of the integration. I needed that anyhow, because I added API calls for storageData, so that I have also the my battery data available in HA.
It sounds like this won't be resolved by Solaredge. As I metioned before I switched to the modbus over tcp version of this integration through hacks so for me it works now. Shall I close this ticket as not fixed or do I leave it open for you guys ?
I would give it some more time. If the ticket is closed now, someone else will have the same issue and will create another ticket. If no solution is provided by SolarEdge, I think, that some workaround in the HA SolarEdge Integration would be the best.
If no solution is provided by SolarEdge, I think, that some workaround in the HA SolarEdge Integration would be the best.
I develop a custom integration that uses modbus for SolarEdge inverters and that is definitely a moving target. I have a big list of known problems that I suspect will never get fixed. Plus someone just reported that the latest firmware version for the home hub inverter randomly has lifetime watt-hour values going backwards which breaks sensor entities that use the TOTAL_INCREASING
state class. So yeah SolarEdge is slow to fix things, if they ever do.
Yesterday, I received feedback from SolarEdge Support, that the problem should be fixed. Actually only the difference was smaller. Previously it was 23 Wh now it is 14 Wh. hey did not indicate what they have changed.
I have this issue since october. But since our installation has more problems i thought it was 'my fault'. Hardware issues are resolved this week, but didn't resolve the problem. Submitted email to Solaredge but from what I read here it will be a case of 'fingers crossed'....
I did not receive any update by SolarEdge till end of 2023. Now the last_year_data value is reset. This means, I can no longer see whether the problem ist still present or not. I have asked the Solarege support to close my ticket. Anyone affected by this problem in 2024 with a new installation, should create a new ticket at the solaredge support.
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.
Same issue for me, lifetime energy become unavailable because, for some reason, lastYearData is greater than lifeTimeData `
`
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.
@bdraco do you have a solution ?
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.
New year 2024 solved my issue
Op zo 29 sep 2024 12:06 schreef issue-triage-workflows[bot] < @.***>:
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.
— Reply to this email directly, view it on GitHub https://github.com/home-assistant/core/issues/98093#issuecomment-2381294215, or unsubscribe https://github.com/notifications/unsubscribe-auth/APB7CMECOJZA34JR7JYMAMDZY7GKHAVCNFSM6AAAAAA3JPYWJSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGOBRGI4TIMRRGU . You are receiving this because you commented.Message ID: @.***>
The problem
TL;DR: Sanity check on lifeTimeData is to strick
I have a new solaredge installation and tried adding it to Home assistant. I don't have any monitoring besides the inverter itself so by default it only loads lifeTimeData and current_power. This is fine but the lifeTimeData value is unkown in home assistant. After enabling debugging I could see that I do get a somewhat sane value:
Ignoring invalid energy value 14167.0 for lifeTimeData
However if I compare it to the other data lifeTimeData does lag behind on the other data:
Updated SolarEdge overview: {'lastUpdateTime': '2023-08-09 07:41:13', 'lastYearData': 17193.0, 'lastMonthData': 17193.0, 'lastDayData': 103.0, 'currentPower': 121.57041, 'measuredBy': 'INVERTER'}
So I assume the sanity check of the data compares the lifeTimeData to the lastYearData and finds that it isn't correct. But I need the LifeTimeData for integration in my energy dashboard.
Any idea how I could resolve this?
What version of Home Assistant Core has the issue?
core-2023.8.1
What was the last working version of Home Assistant Core?
No response
What type of installation are you running?
Home Assistant OS
Integration causing the issue
Solaredge
Link to integration documentation on our website
https://www.home-assistant.io/integrations/solaredge/
Diagnostics information
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
Additional information
No response