diy solar

diy solar

Seplos CAN BUS RS485 48v 200A 8S-16S BMS

Like what? Give me one possible scenario where this can be caused by the BMS.

The cells' voltages are measured correctly. I've checked that with a multimeter. The total battery voltage also. The issue seems to be on the inverter side - battery voltage is OK, but during discharge, the inverter sees a voltage spike. Give me one possible scenario for that. And this is not 0.1s voltage spike, but like 3-4-5 seconds spike. I have no logical explanation of how this can happen yet, so I'm leaning toward an inverter issue.
 
Like what? Give me one possible scenario where this can be caused by the BMS.

The cells' voltages are measured correctly. I've checked that with a multimeter. The total battery voltage also. The issue seems to be on the inverter side - battery voltage is OK, but during discharge, the inverter sees a voltage spike. Give me one possible scenario for that. And this is not 0.1s voltage spike, but like 3-4-5 seconds spike. I have no logical explanation of how this can happen yet, so I'm leaning toward an inverter issue.
I can't give you a scenario. Its a weird issue. Thats why I have concerns. I was leaning toward the battery having the issue, since I have more faith in the SMA gear than the Seplos BMS. Is your battery a DIY Mason?
 
It is DIY battery with Seplos BMS. Very similar to the Mason one. Details on the build are here - https://diysolarforum.com/threads/48v-280ah-diy-battery.52600/ .

This setup was working just fine since January this year. I won't go in an open loop mode until there is a reason to do so. A week or two more should not be an issue. I'm confident that the battery is in good health because it is being monitored pretty closely. A microcontroller is communicating with the battery through the RS485 port and is collecting data at regular intervals. The data is dumped to an InfluxDB and I have dashboards dedicated to monitoring the battery and its cells.

To debug the issue I'm taking the following step with the goal to validate the inverter logs. The WiFi to RS485 bridge (the microcontroller) firmware was just updated to collect the max port and battery voltage in each data collection time frame (1 minute). Data is pulled from the battery each second. If there is a spike on the port voltage and no spike on the battery voltage the only cause for this can be the inverter itself.
 
Last edited:
Things went smoother today. No protection events in the BMS and somehow the SOC jumped from 98.something to 99.9% at one moment, but I don't know why.

Here are some details about the charging sequence:
1) 09:28 - charging at 2+kW, SOC is 96.8%
2) 09:29 - sudden drop in charging (no other load on the system, fully sunny), SOC is 97%
3) 09:35 - SOC jumps from 98% to 98.2%. The 98.2% is some special value that is being set when a voltage warning pops up. In that case - battery voltage was 55.21V, the total pressure voltage warning was 52.20V.
4) 09:55 - SOC is 98.7%, charging goes in some strange mode - charge/discharge sequences in 1 minute intervals. Cell voltage goes from 3.45V to 3.55V. This goes on for 1 hour, then charging stops.
5) 11:05 - load is being introduced on the battery. Minor discharge in the next hour and half till battery drops to 98.3%.
6) 12:28 - charge spike for a while, then again charge/discharge events in 1 minutes interval for 30 minutes.
7) 13:00 - SOC jumps to 99.9%. No more charging after that.

Cell voltage did not go above 3.55V and battery voltage did not go over 56.6V. Cell protection voltage was 3.65V, battery protection voltage was 56V, but the protection was turned off.

I don't like the hour and half of charge/discharge cycles that were keeping the cells at 3.45 go 3.55 volts. There is an "Interval charge capacity" setting that was set to 96% and I've moved it to 99.9% with the hope to remove that cycles.

Meanwhile - no logs on inverter side for any issues. The question how the battery went to 99.9% SOC still remains. Tomorrow I'll know if I've managed to get rid of the charge/discharge cycles that seems to be for cell balancing. I suspect that the BMS wanted to balance the cells and forced the inverter in this strange loop. Hopefully I won't see this tomorrow.

P.S. The BMS internal clock can be set through the calibrate button. Proper BMS clock will ease log correlation.
 

Attachments

  • 1684938061395.png
    1684938061395.png
    41.2 KB · Views: 5
  • 1684938081489.png
    1684938081489.png
    43.2 KB · Views: 5
  • 1684938100682.png
    1684938100682.png
    29.3 KB · Views: 5
Things went smoother today. No protection events in the BMS and somehow the SOC jumped from 98.something to 99.9% at one moment, but I don't know why.

Here are some details about the charging sequence:
1) 09:28 - charging at 2+kW, SOC is 96.8%
2) 09:29 - sudden drop in charging (no other load on the system, fully sunny), SOC is 97%
3) 09:35 - SOC jumps from 98% to 98.2%. The 98.2% is some special value that is being set when a voltage warning pops up. In that case - battery voltage was 55.21V, the total pressure voltage warning was 52.20V.
4) 09:55 - SOC is 98.7%, charging goes in some strange mode - charge/discharge sequences in 1 minute intervals. Cell voltage goes from 3.45V to 3.55V. This goes on for 1 hour, then charging stops.
5) 11:05 - load is being introduced on the battery. Minor discharge in the next hour and half till battery drops to 98.3%.
6) 12:28 - charge spike for a while, then again charge/discharge events in 1 minutes interval for 30 minutes.
7) 13:00 - SOC jumps to 99.9%. No more charging after that.

