Prohelion BMU
Profinity monitors and manages every Prohelion Battery Management System (BMS) through the BMU dashboard. The dashboard appears as a tab in the sidebar once a Battery Management Unit (BMU) is added to the Profile. The model and generation that you select when you add the BMS must match the hardware. The BMU sits in the Battery Management Systems group of the component catalogue. It produces tags from the CAN signals in its DBC file.
flowchart LR
BMU --> Adapter["CAN adapter"] --> Dashboard["BMU dashboard"]
| Model | Description | Default base address |
|---|---|---|
| D1000 Gen1 | A 1000 V BMS with a BMU and Cell Management Units (CMUs) on a dedicated CMU CAN bus. | 0x600 |
| D1000 Gen2 | A 1000 V BMS with a BMU, a Battery Junction Unit (BJU) and CMUs, available with Firmware V1.1 or V1.2. | 0x600 |
| M48 Gen1 | A 48 V BMS. | 0x600 |
| M48 Gen2 | The 48 V Generation 2 BMS. | 0x600 |
| C48 Gen2 | The 48 V 100 A 16S BMS. | 0x600 |
| C20 Gen1 | The 20 V Generation 1 BMS. | 0x100 |
The settings in the BMU management section apply to every model in the table, except where a row names a specific model. The BMU data, firmware configuration and firmware flashing on the linked pages also apply to every model, except where a section names a specific model.
In every model the BMU organises its CMUs, which are also called Nodes. Add only the BMU to the Profile, which gives control of and data from the entire BMS. Larger and split packs, such as those used in racing, can have two or more BMUs.
Add one BMU for each unit, each with a different base CAN address. The hardware is described in the Prohelion BMS documentation.
Quick start
You need a CAN bus adapter in the profile that is connected to the BMS CAN bus, as described in How to add a component to your profile.
- Select ADD COMPONENT, then select the model that matches your hardware from the Battery Management Systems group.
- Keep Name at the model name, or enter a name that is unique in the profile.
- Keep Base address at the default for the model in the model table, unless your hardware uses a different CAN address.
- Keep Milliseconds valid at
5000and Control pack off, unless you need Profinity to engage and disengage the pack. - Select ADD COMPONENT at the bottom of the dialog.
- Open the BMU dashboard tab in the sidebar, and check that BATTERY VOLTAGE shows a reading.
BMU management
When you add a Prohelion BMU to the Profile, Profinity prompts for the information in the following table. The Change Settings button on the BMU dashboard changes these details later.
| Parameter | Type | Description | Default |
|---|---|---|---|
| Name | Text | The name of the component. Must be unique. | The model name |
| Control pack | On or off | Enables software control of the BMS from Profinity (engaging and disengaging the pack). Applies to the D1000 Gen1 and D1000 Gen2 only, and is hidden on the other models. | Off |
| Milliseconds valid | Time | The timeout of the device, from 1 to 60000. If no traffic is received from the device within this time, Profinity treats the connection as lost. | 5000 |
| Base address | Hexadecimal number | The CAN address of the BMU, as described in the protocol documentation of each model. Enter it in hexadecimal, with or without the 0x prefix, for example 600, because 1536 is read as 0x1536. |
0x600, or 0x100 for the C20 Gen1 |
| Firmware configuration key | Secret | D1000 Gen2, M48 Gen2 and C48 Gen2 only. Unlocks the Admin firmware parameters for the current sign-in session. Refer to Unlock administration firmware parameters. | No active session |
A D1000 Gen1 or D1000 Gen2 charges through the Profinity Charge screen once Control pack is on.
The CAN address of each model is described on these pages:
- D1000 Gen1 Communications Protocol
- D1000 Gen2 Messages and Signals
- D1000 Gen2 Messages and Signals (Firmware V1.1)
- M48 Gen1 CAN Communication
The BMU dashboard describes the BMU data and the node telemetry. To change the firmware settings, unlock the Admin parameters or flash the firmware, refer to Update BMU configuration and firmware.
Example
This example is an illustration only.
Replace the capitalised placeholders with your own values.
It adds a D1000 Gen1 BMU to the components list in the profile.yaml file of the profile.
- component:
type: D1000Gen1Bms
id: D1000Gen1Bms1
tagTreeParentPath: /
name: YOUR_BMU_NAME
controlPack: false
milliValid: 5000
baseAddress: 1536
YOUR_BMU_NAME is the unique name of the component.
The id can be left out, and Profinity then gives the component an id such as D1000Gen1Bms1.
tagTreeParentPath: / places the component at the root of the tag tree.
The baseAddress value 1536 is the decimal form of 0x600, the default base address of the D1000 Gen1.
The milliValid value is the timeout in milliseconds.