Skip to content

Repository files navigation

Indevolt integration for Home Assistant

A Home Assistant custom integration to monitor and control Indevolt devices.

Prerequisites

  • Home Assistant has been installed according to the official installation guide.
  • The Indevolt device and Home Assistant server are on the same local network.
  • The Indevolt device is powered on and has obtained an IP address.
    • Query via router’s management list;
    • Check in INDEVOLT App device settings;
  • Ensure that the Indevolt device API function is enabled. This integration only supports OpenData HTTP mode.
3http_mode
  • Confirm the firmware version meets the minimum requirement.

    Model Minimum Firmware Version
    BK1600/BK1600Ultra V1.3.0A_R006.072_M4848_00000039
    SolidFlex2000/PowerFlex2000 CMS: V1406.07.002E
4fw_version

Step 1: Download the indevolt integration folder

  1. Click Code > Download ZIP.
  2. Unzip the ZIP file to your computer.

Step 2: Locate the HA configuration directory path

  • Home Assistant OS: The configuration directory is located in /config.
  • Home Assistant Container: You can access the configuration directory by locating the configuration.yaml file.

Tip: The directory should contain a configuration.yaml file.

config directory/
└── configuration.yaml

Step 3: Create a custom integration directory

  1. Enter the config directory.
  2. Create the custom_components directory if it does not exist.
config directory/
├── custom_components/
└── configuration.yaml

Note: All custom integrations must be placed under custom_components, otherwise HA will not be able to recognize them.

Step 4: Add the integration files

  1. Create the indevolt directory in the config directory.
  2. Copy only the integration files shown below into the indevolt directory. Do not copy files or folders that are not shown in this list.

Once installed correctly, your configuration directory should look like this:

config directory/
└── custom_components/
    └── indevolt/
        ├── __init__.py
        ├── config_flow.py
        ├── const.py
        ├── coordinator.py
        ├── entity.py
        ├── indevolt_api.py
        ├── manifest.json
        ├── number.py
        ├── select.py
        ├── sensor.py
        ├── services.yaml
        ├── switch.py

Step 5: Restart Home Assistant

  1. Select Settings > System in the web interface.
  2. Click the restart icon in the upper right corner.
  3. Click Restart Home Assistant.
  4. Click RESTART.
5restart_ha

Step 6: Add integration to Home Assistant

  1. After restarting, enter the web interface and select Settings > Devices & services.

  2. Click +ADD INTEGRATION in the lower right corner.
    image

  3. Search for integration INDEVOLT.

  4. Configuration parameters:

    • host: Device IP address, which can be obtained by checking the router/app.

    • scan_interval: Used to control the frequency of data updates, default is 30 seconds.

  5. Click SUBMIT to finish the installation.

  6. The power module and battery packs will be displayed after installation. Click Skip and Finish to complete the setup process.

    • Each power module supports up to 5 battery packs.
    • If no battery pack is connected, the corresponding field will be shown as None.
    • When battery packs are connected, the serial number (SN) of each battery pack will be displayed for identification.
    image

View Integration

Select the INDEVOLT integration to display the device and entity information.

Update integration

  1. Back up the entire existing custom_components/indevolt directory outside custom_components, and record the currently installed version.
  2. Download the new integration files and replace the installed directory with only the integration files shown in the installation tree above. Do not mix files from different versions or copy anything that is not listed.
  3. Keep the existing INDEVOLT integration entry, devices, and entities. This update does not require deleting or adding the entry again.
  4. Restart Home Assistant.
  5. Confirm that INDEVOLT loads without related errors and that the existing integration entry, devices, and entities are still present.

Roll back an update

If validation fails, replace the entire custom_components/indevolt directory with the backup, restart Home Assistant, and confirm that the original integration entry, devices, and entities load normally.

Create Automation: Set Real-Time Control

  1. Go to Settings > Automations & scenes.

  2. Click the button in the lower right corner + Create automation.

  3. Select Create new automation.
    image

  4. Click + Add Trigger and configure the trigger event based on your requirements.
    image

  5. Click + Add Action to configure the device action.

  6. Search for mode and select Set SolidFlex2000/PowerFlex2000 Work Mode (as an example).
    image

  7. In the Target section, click + Choose Device and select your device from the list.
    image

  8. In the Work Mode section, choose Real-Time Control, then configure Status, Power, and Target SOC as needed.
    image image

  9. Click Save to complete the automation setup.

FAQ

Problem Description Solutions
Integration not found in search list Verify the integration file is located in the correct folder: custom_components/indevolt.
- Unable to add device.
- Unable to connect to the device.
- No data available
This is typically caused by an HTTP request failure.
1. Verify the device is powered on.
2. Confirm the device's IP address is correct.
3. Check the device's network status in Indevolt app.
4. Ensure you have met all the prerequisites.

If you encounter any issues, please check the Home Assistant logs for detailed error messages.

Contribute

We welcome your feedback and contributions! Please feel free to open an issue with your suggestions or submit a pull request.

About

No description, website, or topics provided.

Resources

Stars

14 stars

Watchers

7 watching

Forks

Releases

Packages

Contributors

Languages