Cell voltage did not go above 3.55V and battery voltage did not go over 56.6V. Cell protection voltage was 3.65V, battery protection voltage was 56V, but the protection was turned off.

I don't like the hour and half of charge/discharge cycles that were keeping the cells at 3.45 go 3.55 volts. There is an "Interval charge capacity" setting that was set to 96% and I've moved it to 99.9% with the hope to remove that cycles.

Meanwhile - no logs on inverter side for any issues. The question how the battery went to 99.9% SOC still remains. Tomorrow I'll know if I've managed to get rid of the charge/discharge cycles that seems to be for cell balancing. I suspect that the BMS wanted to balance the cells and forced the inverter in this strange loop. Hopefully I won't see this tomorrow.

P.S. The BMS internal clock can be set through the calibrate button. Proper BMS clock will ease log correlation.
Are those numbers with communication on or off between the Sunny Island and Seplos BMS? Do they change when there is no comms between the inverter and battery?
 
CAN communication between inverter and BMS. I haven't tried in open loop mode. The only option for open loop mode is to configure the battery as lead-acid and set proper voltages. But I don't want to go there unless there is no other option.

Communication works, because the inverter knows the battery SOC and it is 1:1 with the BMS value.
 
CAN communication between inverter and BMS. I haven't tried in open loop mode. The only option for open loop mode is to configure the battery as lead-acid and set proper voltages. But I don't want to go there unless there is no other option.

Communication works, because the inverter knows the battery SOC and it is 1:1 with the BMS value.
Thats all great, but removing comms may help you better isolate the issue. If the battery is humming along, and the inverter starts freaking out, then that pinpoints an inverter issue that can be more easily isolated.
 
The voltage spike issue is isolated. It happens only after the BMS hits high-voltage protection and interrupts the charging path. Based on what I saw today (charge/discharge cycles) it is pretty clear why this is happening.

The charge/discharge cycle issue will be isolated one or another way. One option is sniffing the CAN communication. The other is what you say - go in an open loop and voltage-based charging approach.
 
The voltage spike issue is isolated. It happens only after the BMS hits high-voltage protection and interrupts the charging path. Based on what I saw today (charge/discharge cycles) it is pretty clear why this is happening.

The charge/discharge cycle issue will be isolated one or another way. One option is sniffing the CAN communication. The other is what you say - go in an open loop and voltage-based charging approach.
which is what i suggested before..
a sudden close of charging path will result in a short spike..
comms should prevent that though, telling the inverter to slow down charging before the high voltage disconnect can occure....

something isnt right if your inverter doesnt obay those bms commands.

in the microcycling..
it helps to keep your cells in balance...

the idea is your inverter slows charging, so the passive balancer can do it's job..
as it will take a lot of cycles to get the cells right it will microcycle at the top of the max of your cells..
i do agree 96% is a bit too low, so i have it set to 98% untill my cells are well.balanced , then lower it..

just my 2 cents
 
This micro cycling is controlled based on the "Interval charge capacity" BMS setting, right?

Do you have an idea what is the event that triggers the SOC being set to 99.9%?
 
This micro cycling is controlled based on the "Interval charge capacity" BMS setting, right?

Do you have an idea what is the event that triggers the SOC being set to 99.9%?
yes , monomer high voltage warning, and the charge voltage..
when those 2 are met, the bms assumes a 100% soc

alarm, either on cell level or total pack will force a disable chaeging ( based on the switches you have set)
 
Hm, mine (10E) doesn't do that. Monomer warning was set to 3.45V, total pressure voltage warning (or something like that) was set to 55.2V. These thresholds were breached in a lot of the microcycles. But the SOC was slowly climbing, not going to 99.9%.

I'll check that once again and share the results.

But here are some logs from the BMS from today. I.e. the 15:39:25 line - both warnings (Monomer high voltage alarm, Total pressure high pressure alarm), cells at ~3.53V, total voltage 56.43V, SOC 98.9%.
The line (at 18:08:50) with the SOC getting at 99.9% contains one more message - Intermittent power supply waiting. Any idea what does it mean?
 

Attachments

  • Hisotry data 20230524_0622.csv.zip
    7.2 KB · Views: 5
Last edited:
The micro-cycling is likely caused by the balancing. Today I did several changes, but the major one was to avoid balancing. The charging current dropped to 10A and at some point dropped even further, SOC got to 99.4% and the inverter switched to discharging mode with very low load (20W). Same was observed in another setup.

Another issue popped up. If the warning on/off thresholds are too close the charging current starts going up and down when the warning pops up and when it is cleared. In my case these were the cell warning thresholds set to 3.38V and 3.40V.

Tomorrow I'll do another attempt to tackle this by applying the following settings:
Cell voltage WARN thresholds 3.35/3.45 volts.
Battery voltage WARN thresholds 53.6/55.2 volts.
Balance threshold of 3.5V and open/close difference set to 0.03/0.02 volts.

