-
Notifications
You must be signed in to change notification settings - Fork 239
Double Battery
Caution
Working with high voltage is dangerous. Always follow local laws and regulations regarding high voltage work. If you are unsure about the rules in your country, consult a licensed electrician for more information.
Double Battery means running two battery packs at the same time. This doubles the capacity of the system. Incase you need more energy than one EV pack can provide, this functionality is for you.
Good info on running multiple packs and associated risks: https://www.orionbms.com/manuals/pdf/parallel_strings.pdf
The batteries get connected in parallel. This means the voltage stays the same, but the capacity doubles.
Important
The batteries need to be of the same model and size, and preferably as close as possible in state of health. Do not connect battery packs with too much variation in condition, this lowers overall efficiency significantly!
Caution
Do not connect packs in series. There are no safeties implemented for operation in series connection!
Double-Battery can be run on all inverters. The inverter will think that there is just one large battery attached.
Note
Double-Battery should not be confused with Dual Input inverters. Dual input can have 2 separate batteries operating at the same time (Foxess for instance).
Double battery support is only available for highly stable battery types. The ones with checkmark have been confirmed working well.
- BMW i3 ✅ (CAN contactors)
- BYD Atto 3 ✅ (CAN contactors)
- Nissan LEAF ✅ (GPIO contactors)
- Renault Zoe Gen1 (GPIO contactors)
- Kia-Hyundai 64/40 kWh
- Tesla support was removed, integration not stable enough ❌
If your batteries are not on this list, get in touch with a developer.
ℹ️ If your inverter does not support seeing automotive CAN messages and need a separate channel, you need a CAN-Filter. https://github.com/dalathegreat/Battery-Emulator/wiki/CAN-filter-hardware
If you are using LilyGo:
- The first battery connects to CAN on the LilyGo.
- The second battery connects to an add-on MCP2515 chip connected via GPIO. See this page for more info on how to set up Dual CAN.
If you are using Stark CMR:
- The first battery connects to CAN
- The second battery connects to CANFD
There are two types of EV battery packs, those with CAN activated contactors, and those with externally powered contactors. The safest version to use is CAN controlled contactors (Tesla/Kia/Hyundai etc.). The one that require more caution is externally controlled (Nissan/Zoe etc.)
Connect the high voltage lines like in this diagram. Remember to place fuses both between the Inverter and packs, and the interconnect between the packs.
The system will automatically close the contactors on the Battery 2, if it falls within 3.0V of the Battery 1.
To control the second battery from the software, install an extra relay in the cabinet.
Wire Battery nr2 pos and neg relay wires (together) to this extra external relay. ( Battery nr2 precharge wire can be ignored)
On a Stark_CMR installation use GPIO pin 19, or on a Lilygo installation use GPIO pin 15 as control signal for this extra external relay.
Uncomment //#define CONTACTOR_CONTROL_DOUBLE_BATTERY in the software
When battery nr2 voltage matches Battery nr1 the extra relay will engage and combine the two batterys.
To start with, set up the USER_SETTINGS files. Here are the settings for a typical Nissan LEAF double battery setup using a CAN MCP2515 add-on chip.
In USER_SETTINGS.h
, enable the following:
#define NISSAN_LEAF_BATTERY
#define DOUBLE_BATTERY
#define CAN_ADDON
In USER_SETTINGS.cpp
, configure the following:
.battery_double = CAN_ADDON_MCP2515
Here is another configuration example, this time a Double Tesla Model 3 setup using a Stark CMR board with the secondary battery connected to the CANFD port.
In USER_SETTINGS.h
, enable the following:
#define TESLA_MODEL_3Y_BATTERY
#define DOUBLE_BATTERY
#define CANFD_ADDON
#define USE_CANFD_INTERFACE_AS_CLASSIC_CAN
In USER_SETTINGS.cpp
, configure the following:
.battery_double = CANFD_NATIVE
After the setup, flash the board and verify that you can see both batteries in the Webserver