Independent directory, made by the developer of Vulpo. Not affiliated with Home Assistant or the Open Home Foundation.

About

EcoFlow BLE (Unofficial) connects Home Assistant to EcoFlow devices over Bluetooth LE, without the cloud. It covers EcoFlow power stations, EV chargers, and accessories, and works locally with no internet connection needed. It adds sensors for battery level, power flow, and device status, plus switches, numbers, selects, buttons, and a climate entity for outputs, charging limits, and modes. Supported devices are found by Bluetooth discovery and offered for adding, and setup runs in the UI with an EcoFlow account login. Options include an update period, connection timeout, connection delay for spreading devices across Bluetooth proxies, and unlocking lower AC and DC charging speed minimums. A diagnostics download and detailed logging settings are available for bug reports.

Automatic summary of the README and code of rabits/ha-ef-ble. Something wrong, or are you the maintainer and want your own text here? Get in touch

Supports

  • Works locally Talks to your devices on your own network. No vendor cloud in between.

  • Found by itself Home Assistant spots it on the network and offers to add it.

  • From the Marketplace Installed through the Marketplace, formerly HACS.

  • Actively maintained Its author released or pushed a change in the last six months.

Provides

  • Climate
  • Switches
  • Sensors

Setting it up

Install it from the Marketplace and restart Home Assistant, then add it under Settings, Devices and services.

Add EcoFlow Device

  • BLE Device

Discovered Device Configuration

  • EcoFlow User ID
  • BLE Device
  • Update PeriodNumber of seconds to wait before processing the next device update. Value of 0 means all updates are processed immediately (will result in a high number of database writes).
  • Email / Phone
  • Password
  • RegionPick the EcoFlow API host matching your account. Auto uses api.ecoflow.com for email and api-cn for phone numbers. Your account may live on a different host than your actual geographic region, so if you receive an "Account does not exist" message, try selecting the host explicitly.
  • Mask sensitive information (useful when sharing logs publicly)
  • Log device connection requests and responses
  • Log deserialized device update messages
  • Log packet objects
  • Log encrypted payloads
  • Log decrypted payloads
  • Enable bleak debug log level (not masked and not filtered to this device)
  • Connection timeoutNumber of seconds to wait for the device to connect and authenticate.
  • Connection delayNumber of seconds to wait before connecting when another EcoFlow device has just connected. Home Assistant picks which Bluetooth proxy each connection goes through and penalizes proxies that are already busy connecting, so devices coming up at the same moment can end up on a more distant proxy for the rest of the session. Spacing them out gives each device a better chance of being connected through the proxy closest to it. A device that is not coming up alongside another is never delayed. Set to 0 to disable this for the device.

Config options

  • EcoFlow User ID
  • BLE Device
  • Update PeriodNumber of seconds to wait before processing the next device update. Value of 0 means all updates are processed immediately (will result in a high number of DB writes).
  • Email / Phone
  • Password
  • RegionPick the EcoFlow API host matching your account. Auto uses api.ecoflow.com for email and api-cn for phone numbers. Your account may live on a different host than your actual geographic region, so if you receive an "Account does not exist" message, try selecting the host explicitly.
  • Mask sensitive information (useful when sharing logs publicly)
  • Log device connection requests and responses
  • Log deserialized device update messages
  • Log packet objects
  • Log encrypted payloads
  • Log decrypted payloads
  • Enable bleak debug log level (not masked and not filtered to this device)
  • Connection timeoutNumber of seconds to wait for the device to connect and authenticate.
  • Connection delayNumber of seconds to wait before connecting when another EcoFlow device has just connected. Home Assistant picks which Bluetooth proxy each connection goes through and penalizes proxies that are already busy connecting, so devices coming up at the same moment can end up on a more distant proxy for the rest of the session. Spacing them out gives each device a better chance of being connected through the proxy closest to it. A device that is not coming up alongside another is never delayed. Set to 0 to disable this for the device.

Config options

  • EcoFlow User ID
  • Update PeriodNumber of seconds to wait before processing the next device update. A default value of 0 means all updates are processed immediately (may result in a high number of DB writes).
  • Packet VersionVersion of packets to use - depends on the generation and firmware of this device. Try different version if connection/authentication fails. Note that some devices may use packet version that is not yet supported by this integration.
  • Email / Phone
  • Password
  • RegionPick the EcoFlow API host matching your account. Auto uses api.ecoflow.com for email and api-cn for phone numbers. Your account may live on a different host than your actual geographic region, so if you receive an "Account does not exist" message, try selecting the host explicitly.
  • Mask sensitive information (useful when sharing logs publicly)
  • Log device connection requests and responses
  • Log deserialized device update messages
  • Log packet objects
  • Log encrypted payloads
  • Log decrypted payloads
  • Enable bleak debug log level (not masked and not filtered to this device)
  • Connection timeoutNumber of seconds to wait for the device to connect and authenticate.
  • Connection delayNumber of seconds to wait before connecting when another EcoFlow device has just connected. Home Assistant picks which Bluetooth proxy each connection goes through and penalizes proxies that are already busy connecting, so devices coming up at the same moment can end up on a more distant proxy for the rest of the session. Spacing them out gives each device a better chance of being connected through the proxy closest to it. A device that is not coming up alongside another is never delayed. Set to 0 to disable this for the device.

