Supported BMS
Currently supported
• ANT BMS
Disabled by default since driver version v1.0.0
as it causes other issues. More informations can be found in Add other use case (grid meter) or ignore devices - ANT BMS check missing and if it was fixed. See How to enable a disabled BMS to enable the BMS.
• Daly Smart BMS
Including:
- Sinowealth based Daly BMS
Disabled by default since driver version v0.14.0
as it causes other issues. See How to enable a disabled BMS to enable the BMS.
• ECS GreenMeter with LiPro
• HeltecModbus SmartBMS (YanYang BMS)
Communication to the Heltec SmartBMS (which is a rebranded YYBMS) via Modbus/RS485.
• HLPdataBMS4S
• JKBMS / Heltec BMS
Bluetooth connection supported
• Life/Tian Power
Including:
- Revov
• MNB spi BMS
Disabled by default as it requires additional manual steps to install.
• Renogy BMS
• Seplos
So far only tested on version 16E
.
• Seplos v3
Working on the Seplos v3 BMS which uses different (modbus) protocol than the earlier Seplos models.
• Smart BMS
Bluetooth connection supported
Including:
- LLT Power
- Jiabaida JDB BMS
- Overkill Solar
- Other BMS that use the Xiaoxiang phone app
Android | iOS |
---|---|
Planned support
You can view the current BMS requests to see which BMS support is requested and vote for the BMS you want to be supported.
Add/Request new BMS
There are two possibilities to add a new BMS.
Add by opening a pull request
Fork the repository and use the battery_template.py
as template to add a new battery. As soon as the BMS works you can open a pull request (PR) to merge it.
Here is a short checklist that should help you:
- Add your battery class and battery class import in alphabetical order in the
etc/dbus-serialbattery/dbus-serialbattery.py
- Add your BMS to the BMS feature comparison page by editing
docs/docs/general/features.md
- Add your BMS to the Supported BMS page by editing
docs/docs/general/supported-bms.md
- Do not import wildcards
*
- If available populate
self.max_battery_charge_current
andself.max_battery_discharge_current
with values read from the BMS - If available populate
self.unique_identifier
with a unique value to distinguish the BMS in a multiple battery setup - If your BMS don't run with the default settings add installation notes to the How to install, update, disable, enable and uninstall
docs/docs/general/install.md
- If your BMS needs custom settings that the user should be able to change, add it below the
; --------- BMS specific settings ---------
section in theetc/dbus-serialbattery/config.default.ini
- Make sure the GitHub Actions run fine in your repository. In order to make the GitHub Actions run please select in your repository settings under
Actions
->General
->Actions permissions
the optionAllow all actions and reusable workflows
. Check also in your repository settings underActions
->General
->Workflow permissions
ifRead and write permissions
are selected. After this changes you have to make a new commit, if you don't see any Actions run. This will check your code for Flake8 and Black Lint errors. Here is a short instruction on how to set up Flake8 and Black Lint checks in VS Code. This will save you a lot of time.
Request by opening a discussion
Start a new discussion in the New BMS request
category. Please add also the protocol documentation which you can request from the manufacturer/seller. The more upvotes the BMS request has, the higher is the priority.
If you would like to donate hardware or would like to help testing a specific BMS please get in contact over the discussions section.
Which BMS are you using?
Please let us know, which BMS you are using with the driver by upvoting your BMS: Which BMS are you using?