SolarEdge solar panels support

As far as I know current power flow is only available with dedicated solar edge hardware? I’ve tried to set it up before but since I don’t interface the inverter to my home smart meter this wasn’t available according to SE support?

Hey Gido!
cool this is happening. My many efforts have been successful for these sensors, (on several other attempts I get the error for authentication):

se_equipment_list_resource: https://monitoringapi.solaredge.com/equipment/ID/list?api_key=KEY
se_overview_resource: https://monitoringapi.solaredge.com/site/ID/overview.json?api_key=KEY
se_inventory_resource: https://monitoringapi.solaredge.com/site/ID/inventory?api_key=KEY
se_site_details_resource: https://monitoringapi.solaredge.com/site/ID/details?api_key=KEY

Current power flow (is only available with dedicated hardware connecting the DSMR or home install to the SE inverter but might be useful for those that have that):
se_currentpowerflow_resource: https://monitoringapi.solaredge.com/site/ID/currentPowerFlow.json?api_key=KEY

So that means you’ve only got inventory details to add after site details and equipment overview. Would you consider doing so?

According to the api it should also be possible to have a power request for a certain period of time, bit I’ve never been able to test that. It could be something your component could take care of? creating an input-number for a certain set of daytime settings and have the produced power displayed. Just a thought.

Thanks a bunch!

1 Like

is this a Lovelace card or is this in another interface? Would like to create something like that, and I have the 3 sensors available…

26

Would you care to share that code please, with your images?
btw, how would this display the surplus of power production going back to the grid? Or would the right side wattage simply turn negative?

Cool, thanks

1 Like

Yes of course, this is available only with dedicated hardware. You need to have the current power flow measurement device connected to your SE.

I have a Solar Edge SE4000 inverter. Again, most of them provide this function, it is just a matter of adding the hardware (which is not rocket science)

is it this current transformer what your are using: https://www.solaredge.com/us/products/metering-and-sensors ?

This : https://www.solaredge.com/us/products/metering-and-sensors/current-transformers-for-solaredge-residential-electricity-meters#/

a ok, thanks. Thats a 1 phase converter, also on the page I linked. Cool. I would need a 3 phase though which is there too.
Where do these go? on the powerfeed/line from the solar edge converter, or in the home meter installation board where consumption is measured?

Hey Marius, you’re welcome. I’ve just submitted a new pull request which will add some new sensors to the SolarEdge component, have a look here. It will add site and inventory details (last one split per device group). For example, for inverters the sensor state will be the number of inverters and each inverter will be available as an attribute.

I’ll have a look at the powerflow, nice feature of SolarEdge. It will be difficult to test as my setup doesn’t support this but I see what I can do. Do you (or @divirg, or anyone else) have suggestions on how these sensors/states would look like?

No I am sorry, I don’t have these current transformers installed, and right now all I get is an empty list using that api call.

Will check your component shortly. Since I didn’t yet update to 0.85, and won’t probably for a while (so many issues reported I don’t want to suffer just yet…), I take it I can download your component and file it under the custom_components folder?

No problem, the documentation gives some insights that should help me. And yes, you can download the component and place it in the custom_components folder. In release 0.85 you’ll find the original version, the current pull request (which is under review) contains the latest version (which you can also find here). Happy to hear some feedback.

sure, but first: am I correct whit this setup:

- platform: solaredge
  api_key: !secret se_api_key
  site_id: !secret se_site_id
  name: SolarEdge platform
  monitored_conditions:
    - current_power
    - last_day_data
    - last_month_data
    - last_year_data
    - life_time_data
    - site_details
    - inventory_meters
    - inventory_sensors
    - inventory_gateways
    - inventory_batteries
    - inventory_inverters

I ask because the bottom inventory sensors use the word inventory, while the top sensors don’t use ‘overview’. Since that is the setup I use now and that makes it clear form which sensor the template sensors are derived, it might be worth checking if that should be change in the setup, to reflect which apical creates the sensors? Especially if you add the others too later on.

compare this:

solaredge_current_power:
  friendly_name: 'SolarEdge Current Power Production'
  value_template: >
    {{ states.sensor.solaredge_overview.attributes.overview.currentPower.power | float | round(2) }}
  unit_of_measurement: 'W'

solaredge_lastday_energy:
  friendly_name: 'SolarEdge Last Day Energy Production'
  value_template: >
    {{ (states.sensor.solaredge_overview.attributes.overview.lastDayData.energy | float / 1000) | round(2) }}
  unit_of_measurement: 'kWh'

base on the api call Overview:

- platform: rest
  name: Solaredge overview
  scan_interval: 400
  json_attributes:
    - overview
  value_template: '{{ value_json.states }}'
  resource: !secret se_overview_resource
1 Like

Hi, would luv to see the Power Flow…if it helps, here is my output:

{“siteCurrentPowerFlow”:{“updateRefreshRate”:5,“unit”:“kW”,“connections”:[{“from”:“GRID”,“to”:“Load”},{“from”:“PV”,“to”:“Load”}],“GRID”:{“status”:“Active”,“currentPower”:0.31},“LOAD”:{“status”:“Active”,“currentPower”:0.56},“PV”:{“status”:“Active”,“currentPower”:0.25}}}

TotalPower->House = 0.56 kW
PV->House = 0.25 kW (yes its a very cloudy day :frowning: )
Grid->House = 0.31 kW

