jkeljo / hacs-greeneye-monitor

HACS version of the Home Assistant Core greeneye_monitor component. For beta-testing and faster deployment of changes.
MIT License
6 stars 2 forks source link

Stopped Receiving Energy Updates with HA 2023.8.1 #31

Closed rjsmith0 closed 1 year ago

rjsmith0 commented 1 year ago

Home Assistant version: 2023.8.1

HACS version: 1.32.1

hacs-greeneye-monitor version: 2023.8.6

After upgrading HA to 2023.8.1, I stopped receiving energy readings. I saw the issue initially with hacs-greeneye-monitor 2023.5.30 and it persisted after upgrading to hacs-greeneye-monitor 2023.8.6. I hadn't touched any of my configuration settings on the GEM or HA configuration and I am receiving voltage, power and current readings without issue. I did try resetting my counters on the GEM with no change.

image image
jkeljo commented 1 year ago

That's odd, I'm on that same version and having no issues. Can you try reloading the component from the settings menu, and if you're still not seeing energy data after that, share anything greeneye related that you find in the logs?

image

rjsmith0 commented 1 year ago

Absolutely. I have restarted and reloaded it several times. It started happening for me just over a week ago but I wanted to check out my setup before I reported anything. Logs are below. Only error I am seeing is is the unit mismatch on pulses which may be something I need to correct. It is setup to monitor pulses from a water flow meter and doesn't like the device class 'water'. Also I am running the Bin48-NET packet format although I only have 32 channels. Since the recent move to github and and updates, I get a "Exception while calling the listener" when I set my packet format to Bin32-NET. I can submit that as a separate issue but want to mention it here in case it is related.

The specific error there is below, but it goes away as soon as I change the packet format to Bin48-NET. I get no data into HA until I make that change also.

EDIT: I am running the GEM versions below: COM firmware ver: 5.39 ENG firmware ver: 1.49 RealTime Status: ON Packet Send Interval: 10 Pri. Packet Format: 5 Sec. Packet Format: 5

2023-08-14 14:10:54.703 ERROR (MainThread) [greeneye.monitor] Exception while calling the listener! File "/usr/local/lib/python3.11/site-packages/greeneye/monitor.py", line 684, in _consumer File "/usr/local/lib/python3.11/site-packages/greeneye/monitor.py", line 781, in _handle_message File "/usr/local/lib/python3.11/site-packages/greeneye/monitor.py", line 800, in _add_monitor File "/usr/local/lib/python3.11/site-packages/greeneye/monitor.py", line 621, in handle_packet File "/usr/local/lib/python3.11/site-packages/greeneye/monitor.py", line 283, in handle_packet

2023-08-14 14:14:57.941 INFO (MainThread) [greeneye.monitor] Closing server on ('0.0.0.0', 8000) 2023-08-14 14:14:57.942 DEBUG (MainThread) [greeneye.monitor] queue consumer is getting canceled 2023-08-14 14:14:58.186 DEBUG (MainThread) [greeneye.monitor] Packet processor started 2023-08-14 14:14:58.192 INFO (MainThread) [greeneye.monitor] Server started on 0.0.0.0:8000 2023-08-14 14:15:00.553 INFO (MainThread) [greeneye.monitor] Discovered new monitor: 3400875 2023-08-14 14:15:00.746 INFO (MainThread) [greeneye.monitor] Configured 3400875 from settings API call. 2023-08-14 14:15:00.752 INFO (MainThread) [custom_components.greeneye_monitor.sensor] Set up sensors for new monitor 3400875 2023-08-14 14:15:00.752 INFO (MainThread) [custom_components.greeneye_monitor.number] Added configuration entities for new monitor 3400875 2023-08-14 14:15:00.878 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.gem_3400875_pulse_counter_1 (<class 'custom_components.greeneye_monitor.sensor.PulseCountSensor'>) is using native unit of measurement 'pulses' which is not a valid unit for the device class ('water') it is using; expected one of ['gal', 'm³', 'L', 'ft³', 'CCF']; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author. 2023-08-14 14:15:00.881 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.gem_3400875_pulse_counter_2 (<class 'custom_components.greeneye_monitor.sensor.PulseCountSensor'>) is using native unit of measurement 'pulses' which is not a valid unit for the device class ('water') it is using; expected one of ['gal', 'm³', 'L', 'ft³', 'CCF']; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author. 2023-08-14 14:15:00.883 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.gem_3400875_pulse_counter_3 (<class 'custom_components.greeneye_monitor.sensor.PulseCountSensor'>) is using native unit of measurement 'pulses' which is not a valid unit for the device class ('water') it is using; expected one of ['gal', 'm³', 'L', 'ft³', 'CCF']; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author. 2023-08-14 14:15:00.885 WARNING (MainThread) [homeassistant.components.sensor] Entity sensor.gem_3400875_pulse_counter_4 (<class 'custom_components.greeneye_monitor.sensor.PulseCountSensor'>) is using native unit of measurement 'pulses' which is not a valid unit for the device class ('water') it is using; expected one of ['gal', 'm³', 'L', 'ft³', 'CCF']; Please update your configuration if your entity is manually configured, otherwise report it to the custom integration author.

