Battery: RJXZS BMS - dalathegreat/Battery-Emulator GitHub Wiki
[!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.
Read this first
Preface, the entire Battery-Emulator project sets out to achieve safe re-use of EV batteries. By building your own battery, you will be taking larger risks. Cell balancing wire taps, shunts, busbar connections, BMS integration, temperature monitoring, fuses, contactors, interlocks, etc. all will have to be implemented by yourself instead of using a pre-made product. As with all things custom, there are higher risks of human error. This page covers emulating High Voltage protocols, so while most tinkerers might be familiar with 48V DIY batteries, building a 96S 400VDC battery is an entirely different beast that can be lethal. Take extra precaution when working on a custom DIY HV battery, you have been warned.
[!CAUTION] If you are unsure of your technical knowhow, avoid building a high voltage battery from scratch
Custom DIY battery with RJXZS BMS
The Battery-Emulator has support for the 4-192S RJXZS BMS. With this BMS you can construct your own high voltage battery, and connect the BMS via CAN to the Battery-Emulator. This allows you to use a DIY battery (instead of an EV battery) with any normal Battery-Emulator supported inverter.
Where do I get the hardware?
Alternative purchase links, goes under the name TOPBMS / CLEVERBMS
- https://www.aliexpress.com/item/4001138179223.html
- https://www.aliexpress.com/item/1005006624811993.html
- https://www.aliexpress.com/item/1005008412534717.html
- https://www.aliexpress.com/item/1005007491715620.html
- https://de.aliexpress.com/item/1005005871859200.html
Where do I get technical support?
- RJXZS 192S - Supplier Manuals & Downloads
The link isn't available any longer. It seems that they are reachable now via the website of TOPBMS. Try this one: - RJXZS 192S - Supplier Manuals & Downloads
Where do I get the User Manual?
User Manual can be found here: 4-192S BMS operation manual.pdf
How do I calculate how many cells I need?
You need to see the voltage range of the inverter, and calculate based on the chemistry you intend to use. For instance, a Fronius Gen24 takes 160-531V on the battery input. Using the limits for NCM chemistry (3.0V empty, 4.2V full), this means the minimum viable battery configuration would be 160V empty (160V/3.0V=53S), and the largest battery configuration would be (531V/4.2V=126S). So a 53S at minimum, and a 126S config max.
Setting up the BMS
You can download the latest official version from RJXZS at: https://www.rjxzstech.com/download/the-APP-of-192S-Ghost-BMS-for-android.html
On some phones to run app you need to turn on GPS positioning and allow app to use that feature:
Settings are configured on the RJXZS BMS via the TOPBMS smartphone app. The most important settings are capacity (AH), cells in series, low voltage cutoff, and charge end voltage.
- Remember to calibrate Ah. Without this, the SOC% will be 0 all the time. The best way is to charge battery to its maximum and set Battery used capacity in Top BMS APP to 0 Ah.
- It is recommended to activate function "Automatically Clear Capacity" - this will set SOC to 100% every time charge voltage limit is reached
[!CAUTION] Failure to set correct voltage cutoff according to your battery chemistry can lead to catastrophic damage. For instance an Lifepo4 cell should charge max to 3.5V. Overcharging LFP cells to >4V will cause permanent damage and/or battery fire
Setting up the Battery-Emulator integration
[!IMPORTANT] The RJXZS BMS runs at 250kbps CAN speed. Due to this it cannot be connected to same CAN bus as solar inverters. This BMS needs to be connected to the Native CAN (Built in CAN on LilyGo, CAN1 on Stark)
Start by connecting the CAN port of the BMS, to the CAN port on the Battery-Emulator
- If you have a Modbus inverter, connect it to the RS485 port of the Battery-Emulator
- If you have a CAN inverter, you need to connect it to a separate 500kbps CAN channel, since the BMS runs at 250kbps on the native CAN
- One option is to use add on MCP2515 board
- Another options is to use add on CAN-FD MCP2518 board
- Third option is to use Stark CMR board
- Fourth option is to use Double LilyGo setup
Compile the software with the #define RJXZS_BMS
option enabled in USER_SETTINGS.h
. Also remember to tweak the battery limits in RJXZS-BMS.h
file
After uploading the code to the Battery-Emulator, you can check cellvoltages, SOC etc. via the Webserver
[!IMPORTANT] During first startup, RJXZS will report faults, thats why first thing you need to do is clear all events in bluetooth app by holding CLR button for a few seconds:
All events which are stored inside RJXZS BMS are marked very well in battery emulator Event List:
Example of value monitoring, and cellvoltage monitoring of a 70S battery
Example integrations
Feel free to add your own pictures here!