1 Like

@GidoHakvoort
Sorry to report my first impression is not as positive as I had hoped for. The component seems to use many resources, or at least interfere with my HA instance a lot. I’ve had a full set of rest sensors to the SE api before, and that caused the same issues. Most importantly: It takes out Hue… there’s a whole separate world in HA on that, but Ive been able to minimize that, by stop using rest sensors. Each and every time I try to reinstall those, my systems stops responding correctly, errors out, and kills the Hue setup.

Same here. I installed your CC with my settings posted few posts above (as a Custom component since I still use 0.84.3), and all seemed alright, sensors got initialized and displayed in the front-end.
But then my HA became unresponsive and my Hue lights, and now sensors (new CC) got unavailable, with many connecting to Hue errors as a consequence.

So, I must ask you, does this component do a lot of I/O, which is said to be the cause for these issues?

If I’d tell you I remember I would lie :slight_smile:

I am sure it’s in the main panel of my house and in my opinion it’s on the line coming from the grid to measure which way the current is flowing and then knowing: actual consumption, power export, power self consumed.

I could provide some example of the typical cases, excess of production or not enough production so that you can see the json.

Hi @Mariusthvdb, Thanks for giving it a try and sorry to hear you’re having some issues. As far as I know the component uses very little I/O. HA will try to read new data from the component every 10 minutes. Overview data is refreshed every 10 minutes and site/inventory details are only updated every 12 hours (due to SE data-rate limits). I have been using the component for a few months without any issue (but then again, I have no Hue lights so never ran into this issue). Do you have any idea how these two might interfere?

Thanks, that would be very useful!

no, I am not educated enough on the internals of HA, but d have a lot of user experience… :wink:
the Hue issue has been around for some time now (ever since it went asyncio) and many people suffer the Hue to go unavailable. Is seems that behavior has been seen as an indicator of things going wrong, as opposed to the Hue implementation itself being the issue.

That being said, Rest sensors tend to take their toll in the HA setup, at least in mine, and I try minimizing the use of them.

will reinstall again, take out the inventory (since it isn’t of much need in my setup) and see what happens.

btw, before I had this:

solaredge_inventory_name:
  friendly_name: Name
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].name}}'
solaredge_inventory_manufacturer:
  friendly_name: Mnf
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].manufacturer}}'
solaredge_inventory_model:
  friendly_name: Model
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].model}}'
solaredge_inventory_communication:
  friendly_name: Comm
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].communicationMethod}}'
solaredge_inventory_dsp1:
  friendly_name: Dsp1
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].dsp1Version}}'
solaredge_inventory_dsp2:
  friendly_name: Dsp2
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].dsp2Version}}'
solaredge_inventory_cpu:
  friendly_name: Cpu
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].cpuVersion}}'
solaredge_inventory_sn:
  friendly_name: Sn
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].SN}}'
solaredge_inventory_optimizers:
  friendly_name: Opt
  value_template: '{{states.sensor.solaredge_inventory.attributes.Inventory.inverters[0].connectedOptimizers}}'

and I don’t think your component returns these values? please have a look if we are talking about the same ‘Inventory’ api call?

Site-details would be cool too:

  solaredge_sitedetails_id:
    friendly_name: Id
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.id}}'
  solaredge_sitedetails_name:
    friendly_name: Name
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.name}}'
  solaredge_sitedetails_account_id:
    friendly_name: Account id
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.accountId}}'
  solaredge_sitedetails_status:
    friendly_name: Status
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.status}}'
  solaredge_sitedetails_peakpower:
    friendly_name: Peak power
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.peakPower}}'
  solaredge_sitedetails_lastupdatetime:
    friendly_name: Last update time
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.lastUpdateTime}}'
  solaredge_sitedetails_installationdate:
    friendly_name: Installation date
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.installationDate}}'
  solaredge_sitedetails_ptodate:
    friendly_name: Pto date
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.ptoDate}}'
  solaredge_sitedetails_type:
    friendly_name: Type
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.type}}'
  solaredge_sitedetails_country:
    friendly_name: Country
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.location.country}}'
  solaredge_sitedetails_city:
    friendly_name: City
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.location.city}}'
  solaredge_sitedetails_address:
    friendly_name: Address
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.location.address}}'
  solaredge_sitedetails_zip:
    friendly_name: Zip code
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.location.zip}}'
  solaredge_sitedetails_tz:
    friendly_name: Time zone
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.location.timeZone}}'
  solaredge_sitedetails_countrycode:
    friendly_name: Country code
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.location.countryCode}}'
  solaredge_sitedetails_manufacturer:
    friendly_name: Manufacturer
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.primaryModule.manufacturerName}}'
  solaredge_sitedetails_modelname:
    friendly_name: Model name
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.primaryModule.modelName}}'
  solaredge_sitedetails_maxpower:
    friendly_name: Maximum power
    value_template: '{{states.sensor.solaredge_site_details.attributes.details.primaryModule.maximumPower}}'
1 Like

@Mariusthvdb, I could try to add an additional timeout to the requests but I’m not sure that’ll help (plus this would be better in the library it’s using). Maybe try the current release (link) which does not have the site/inventory details. At least we can exclude if it has something to do with the latest version.

sure, will do later on, have to walk the dogs first. 10km per day (next to HA experimenting) keeps the doctor away ;=)