foxthefox / ioBroker.ecoflow-mqtt

EcoFlow, power stream, power station, delta, delta2, river, river2, wave2, glacier, delta pro ultra, generator, smart home panel, homeassistant gateway, powerkit, powerhub
MIT License
43 stars 1 forks source link
delta delta2 delta2max deltamax deltapro deltaproultra ecoflow glacier homeassistant powerhub powerkit powerocean powerstation powerstream smarthomepanel smarthomepanel2 wave

Logo

ioBroker.ecoflow-mqtt

NPM version Downloads Number of Installations Current version in stable repository

NPM

Tests: Test and Release

ecoflow-mqtt adapter for ioBroker

connects to products of Ecoflow ([https://www.ecoflow.com])

WARNING

This adapter uses a non-offical communication with the devices. Wrong communication or setting wrong values can affect the functionality of the device and may lead to exclusion from the service.

The adapter is based on the work of:

Installation and Configuration

Install the adapter from github (adapter is not yet in the stable repo).

some mor details

In Admin Page (first tab) the mqqt credentials for the mqqt Broker need to be inserted.

There are 3 possibilities:

  1. by script https://github.com/mmiller7/ecoflow-withoutflow/blob/main/cloud-mqtt/ecoflow_get_mqtt_login.sh
  2. by website https://energychain.github.io/site_ecoflow_mqtt_credentials/
  3. by adapters own alogorithm (pressing the button), for this the ecoflow username and password is necessary.

The mqqt Broker settings are default and usually need no modification.

Use the tab "Device(s) Configuration" for adding your equipment.

Parametrizing the Powerstream

* add a new row * set the deviceID of Powerstream as shown in the app, something like "HW51...." * give it a name * select the version (600W or 800W)

Parametrizing the Powerstation

* add a new row * set the deviceID of Powerstation as shown in the app, string varies by type of device * give it a name * select the device type * if additional battery pack is connected, check the port number where it is connected

Parametrizing the Smart Plug

* add a new row * set the deviceID of Smart Plug as shown in the app, something like "HW52...." * give it a name * set the type to "plug"

Parametrizing the Shelly

* add a new row * set the deviceID of Shelly as shown in the app, please be aware that the ID is different to the Shelly device itself * give it a name * set the type to "Shelly3EM"

Parametrizing the Generator

* add a new row * set the deviceID of Generator as shown in the app, something like "DGEB...." * give it a name * set the type to "Generator"

Parametrizing the Smart Home Panel

* add a new row * set the deviceID of Generator as shown in the app, something like "SP10...." * give it a name * set the type to "SHP" or "SHP2"

Parametrizing the Power Kit & Hub

* add a new row * set the deviceID of power kit as shown in the app, something like "M10...." * give it a name * set the type to "Power Kit BP2000" or "Power Kit BP5000" * if there is a second or third battery connected, then check it as slave1 or slave2

Parametrizing the Power Ocean DC fit

* add a new row * set the deviceID of Generator as shown in the app, something like "HJ31...." * give it a name * set the type to "Power Ocean" * if there is a second or third battery connected, then check it as slave1 or slave2

Parametrizing the Wave

* add a new row * set the deviceID of Smart Plug as shown in the app, something like "KT21ZCH..." * give it a name * set the type to "Wave2"

Parametrizing the Glacier

* add a new row * set the deviceID of Smart Plug as shown in the app, something like "BX11ZCB..." * give it a name * set the type to "Glacier"

Use the tab "Homeassistant" for setup of MQTT connection to HA

Parametrizing Homeassistant Connector

* enable the service * set the user settings of the MQTT Broker of HA * set the connection parameter of the MQTT Broker of HA * select debug settings if required Modification at HA side: * The adapter uses the discovery function in HA, no configuration of datapoints in HA is needed. * MQTT add-on ...

Updating the adapter

Usually it is enough to install the next version on top of the old one. In some cases (e.g. 1.0.0) it might be needed to erase the whole object tree. If datapoint related values are changed, like min or max of the range, the you have to:

ioBroker adapter functions

remarks to update of data point setup (min, max, unit, ....)

If settings to a data point are changed in the new version of adapter (e.g. name, unit, max value) the change is not effective until you:

During startup the datapoints are created, but not changed when existing.

remarks to warnings/errors

Some occurances in the adapter are tagged as warning or error in order to appear in the log when the loglevel is in info mode. This is not necessarily a failure or an indicator for not working adapter, it is more a sign for a not expected behaviour. The cause might not be in the adapter itself, but the attention is set.

HA connector/gateway

annotations to functionality

Implemented Devices

some explanation to the device data

Powerstation

River Max

River Pro

Delta Mini

Delta

Delta Max

Delta Pro

River 2 Max

River 2 Pro

Delta 2

Delta 2 Max

Delta Pro Ultra

Smart Home Panel

Smart Home Panel

Smart Home Panel 2

Power Kit & Hub

Power Kit

Power Ocean

Power Ocean

Generator

Generator

Dual Fuel generator is not available, could be implemented, if data is available.

Powerstream

Powerstream

The 800W version is also implemented and only difference ist the 800W maximum power. supply priority -> 0/false = prioritized grid supply; -> 1/true = prioritized battery supply (charging)

Smart Plugs

Smart Plug

Shelly devices

Shelly3EM

Wave 2 Air conditioner

Wave2

Wave is not available, could be implemented, if data is available.

Glacier refrigerator

Glacier

ToDo

Changelog

1.0.3 (npm)

1.0.2 (npm)

1.0.1 (npm)

1.0.0 (npm) BREAKING

0.0.42 (npm)

0.0.41 (npm)

0.0.40 (npm)

0.0.39 (npm)

0.0.38 (npm)

0.0.37 (npm)

0.0.36 (npm)

0.0.35 (npm)

0.0.34 (npm)

0.0.33 (npm)

0.0.32 (npm)

0.0.31 (npm)

0.0.30 (npm)

0.0.29 (npm)

0.0.28 (npm)

0.0.27 (npm)

0.0.26 (npm)

0.0.25 (npm)

0.0.24 (npm)

0.0.23 (npm)

0.0.22 (npm)

0.0.21 (npm)

0.0.20 (npm)

0.0.19 (npm)

0.0.18 (npm)

0.0.17

0.0.16

0.0.15

0.0.14

0.0.13

0.0.12

0.0.11

0.0.10

0.0.9

0.0.8

0.0.7

0.0.6

0.0.5

0.0.4

0.0.3

0.0.2

0.0.1 (npm)

License

MIT License

Copyright (c) 2023-2024 foxthefox foxthefox@wysiwis.net

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Disclaimer

This open-source software is not affiliated with or endorsed by the company Ecoflow in any way. Use of the software is at your own risk and discretion, and I assume no liability for any potential damages or issues that may arise from using the software. It is important to be aware that using this open-source software comes without direct support or guarantees from the company Ecoflow.