Hopefully this time everything will be OK and I'll get steady charge up to 3.45V, then charge at low current and then charge termination without disconnect and without going over 3.55V in any cell.
 
And an update with the above settings.

The battery was charging at full speed (3kW, this is what the inverter can supply) until the 3.45V cell/55.2V battery warning voltages were reached. After that the current dropped to 10A and charging continued in CC mode till the battery voltage got to 56V. Then it seems to go in CV charge mode for 12-13 minutes, the current dropped to almost zero and the SOC jumped from 98.5% to 100%.

So to me the charging algorithm seems to be as follows:
1) Charge at full speed until monomer and total pressure warning voltages are reached.
2) Switch to 10A charging (CC mode) until the total pressure voltage protection is reached.
3) Switch to CV charging mode until current drops to 0. (this will likely fail if the total pressure protection is enabled).
4) Set SOC to 100%.

If the monomer pressure protection is not reached the charge MOSFETs will not be turned off. The inverter reports no errors and warnings in the log with this settings.

The CC mode from step 2 will go to micro-charge/discharge cycle mode if the cell balancing gets open. This will still slowly climb the voltages to the "total pressure protection" threshold, but due to the fact that this is happening slowly - there will be more time for the balancing to do its job.

I'll go to a few more tests to be fully sure that the above works as stated.

I'm still wandering what the "Interval charge capacity" settings do. The default is 96%. Mine is set to 99.9%. But looking at the last results I'm not sure that I need any improvements on the charging.
 
And an update with the above settings.

The battery was charging at full speed (3kW, this is what the inverter can supply) until the 3.45V cell/55.2V battery warning voltages were reached. After that the current dropped to 10A and charging continued in CC mode till the battery voltage got to 56V. Then it seems to go in CV charge mode for 12-13 minutes, the current dropped to almost zero and the SOC jumped from 98.5% to 100%.

So to me the charging algorithm seems to be as follows:
1) Charge at full speed until monomer and total pressure warning voltages are reached.
2) Switch to 10A charging (CC mode) until the total pressure voltage protection is reached.
3) Switch to CV charging mode until current drops to 0. (this will likely fail if the total pressure protection is enabled).
4) Set SOC to 100%.

If the monomer pressure protection is not reached the charge MOSFETs will not be turned off. The inverter reports no errors and warnings in the log with this settings.

The CC mode from step 2 will go to micro-charge/discharge cycle mode if the cell balancing gets open. This will still slowly climb the voltages to the "total pressure protection" threshold, but due to the fact that this is happening slowly - there will be more time for the balancing to do its job.

I'll go to a few more tests to be fully sure that the above works as stated.

I'm still wandering what the "Interval charge capacity" settings do. The default is 96%. Mine is set to 99.9%. But looking at the last results I'm not sure that I need any improvements on the charging.
Interesting results. I have reservations on needing the BMS settings to make the inverter to stop charging when hitting set limits, especially when you add additional batteries. I have seven Seplos of mixed BMS versions (C and D).
I am thinking of NOT using BMS communications, and just set my inverters to below the BMS thresholds, and will use the Victron shunt to provide total SOC. I guess I like simple. It will be interesting to see cell deviation across all the batteries. I have a Raspberry Pi I will try to get working with the Seplos BMS to monitor that with Solar Assistant.
Thanks for sharing all your testing!
 
Interesting results. I have reservations on needing the BMS settings to make the inverter to stop charging when hitting set limits, especially when you add additional batteries. I have seven Seplos of mixed BMS versions (C and D).
I am thinking of NOT using BMS communications, and just set my inverters to below the BMS thresholds, and will use the Victron shunt to provide total SOC. I guess I like simple. It will be interesting to see cell deviation across all the batteries. I have a Raspberry Pi I will try to get working with the Seplos BMS to monitor that with Solar Assistant.
Thanks for sharing all your testing!
Getting there! Damn things are heavy, and trying to make this waterproof is a pain in the ass. The three larger Masons will go on the left.
 

Attachments

  • 20230529_152548.jpg
    20230529_152548.jpg
    175.1 KB · Views: 19
  • 20230529_152559.jpg
    20230529_152559.jpg
    177.6 KB · Views: 18
Really hoping someone can shed some light on this. perhaps it's nothing to worry about?

I have a 10E and a 10C paralleled, the 10E is the master running firmware v16.4, the 10C the slave on Firmware v2.8.

Prior to connecting I reset them both, set the protocol on each to Victron, connected them via RS485 and set the dip switches to 5 on the master (10E) and 1 on the slave (10C). The master can be seen by my Cerbo GX, each battery is charging and all appears to be well. However..

I'm now getting the following errors on the Slave (10C).

Get pack #1 telemetry data - Error

Get pack #1 remote connection data - Error


I haven't checked the master yet, as it's controlling my charge controllers and can't switch to RS485 until the sun has gone down (As I don't want to miss out on a single watt of solar ?) .

Has anyone experienced anything similar?



Thanks in advance.

IMG_7650.JPG
remote communication data
 
Last edited:
Back
Top