Wiki source code of BMS Main X

Last modified by Admin on 2025/05/28 10:39

Show last authors
1 (% class="box infomessage" %)
2 (((
3 BMS Main X firmware update procedure is described [[here>>doc:Battery management systems.BMS Main X.5\. Firmware update.WebHome]].
4 )))
5
6 = v2.8.0 =
7
8 [[BMS_Main_X2_v2.8.0.srec>>FileManager.BMS_Main_X2_v2\.8\.0\.srec]]
9
10 == Features ==
11
12 * new flags that allow to interrupt (shorten) the module balancing stage if all battery modules are already joined (see the "Control - Charge", "Control - Discharge", "Control - Charge/Discharge" sections)
13 * forwarding CLI and bootloader CAN messages from CAN EXT interface to CAN INT interface and back
14 * new parameter for setting the type of network to which the BMS GSM communication module connects (see the "Connectivity - Cellular" section)
15 * new flag that controls whether to use open circuit voltage or actual voltage when determining the voltage unbalance error (see the "Protections - Voltage unbalance (in any state)" section)
16 * new regulator that maintains battery current limiting to ensure that actual module currents do not exceed their current limits (see the "Control - Charge", "Control - Discharge", "Control - Charge/Discharge" sections)
17 * ability to select the battery module errors that cause the battery critical error (see the "Protections - Critical error" section)
18 * ability to update the device serial number from the service account if the number is reset to the default value for some reason (see the "Service" section)
19
20 == Improvements ==
21
22 * dynamic calculation of data transfer schedule for optimal communication with a large number of battery modules
23 * ability to complete device initialization after the set timeout has expired and the minimum number of modules has been detected (see the "Control - Initialization" section)
24 * 30 second delay when remounting SD card after detecting mount error
25 * saving the number of joined modules in log files
26
27 == Fixes ==
28
29 * resolving the issue of saving some battery module signals in log files
30
31 = v2.7.0 =
32
33 [[BMS_Main_X2_v2.7.0.srec>>FileManager.BMS_Main_X2_v2\.7\.0\.srec]]
34
35 == Features ==
36
37 * new algorithm in the Charging/Discharging controller that allow to control the Charging/Discharging contactor independently from the Charging and Discharging signals (see the "Control - Charge/Discharge" section). The new "Independent" algorithm is preferred in the battery systems with one contactor
38 * new "Need acknowledge" warning signal that is set when a new record is created in the errors journal. The signal can be cleared in the "Service - Errors journal" section
39 * new Max-Min algorithm for calculating the final battery SOC in the "Control - Calculation" section
40 * improved control of the precharging contactor, which can precharge capacitive load using multiple attempts and detect high power dissipated in the precharge resistor (see the "Control - Precharge" section)
41 * ability to exclude errors from being saved in the error journal (see the "Service - Errors journal" section)
42 * ability to restart the device according to a specified schedule at the moment when the battery system is preparing to charge
43 * new error "High contactor temperature" that can be used to open the specified contactor to prevent it from overheating (see the "Protections - High contactor temperature" section)
44 * new internal signal "Coolant pump" that can be assigned to a relay or discrete output (for signal settings, see the "Control - Coolant pump" section)
45 * new flags indicating the readiness of battery modules to join for charging and discharging (see the "Modules" section)
46 * new flag to set the "Voltage unbalance" errors for battery modules that are not ready to charge or discharge (see the "Protections - Voltage unbalance (in any state)" section)
47 * initial support for Pylontech inverters
48 * extension of the CANopen dictionary to provide additional information for the BMS Display (device serial number, battery serial number, battery address, Wi-Fi and LAN addresses, SOH, capacity, etc.)
49
50 == Improvements ==
51
52 * ability to finish device initialization even if the number of battery modules found is less than the number of modules enabled (see the "Control - Modules" section)
53 * placing the device input signals to the "Battery" section and adding raw discrete inputs to the "Signals" section
54
55 == Fixes ==
56
57 * resolving the issue of ignoring the minimum number of battery modules allowed to join located in the "Control - Discharge" section
58 * resolving the issue of joining battery modules the number of which must be greater than or equal to the minimum value specified in the settings
59 * small internal fixes
60
61 = v2.6.3 =
62
63 [[BMS_Main_X2_v2.6.3.srec>>FileManager.BMS_Main_X2_v2\.6\.3\.srec]]
64
65 == Improvements ==
66
67 * adaptation of the device to the production test bench
68
69 = v2.6.2 =
70
71 [[BMS_Main_X2_v2.6.2.srec>>FileManager.BMS_Main_X2_v2\.6\.2\.srec]]
72
73 == Fixes ==
74
75 * resolving the problem of saving device parameters
76
77 = v2.6.1 =
78
79 [[BMS_Main_X2_v2.6.1.srec>>FileManager.BMS_Main_X2_v2\.6\.1\.srec]]
80
81 == Fixes ==
82
83 * resolving the issue of preparing battery module states written to Modbus registers
84 * resolving the problem of writing the device's working time to a non-volatile memory very often
85 * resolving the problem of returning error states when saving device parameters (mainly via Wi-Fi)
86
87 = v2.6.0 =
88
89 [[BMS_Main_X2_v2.6.0.srec>>FileManager.BMS_Main_X2_v2\.6\.0\.srec]]
90
91 == Features ==
92
93 * new parameter to set the minimum number of battery modules allowed to join (see the "Control - Charge" and "Control - Discharge" sections)
94 * ability to rejoin battery modules if their voltage is close to the battery voltage (see the "Control - Charge" and "Control - Discharge" sections)
95 * selection of errors that cause reset of contactor control signals (see the "Control - Main contactor", "Control - Charge", "Control - Discharge", "Control - Heater", "Control - Cooler" sections)
96 * new internal signal "General error (modules)" which is the logical sum of the "General error" signals from the battery modules
97 * new assignments "Charging", "Precharging", "Discharging", "Charging/Discharging", "Main contactor", "Critical error" and "General error (modules)" for the discrete outputs (see the "Signals - Output discrete signals - Assignments" section)
98 * new assignments "Critical error" and "General error (modules)" for the relays (see the "Signals - Relays - Assignments" section)
99
100 == Improvements ==
101
102 * rearrangements in the settings sections, which are made to simplify the setup process
103
104 == Fixes ==
105
106 * resolving the problem of device hanging due to high activity on the CAN bus during startup