nivfreak commented 1 year ago

I am in the same boat, getting voltage/current readings, but no power.

My setup was fresh. I set it up using packet format 4 (Bin48-NET-Time). Same software and firmware versions.

I'm going to toy around with different packet formats. I didn't find any documentation that specified what format to use, but I may have missed it!

image

rjsmith0 commented 1 year ago

I finally gave up and removed everything and set it up from scratch again and the energy readings came back for me. My previous setup was fairly fresh (2 weeks old) when it stopped working and no changes were made other than the HA (and GEM) update. That original setup was a fresh setup as I could never get the upgrade to work properly.

jkeljo commented 1 year ago

Hmmm... are these channels configured for net metering, by chance?

rjsmith0 commented 1 year ago

My channels were were not setup for net metering but I was using the NET protocol. It was working fine for a couple weeks though. After my re-setup, I did switch back to BIN48-ABS and it is currently working. Switching to BIN48-ABS before the re-setup didn't fix anything though.

nivfreak commented 1 year ago

I'll drop a couple screenshots here of config in case it's something subtle. I've now tried Bin48-Net-Time, Bin32 Net, and Bin48 ABS. I reloaded the integration and restarted HA after each packet format change, and waited 30+ minutes to see if an Energy value would populate.

Nothing exciting in the logs either: 2023-08-31 15:35:23.963 DEBUG (MainThread) [greeneye.monitor] Packet processor started 2023-08-31 15:35:23.971 INFO (MainThread) [greeneye.monitor] Server started on 0.0.0.0:8000 2023-08-31 15:35:28.307 INFO (MainThread) [greeneye.monitor] Discovered new monitor: 1100407 2023-08-31 15:35:28.477 INFO (MainThread) [greeneye.monitor] Configured 1100407 from settings API call. 2023-08-31 15:35:28.482 INFO (MainThread) [custom_components.greeneye_monitor.sensor] Set up sensors for new monitor 1100407 2023-08-31 15:35:28.482 INFO (MainThread) [custom_components.greeneye_monitor.number] Added configuration entities for new monitor 1100407

image image image

jkeljo commented 1 year ago

The latest version of this integration (2023.9.03) supports downloading diagnostic information and debug logs, which I hope will help me diagnose this issue more quickly. To use it, do the following:

  1. In Home Assistant, go to Settings -> Devices & Services -> GreenEye Monitor (GEM).
  2. Under "Hubs", find "GreenEye Monitor (GEM)", click the three dots, then click "Download diagnostics"
  3. Drag-and-drop the downloaded file into a comment on this issue. It will upload the file and insert a link.
  4. After downloading diagnostics, click "Enable debug logging"
  5. In the three dots menu, click "Reload"
  6. Return to your overview dashboard and wait until data starts to come in from all of your GEMs
  7. Return to the settings screen and click "Disable Debug Logging". It will download a log file.
  8. Drag-and-drop the downloaded log file into a comment on this issue. It will upload the file and insert a link.

Thanks!

nivfreak commented 1 year ago

Thank you. Updated to 2023.9.03. Attached are the diagnostic and debug logs. config_entry-greeneye_monitor-6421c9fa6902bc34aae456fbdee7dcf4.json (1).txt home-assistant_greeneye_monitor_2023-09-03T22-23-53.885Z.log

jkeljo commented 1 year ago

@nivfreak perfect! One thing that jumps out at me is that the integration is configured to treat all channels as net-metered, but the GEM is not. Do you recall what the Home Assistant config UI looked like when you did your setup? It should have defaulted to all channels not net metered, such that you would have had to check a bunch of boxes to get into this situation, but if that didn't happen that's a bug I'd need to look into.

As I looked at this, though, I realized that I can probably change the integration so that you don't have to tell it about net metering at all, which would make this problem moot. I'll look into that.

nivfreak commented 1 year ago

I would say no, but it's possible I missed the label and thought I was enabling channels. I'll go through setup again and see if it's familiar.

nivfreak commented 1 year ago

Ok, now I'd say it's likely! Looks like I have energy information flowing. Thank you!

rjsmith0 commented 1 year ago

Looks good on my end also! Thank you!

jkeljo commented 1 year ago

Awesome, glad you're both up and running! I'll close this issue now.