Enphase Envoy-S Metered- Integration Error

Hi all-

I recently purchased a used Envoy-S Metered to work with my M-Series Enphase microinverters- it has detected the micros, and it has a CT for PV production (nothing for consumption yet).

I figured I’d post here before creating a Github issue…

The Envoy looks like it’s running firmware version M4.2.33 (pretty old!), and I’m able to access quite a bit of data just off the bat with no auth, as well as the installer/admin side of things using ‘installer’ and the installer password pulled using that python script :).

All that said, I’m not able to get the Home Assistant integration working. The integration looks like it’s connecting, but I’m seeing an immediate error: “Failed setup, will retry: ‘measurementType’” . I’ve tried every combination of username password to see if it makes any difference, and it doesn’t seem to do anything.

Looking at the debug logs, it looks like it’s looking for a json key that doesn’t exist:

Unexpected error fetching Envoy 123456789 data
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 380, in _async_refresh
    self.data = await self._async_update_data()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/enphase_envoy/coordinator.py", line 196, in _async_update_data
    envoy_data = await envoy.update()
                 ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/pyenphase/envoy.py", line 621, in update
    await self.probe()
  File "/usr/local/lib/python3.13/site-packages/pyenphase/envoy.py", line 560, in probe
    if updater_features := await klass.probe(supported_features):
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.13/site-packages/pyenphase/updaters/production.py", line 105, in probe
    meter_type = meter["measurementType"]
                 ~~~~~^^^^^^^^^^^^^^^^^^^
KeyError: 'measurementType'

Anyone have thoughts on this/next steps/things I should try?

And secondly, should I cut this device off the internet so Enphase can’t push the new firmware to it? I kind of like the idea of being able to access the data/functionaly wholly from my LAN without using their cloud auth server.

cc: @catsmanac

Hi @rookie-tookie-867, that’s an old firmware for sure. Looking at the details we should be able to fix it. I expect the missing consumption CT, in this firmware, results in a different data format as currently expected.

Can you create an issue for the enphase_envoy integration in Home Assistant GITHUB issues? If possible, include the result of opening the /production webpage on the envoy in your browser so we can see what data it includes for your case.

As for the second question, that’s a personal choice to make. Newer firmware versions offer new functionality e.g. with regards to batteries, the more recent firmware lock more items from local control. Some gain, some loss, depending on your specific situation.

1 Like

Thanks for the response! I posted an issue on Github- Issue 142015, but also, when you say the /production webpage, you don’t mean /production.json? Interestingly, I’m not able to access http://192.168.1.xx/production at all- it’s asking for a username/password combo I can’t figure out. But I am able to see the json file at http://192.168.1.xx/production.json

Just got the issue notice from github, we’l have a look. And yes, it’s /production.json, sorry for the confusion.

1 Like

I see the PR as well! Thanks for looking into this. I look forward to testing :slight_smile:

And I decided to add a firewall rule in my network- we’ll keep things local over here for as long as we can. :wink:

PR is released with 2024.4.1.

As for the inventory endpoint, can you access it as /inventory or do you need to add the .json and use /inventory.json?