Skip to content

fix(river2): support River 2 family telemetry and offline states#769

Open
Komzpa wants to merge 3 commits into
tolwi:mainfrom
Komzpa:codex/river2-energy-fixes
Open

fix(river2): support River 2 family telemetry and offline states#769
Komzpa wants to merge 3 commits into
tolwi:mainfrom
Komzpa:codex/river2-energy-fixes

Conversation

@Komzpa

@Komzpa Komzpa commented Apr 21, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR narrows the remaining River 2 work to device-family telemetry and
offline-state handling.

It is now rebased on current main, after the MQTT reconnect/status-id fixes
from #787 and #789. Those fixes are intentionally not duplicated here. This PR
does not replace the MQTT client; it keeps the upstream MQTT path from main.

What changes

  • Read River 2 and River 2 Max solar current/voltage from live mppt.*
    telemetry while preserving the existing inv.dcIn* entity IDs.
  • Add matching River 2 Pro solar current/voltage support.
  • Expose River 2 family DC mode and MPPT fault diagnostics.
  • Remove the generic per-device Reconnect button while keeping
    device-specific buttons.
  • Mark integration-derived energy sensors as total for Home Assistant Energy
    compatibility.
  • Make data entities unavailable on explicit offline status instead of
    reporting stale/default 0 values.
  • Propagate /device/list status-poll results into per-device coordinators so
    explicit offline status updates HA availability.

Notes for review

Validation

  • python3 -m ruff check custom_components/ecoflow_cloud/api/ecoflow_mqtt.py custom_components/ecoflow_cloud/api/__init__.py custom_components/ecoflow_cloud/devices/data_holder.py custom_components/ecoflow_cloud/devices/status_coordinator.py custom_components/ecoflow_cloud/entities/__init__.py custom_components/ecoflow_cloud/sensor.py custom_components/ecoflow_cloud/devices/internal/river2.py custom_components/ecoflow_cloud/devices/internal/river2_max.py custom_components/ecoflow_cloud/devices/internal/river2_pro.py
  • python3 -m py_compile custom_components/ecoflow_cloud/api/ecoflow_mqtt.py custom_components/ecoflow_cloud/api/__init__.py custom_components/ecoflow_cloud/devices/data_holder.py custom_components/ecoflow_cloud/devices/status_coordinator.py custom_components/ecoflow_cloud/entities/__init__.py custom_components/ecoflow_cloud/sensor.py custom_components/ecoflow_cloud/devices/internal/river2.py custom_components/ecoflow_cloud/devices/internal/river2_max.py custom_components/ecoflow_cloud/devices/internal/river2_pro.py
  • git diff --check
  • GitHub checks are passing on the current head: HACS validation, lint, and
    hassfest validation.

@Komzpa Komzpa force-pushed the codex/river2-energy-fixes branch 5 times, most recently from 043764c to cf9c90a Compare April 22, 2026 07:29
@Komzpa Komzpa force-pushed the codex/river2-energy-fixes branch from b71da33 to 67c59cf Compare April 29, 2026 22:06
@Komzpa Komzpa changed the title fix(river2): restore solar telemetry and dc diagnostics fix(river2): support River 2 family telemetry and offline states Apr 29, 2026
@Komzpa Komzpa force-pushed the codex/river2-energy-fixes branch 2 times, most recently from 67c59cf to 4623aaf Compare May 11, 2026 16:44
@Komzpa Komzpa force-pushed the codex/river2-energy-fixes branch from 1b582ca to f474012 Compare June 1, 2026 11:17
@Komzpa

Komzpa commented Jun 2, 2026

Copy link
Copy Markdown
Contributor Author

@tolwi running this one for a while already, solar voltage/current fix from here is really handy - anything else I need to fix here before merging?
image

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant