Enphase Envoy integration reporting inverters but not production

My Enphase Envoy integration is showing 0 for all production metrics but it’s showing accurate numbers for each inverter. Any ideas?

Going to http:///production.json gives:

{"production":[{"type":"inverters","activeCount":24,"readingTime":1606001754,"wNow":1103,"whLifetime":14052437},{"type":"eim","activeCount":0,"measurementType":"production","readingTime":1606001832,"wNow":0.0,"whLifetime":0.0,"varhLeadLifetime":0.0,"varhLagLifetime":0.0,"vahLifetime":0.0,"rmsCurrent":0.174,"rmsVoltage":241.744,"reactPwr":0.0,"apprntPwr":21.348,"pwrFactor":0.0,"whToday":0.0,"whLastSevenDays":0.0,"vahToday":0.0,"varhLeadToday":0.0,"varhLagToday":0.0}],"consumption":[{"type":"eim","activeCount":0,"measurementType":"total-consumption","readingTime":1606001832,"wNow":0.0,"whLifetime":0.0,"varhLeadLifetime":0.0,"varhLagLifetime":0.0,"vahLifetime":0.0,"rmsCurrent":0.439,"rmsVoltage":241.737,"reactPwr":-0.0,"apprntPwr":106.218,"pwrFactor":0.0,"whToday":0.0,"whLastSevenDays":0.0,"vahToday":0.0,"varhLeadToday":0.0,"varhLagToday":0.0},{"type":"eim","activeCount":0,"measurementType":"net-consumption","readingTime":1606001832,"wNow":0.0,"whLifetime":0.0,"varhLeadLifetime":0.0,"varhLagLifetime":0.0,"vahLifetime":0.0,"rmsCurrent":0.265,"rmsVoltage":241.73,"reactPwr":-0.0,"apprntPwr":32.056,"pwrFactor":0.0,"whToday":0,"whLastSevenDays":0,"vahToday":0,"varhLeadToday":0,"varhLagToday":0}],"storage":[{"type":"acb","activeCount":0,"readingTime":0,"wNow":0,"whNow":0,"state":"idle"}]}

http:///api/v1/production shows:

{
  "wattHoursToday": 31897,
  "wattHoursSevenDays": 252354,
  "wattHoursLifetime": 14052437,
  "wattsNow": 1103
}

Software version is D5.0.49, Home Assistant version is 0.116.4

I have a similar problem. I can retrieve the inverter values fine, but the current production value is -3 or -4. Looking at api/v1/production:

{
  "wattHoursToday": 813,
  "wattHoursSevenDays": 8452,
  "wattHoursLifetime": 3766972,
  "wattsNow": 225
}

Looking at production.json:

{"production":[{"type":"inverters","activeCount":16,"readingTime":1607255826,"wNow":223,"whLifetime":3766973},{"type":"eim","activeCount":0,"measurementType":"production","readingTime":1607256042,"wNow":-3.717,"whLifetime":0.0,"varhLeadLifetime":0.0,"varhLagLifetime":0.0,"vahLifetime":0.0,"rmsCurrent":0.322,"rmsVoltage":695.944,"reactPwr":1.582,"apprntPwr":74.438,"pwrFactor":-0.1,"whToday":0.0,"whLastSevenDays":0.0,"vahToday":0.0,"varhLeadToday":0.0,"varhLagToday":0.0}],"consumption":[{"type":"eim","activeCount":0,"measurementType":"total-consumption","readingTime":1607256042,"wNow":-4.466,"whLifetime":0.0,"varhLeadLifetime":0.0,"varhLagLifetime":0.0,"vahLifetime":0.0,"rmsCurrent":-0.005,"rmsVoltage":695.836,"reactPwr":-1.548,"apprntPwr":-3.428,"pwrFactor":-1.0,"whToday":0.0,"whLastSevenDays":0.0,"vahToday":0.0,"varhLeadToday":0.0,"varhLagToday":0.0},{"type":"eim","activeCount":0,"measurementType":"net-consumption","readingTime":1607256042,"wNow":-0.749,"whLifetime":0.0,"varhLeadLifetime":0.0,"varhLagLifetime":0.0,"vahLifetime":0.0,"rmsCurrent":0.326,"rmsVoltage":695.729,"reactPwr":0.034,"apprntPwr":76.236,"pwrFactor":0.0,"whToday":0,"whLastSevenDays":0,"vahToday":0,"varhLeadToday":0,"varhLagToday":0}],"storage":[{"type":"acb","activeCount":0,"readingTime":0,"wNow":0,"whNow":0,"state":"idle"}]}

I get the impression that the “sensor” is getting the value from the wrong field.

Versions:

Home Assistant: 0.118.5
envoy:

Software Version
R4.10.35 (6ed292)

There was a bug found where the envoy_reader API was reading the wrong value. A fix has been created which grabs the Production data according to how the Envoy is configured.

I was hoping the fix would be in the 0.119.0 release, but I’m not too sure if that will be released or if they will jump to 1.0.0.

Here’s the link to the PR in GitHub.

1 Like

Hi gregtd, thanks for your reply. I can see it’s not yet released with 0.118.5, but the RC 1.0.0b5 seems to contain it. I don’t know the release scheme of HAS but I am assuming here that it will get released in the next version.

Hey Greg, looks like part of this fixed the problem in 2020.12.0. When I restart HA, I now get values for all four envoy production sensors. However, it never refreshes unless I restart the server. Wonder if it is on my end…

@blike ~What firmware version is running on your Envoy?~

Oh never mind I see it in a previous post. I was checking on my phone at work. That is strange only the API changed so if the data comes through once it should continue. I’ll take a look at it tonight though.

Yeah, unfortunately I see the same behavior. For some reason, the data is retrieved but after the second poll, Home Assistant continues to say it is retrieving the same data. Since it’s the same value, it appears like it has not updated. I’ll keep looking into this!

I found the problem. It was a coding error on my part. I feel so bad! Anyway, I have made the change and am working on a PR now. And have to figure out the process of getting this fix into the next bugfix-release of Home Assistant.

Mine has also failed today on the new version. Will only pull updates on restart.

@gregtd nice work, thank you!

Just to report that i ahve the same issue.

For now downgrade from 2020.12 to 0.118.4

After the update yesterday Enphase readings started working again. Thank you for all your help.