Change the connection

  • EcoFlow User ID
  • Enabled Extra Batteries

After setup

  • Update PeriodNumber of seconds to wait before processing the next device update. Value of 0 means all updates are processed immediately (will result in a high number of DB writes).
  • Unlock AC charging speed minimumAllows setting the AC charging speed below the minimum the EcoFlow app enforces. 1 W stops the device drawing from the grid without unplugging it, which is what solar-surplus automations need; charging that slowly is less efficient and may generate additional heat.
  • Unlock DC charging speed minimum⚠️ WARNING: this may damage your device. The EcoFlow app limits are likely there for a reason, and running the DC input below them for long periods can wear its components; damage caused this way may not be covered by warranty. Use at your own risk. Allows setting the DC charging speed below the minimum the EcoFlow app enforces, down to 0 A. 0 A is not off: the device can still draw a small current from the input. The value caps the current drawn from the DC input, so a lower one keeps the device within what a weak source can give - a fuse-limited car socket, a small supply or a single panel - instead of stalling it by asking for more.
  • Save diagnostics on exceptionWhen enabled, packets are collected from the start of each connection attempt. If a connection error occurs, collected data is automatically saved to disk for debugging.
  • Enable packet collectionEnabling this option will start storing packets for diagnostics info - wait a minute after you enable this option before downloading diagnostics info and don't forget to turn it off. Some devices may contain identifying information in their messages such as your exact location, make sure encryption is enabled before sharing.
  • Number of packets to store
  • Encrypt diagnostics dataWhen enabled, sensitive diagnostics data (packets, session keys, manufacturer data) is encrypted before being included in the diagnostics download. Disable only if you need raw data for local debugging.
  • Mask sensitive information (useful when sharing logs publicly)
  • Log device connection requests and responses
  • Log deserialized device update messages
  • Log packet objects
  • Log encrypted payloads
  • Log decrypted payloads
  • Enable bleak debug log level (not masked and not filtered to this device)
  • Connection timeoutNumber of seconds to wait for the device to connect and authenticate.

Texts from the code of rabits/ha-ef-ble.

Entities

  • Binary sensorsEnabled, Error, AC Plugged In, Battery Connected, Solar Connected, Fan Running, Storm Mode, Grid Energized, Grid Status, BMS Run State, Error Occurred, Is Charging, and 6 more
  • ButtonsPower Off, Unpause Solar
  • ClimateClimate
  • NumbersBackup Reserve Level, Charge Limit, Discharge Limit, Battery Charge Limit, Battery Discharge Limit, AC Charging Speed, AC C20 Charging Power, Feed Grid Power Limit, Base Load Power, Load Power, Grid Input Power Limit, Charging Power Limit, and 7 more
  • SelectsLED, DC Charging Type, DC Mode, Performance Mode, Gas Unit, Charger Mode, Drain Mode, Smart Backup Mode, Operating Mode, Energy Strategy, Energy Monitoring, and 2 more
  • SensorsCollecting diagnostics data, Battery Level, LCD Battery Level, BMS Battery Level, Battery Time Remaining, Main Battery Level, Input Power, Output Power, Charge Time Remaining, Discharge Time Remaining, AC Plug State, and 126 more
  • SwitchesPort, EPS Mode, Storm Guard, DC Ports, AC Ports, AC Charging, AC LV Port, AC HV Port, DC 12V Port, Backup Reserve, USB Ports, and 11 more

Troubleshooting

  • DiagnosticsDownloads a diagnostics file to attach to a bug report.

From the README

Unofficial Bluetooth LE Integration for Home Assistant

Monitor and control your EcoFlow devices locally via Bluetooth

From the README of rabits/ha-ef-ble, Apache License 2.0. Shortened.

Shows in Vulpo

Quick Toggle card, Climate card, Button card, Select card, Apple Watch, Control Center, Climate Live Activity.

Information

Installs
1.4k sharing analytics
GitHub stars
427
Connection
Works locally
Upkeep
Updated in the last 6 months
Version
v1.3.0,
Category
Energy, Backup power
Kind
Marketplace integration
Brand
EcoFlow
Needs
Needs the Marketplace (HACS on 2026.10 and older)
Domain
ef_ble

More from EcoFlow

You might also like

Independent directory, made by the developer of Vulpo. Not affiliated with Home Assistant or the Open Home Foundation. About these numbers