Screenshots From the README of MichelFR/ha-ecoflow-iot.
About
EcoFlow IoT is a custom integration that connects EcoFlow devices to Home Assistant through the EcoFlow Developer API. It relies on the vendor's cloud, uses MQTT for live data and control, and switches to HTTP polling when MQTT is unavailable or stale. It adds sensors, binary sensors, switches, numbers, a mode select and an LED light, covering battery, solar, grid and energy totals. Cumulative energy sensors are provided for use with the Energy dashboard, and a connection sensor shows MQTT status, data source and last update time. Options cover the HTTP poll interval, the MQTT staleness threshold, an active MQTT refresh interval, and a grid power sign setting for Stream units. Setup is done in the UI with a region and an access key and secret key from an EcoFlow developer account.
Automatic summary of the README and code of MichelFR/ha-ecoflow-iot. Something wrong, or are you the maintainer and want your own text here? Get in touch
Supports
Uses the vendor's cloud Needs an internet connection and an account with the vendor.
From the Marketplace Installed through the Marketplace, formerly HACS.
Actively maintained Its author released or pushed a change in the last six months.
Provides
- Lights
- Switches
- Sensors
Setting it up
Install it from the Marketplace and restart Home Assistant, then add it under Settings, Devices and services.
EcoFlow IoT
- Region
- Access Key
- Secret Key
Also asked when signing in again.
After setup
- Use MQTT for live data
- HTTP poll interval (seconds)How often to poll the HTTP API (fallback when MQTT is unavailable, and the cadence for refreshing HTTP-only values).
- MQTT staleness threshold (seconds)If no MQTT message arrives within this window, the integration polls HTTP.
- MQTT active refresh interval (seconds)How often to actively request a fresh data snapshot over MQTT (publishing a "latestQuotas" get, the same thing the EcoFlow app does). Devices slow their push rate when idle, so a passive subscription goes stale even while connected; this keeps the data flowing. Set to 0 to disable and rely only on what the device pushes plus the HTTP fallback.
- Disable MQTT TLS certificate verification (insecure)Connects to the EcoFlow MQTT broker without verifying its TLS certificate. Only enable this if the connection fails because your system cannot validate the broker's certificate chain — it exposes the broker credentials and all live data to interception. Leave off for normal use.
- Invert Stream grid power signSome Stream units report grid power with the sign inverted — they show power fed into the grid as positive instead of negative, the opposite of Home Assistant's convention. This depends on the model and firmware, so it can't be detected automatically. Leave this on (the default) and the sign is corrected: Grid power reads negative while you export, and the Grid import / export energy sensors count in the right direction. Turn it off only if your unit already matches Home Assistant — i.e. exporting to the grid already shows Grid power as negative (import positive, export negative). If you change this setting, also tick "Reset grid import/export energy totals" below — the existing totals were built up in the wrong direction and won't correct themselves.
- Reset grid import/export energy totals & historyOne-shot action: tick this and save to fully reset the Grid import energy and Grid export energy sensors. It zeroes the live counters and deletes their recorded history and Energy Dashboard statistics, so the old wrong-direction data is gone and they start fresh from zero. Recommended after changing the sign setting above. Leave it off for normal use.
Texts from the code of MichelFR/ha-ecoflow-iot.
Entities
- Binary sensorsBattery heater, Smart meter connected, Storm guard, Off-grid mode, Water ingress, Problem, Solar string 1 connected, Solar string 2 connected, Solar string 3 connected, Solar string 4 connected, Battery charging
- LightsLED
- NumbersCharge limit, Discharge limit, Feed-in power limit, Backup reserve
- SelectsOperating mode
- SensorsConnection, Data source, Last MQTT update, Battery, Battery power, Solar power, Grid power, Solar energy, Solar string 1 power, Solar string 2 power, Solar string 3 power, Solar string 4 power, and 76 more
- SwitchesAC socket 1, Self-powered mode, Grid feed-in, AC socket 2
Troubleshooting
- DiagnosticsDownloads a diagnostics file to attach to a bug report.
From the README
A clean, production-ready custom integration for EcoFlow devices built on the official EcoFlow Developer API (the accessKey/secretKey IoT Open Platform). It uses MQTT for live data and control, and automatically falls back to the HTTP REST API when MQTT is unavailable.
It aims for feature parity with the official EcoFlow developer documentation: every supported device's documented quota fields and set-commands are mapped to Home Assistant entities.
- MQTT-first, HTTP fallback — real-time push updates over TLS MQTT; HTTP polling kicks in only when MQTT is disconnected or stale, keeping cloud API usage minimal.
- Control over MQTT with HTTP fallback — set commands are published over MQTT and confirmed via set_reply; if MQTT is down or unacknowledged, the command is retried over HTTP PUT.
- MQTT connection status sensor — an always-available diagnostic sensor per device showing connected / connecting / disconnected, plus the active data source and last MQTT update time.
- Full entity coverage — sensors (battery, solar per-MPPT, grid/AC, inverter, power flow, energy totals), binary sensors, switches, numbers and a mode select.
- Energy Dashboard ready — devices expose cumulative Wh energy sensors (solar production, grid import/export, battery charge/discharge, per-device consumption), derived from live power where the API…
Shows in Vulpo
Light card, Quick Toggle card, Select card, Chart card, Apple Watch, Control Center.Information
- Installs
- 163 sharing analytics
- GitHub stars
- 15
- Connection
- Uses the vendor's cloud
- Upkeep
- Updated in the last 6 months
- Version
- v0.50.0,
- Category
- Energy, Backup power
- Kind
- Marketplace integration
- Brand
- EcoFlow
- Needs
- Needs the Marketplace (HACS on 2026.10 and older)
- Domain
ecoflow_iot- Issues
- Report an issue
















