Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Solaredge Local incorrect temperature conversion in dev branch #27065

Closed
adamj12b opened this issue Sep 30, 2019 · 4 comments · Fixed by #27096
Closed

Solaredge Local incorrect temperature conversion in dev branch #27065

adamj12b opened this issue Sep 30, 2019 · 4 comments · Fixed by #27096

Comments

@adamj12b
Copy link

Home Assistant release with the issue:

0.99.3
Last working Home Assistant release (if known):

Operating environment (Hass.io/Docker/Windows/etc.):

Hass.io

Component is installed in the custom component folder for testing. Stock install otherwise.

Component/platform:

Main Component - https://www.home-assistant.io/components/solaredge_local/
#26708 - Caused Issue

Description of problem:
@scheric Temperatures are being converted to Celsius when the inverter is providing temperatures in Fahrenheit. This is causing Home Assistant to convert the temperatures for display in Fahrenheit causing them to be off. Example. Inverter is reporting 78F, HA is displaying 172F (78C converts to 172F)

I change:
"inverter_temperature": [ "invertertemperature", "Inverter Temperature", TEMP_CELSIUS, "mdi:thermometer", ],

to:
"inverter_temperature": [ "invertertemperature", "Inverter Temperature", TEMP_FAHRENHEIT, "mdi:thermometer", ],

This proved my suspicions of double conversion of the temperature, but is not a fix as it would cause a similar issue with inverter reporting in Celsius.

See attached images of what the inverter is displaying and that HA is displaying.

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

Traceback (if applicable):


Additional information:
image
image

@scheric
Copy link
Contributor

scheric commented Sep 30, 2019

Are those images taken at the same time?
My program does not convert the temperature. Does HA convert stuff on its own without telling me?

Do you think the optimizer temperature is off to?

Would you mind changing the logger mode to debug and giving me the output or executing this python and giving me the output. And compare these values With HA and with the HTML page.

from solaredge_local import SolarEdge
se_client = SolarEdge("http://[inverter_ip]")

status = se_client.get_status() 
maintenance = se_client.get_maintenance() 

print(f"optimizer data:\n {maintenance.diagnostics.inverters.primary.optimizer[0]}")
print(f"country code: {status.country}")
print(f"inverter data:\n {status.inverters}")

possible fixes:

  1. Calculate the temperature so they are only visible in one unit (hotfix)
  2. Change the unit during setup. (longer fix)
  3. Remove temperature readings (only if people really hate it)

notes:

My HA instance got corrupted so i can not test anything at this moment.
I am located in Europe so my inverter only logs in °C

@adamj12b
Copy link
Author

@scheric I am not sure how to verify the optimizer temperature so it is hard to verify that.

The previous images were taken at the same time.

I have run the python script with results below. I have removed serial numbers.

`optimizer data:
serialNumber: "xxxxxxxxx"
online: true
lastReport {
year: 2019
month: 9
day: 30
hour: 14
minute: 53
second: 46
}
outputV: 25
inputV: 56
inputC: 4
temperature {
value: 42
}

country code: 12
inverter data:
primary {
dspSn: "xxxxxxxxx"
voltage: 395.17840576171875
optimizersStatus {
total: 47
online: 47
}
temperature {
value: 159
units {
farenheit: true
}
}
subSystem: 6144
}
`
Here is a screenshot of the inverter status page at the same time as the python script was run.
image

My Observations:
Optimizer temperature is reported as 42. When converting this to Fahrenheit I get 107F. I would agree based on weather today that the optimizers could be this warm.

Inverter temperature has a flag for Fahrenheit, which may be useful but the optimizers seem to be celsius all the time.

When the optimizers were all off last night, the system reported 32F which makes sense for 0C.

Temperature information should not be omitted from the component IMO.

Additional requests
I would also like to add DC voltage, AC Voltage, AC Frequency, Optimizer Status(total/online), and Import/Export meter sensors. I believe these would be better placed in a new pull request?

@probot-home-assistant
Copy link

Hey there @drobtravels, mind taking a look at this issue as its been labeled with a integration (solaredge_local) you are listed as a codeowner for? Thanks!

@adamj12b
Copy link
Author

Here is what I am seeing for optimizer information in HA. Inverter is reporting 102F.

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants