diy solar

diy solar

Sol-Ark 12K and EG4LL battery communications

Same could be said for USB but it eventually won out over other standards, and that seems to be happening with pylontech but it's too early to say whether everyone will follow suit.
But see, USB is the "medium" for the communication, like CAN, RS485, ethernet. There still needs to be a "language" between devices. At least in the case of USB there is an established protocol to query what device just got connected. I don't get the impression that we are even at that point with batteries and inverters.
 
Why is that the defacto standard? Pylontech is just one of lots of battery companies. I don't mean to challenge you, I just don't understand how they are THE one.

If I design a battery and only sell one of them, I could still say: "Any battery that does Horesefly over either canbus or RS485 should be able to talk to any inverter that supports Horsefly and has canbus / RS485."
really horsefly ?
all inverters i have seen so far that support bms comms , support pylontech, why would you think that is

why would you think just about all battery manf. in one way or another are already or working on a pylontech compatible protocol ?

i would rather be surprised if the eg4's don't already support pylontech

usually standards have a way of figuring out themselves.
 
really horsefly ?
all inverters i have seen so far that support bms comms , support pylontech, why would you think that is

why would you think just about all battery manf. in one way or another are already or working on a pylontech compatible protocol ?

i would rather be surprised if the eg4's don't already support pylontech

usually standards have a way of figuring out themselves.
Like I said, I was just asking how they are the standard. It sounds like you are saying that it is just working out that way. I guess that's OK. There is some danger in a standard being "owned" by a single company that has skin in the game (think Adobe or Microsoft). Maybe there will someday be an independent body like ISO or ARESCA that would own the standard.

So back to my original question: What is the benefit to a system or end user if the inverter and battery use the Pylontech standard?
 
Like I said, I was just asking how they are the standard. It sounds like you are saying that it is just working out that way. I guess that's OK. There is some danger in a standard being "owned" by a single company that has skin in the game (think Adobe or Microsoft). Maybe there will someday be an independent body like ISO or ARESCA that would own the standard.

So back to my original question: What is the benefit to a system or end user if the inverter and battery use the Pylontech standard?
that they communicate.
now the rest depends on inverter and bms capabilities.
if the bms provide soc , the the inverter could taper charging amps, preventing cell differences
it could also mean a very much more reliable soc measurement.
alarming from bms to inventer, without hard limits on both ( stop discharge or charge based on % soc)
if using multiple batteries balancing between bateries.

just to name a few i can think of from the top of my head.
is it required to use a battery ?
no not really

will it enhance monitoring, optimalisation and possibly longevity , yes,yes and probably
 
that they communicate.
now the rest depends on inverter and bms capabilities.
if the bms provide soc , the the inverter could taper charging amps, preventing cell differences
it could also mean a very much more reliable soc measurement.
alarming from bms to inventer, without hard limits on both ( stop discharge or charge based on % soc)
if using multiple batteries balancing between bateries.

just to name a few i can think of from the top of my head.
is it required to use a battery ?
no not really

will it enhance monitoring, optimalisation and possibly longevity , yes,yes and probably
Yeah, I just don't know, but I respect your opinion.

For LFP, a dependable SoC measurement is just dependent on a good Coulomb counter. We can debate on how valuable it is for the inverter/charger to know about it. Tapered amps: I can see some slight advantage, but only because most BMS's have such small passive balancing capability that it might be good to have more time in the upper knee of the charge. Not sure how multiple batteries get balanced by an inverter. Stopping charging should be based on tail amps in my opinion, not something the BMS reports. Stopping discharge? Seems like the inverter needs a LVCO setting, and so does the BMS, and the inverter cutoff should be higher. Is it better to have the inverter "know" that it is getting close to the cutoff? I don't see why.

Anyway, you are right that those are things that could be communicated. I certainly don't think very many inverter/chargers would know what do do with the info, and I don't think it is important enough to clamor for it.

Having said that, I do think that there is good reason to provide an ability for SOMETHING to be able to monitor the battery/BMS, especially for some remote monitoring or logging. A good standard would be helpful. Looking at the VenusOS thread here makes it pretty obvious that each BMS seems to do its own thing.
 
@r
Yeah, I just don't know, but I respect your opinion.

For LFP, a dependable SoC measurement is just dependent on a good Coulomb counter. We can debate on how valuable it is for the inverter/charger to know about it. Tapered amps: I can see some slight advantage, but only because most BMS's have such small passive balancing capability that it might be good to have more time in the upper knee of the charge. Not sure how multiple batteries get balanced by an inverter. Stopping charging should be based on tail amps in my opinion, not something the BMS reports. Stopping discharge? Seems like the inverter needs a LVCO setting, and so does the BMS, and the inverter cutoff should be higher. Is it better to have the inverter "know" that it is getting close to the cutoff? I don't see why.

Anyway, you are right that those are things that could be communicated. I certainly don't think very many inverter/chargers would know what do do with the info, and I don't think it is important enough to clamor for it.

Having said that, I do think that there is good reason to provide an ability for SOMETHING to be able to monitor the battery/BMS, especially for some remote monitoring or logging. A good standard would be helpful. Looking at the VenusOS thread here makes it pretty obvious that each BMS seems to do its own thing.
a good bms has a good coulomb meter intergrated.

multible bateries will not get balanced by the inverter itself, however, tapering amps do help the balancing process.
most unbalances appear under high amp load.
furthermore , bms can signal eachother .

i agree, i would hope by now there would be a better co-operation between manufactorers
 
I have a couple of thoughts that maybe are really questions.

First, regarding batteries talking to inverters. I understand that there are a few things that communications between batteries and inverters can help with. The battery (or rather, the BMS) can provide more accurate voltage and state of charge information to the inverter. I suppose it can also allow the BMS to control / regulate the charging current coming from the charger part of the inverter. Are there other things? I know others may disagree, but to me this communication is actually of marginal value to most solar installs. Besides, there are very few inverter / chargers that would know how to deal with such communications from the battery / BMS.

Second, RS485 is just a serial communications mechanism, like RS232. It doesn't mean anything unless there is an universally adopted standard for the messages that are communicated on it, and I can't tell that there is any such standard for batteries. I think this is kinda what @RichardfromSignatureSolar is saying. Instead, it seems like each inverter manufacturer needs to negotiate a "language" with every battery / BMS manufacturer. I use Schneider equipment, and I know right now for any battery to work "closed loop" with them, Schneider has to work directly with the battery manufacturer, who has to implement Schneider's proprietary Xanbus interface, and then Schneider has to "certify" them. Talk about a lack of standard.

As it is, it seems to me that until there is a standard, it is silly to expect every inverter/charger to talk to every battery/BMS. Maybe more importantly, I don't see such communications as being valuable enough to clamor for it.

I'm not trying to argue about any of this, as I really don't know. Do I not understand some great value in these connections? Is there a standard that everyone should be implementing? Am I missing something?
This is exactly correct.
Communication is valuable to some, not to others. Communication is an asset to me. I just think with something that has become as high tech as solar components, with all the years of the components on the market, not having universal communication protocols is poor reflection on the Manufacturers at best. Here are the comm ports just don't bother plugging them in unless it's inverter x, and battery y. " Please make sure you spend many hours on the net to find out what goes with what" Manufacturer nonsense. The inverter/CC is the engine, the batteries are the fuel. These inverters and batteries didn't just show up on the market last week. The engine in my car is ok with any brand of gas. Not that I'm ok with the price of the gas.
I don't know how to explain it any better than horsefly did. The way the market it right now, there isn't a standard protocol and until there is you either pay a premium for an installer to research and install for you, or if you are DIY you take the responsibility upon yourself.
 
He is the owner of Signature Solar, where the EG4 battery originates from. We have been in direct communication with Sol-Ark.
I have to update this statement as I misunderstood a communication I had with our engineering team - They had stated they were in direct communications with the manufacturer to develop a firmware package to communicate with Sol-Ark. I misinterpreted that as us speaking with Sol-Ark directly to develop this. What they meant was that we were developing firmware with our battery manufacturers to follow Sol-Ark's protocol to communicate. It was not a collaborative effort, it is something that our engineering team undertook with the manufacturer of our battery to create and make work. We are testing it currently and hope to have it released soon. I just had to do some more fact finding after the previous post stating that Sol-Ark said they were not communicating with us - because I misunderstood what was said. Just want to be 100% transparent with everyone about why I made this statement, and as soon as I had clarification this morning I knew I had to post here.
 
until there is you either pay a premium for an installer to research and install for you, or if you are DIY you take the responsibility upon yourself.

Or buy a SOK battery that has it figured out and documented for a great majority of common inverters, with the various different communication cables required for various inverter types readily available. That's a simple solution.
 
Or buy a SOK battery that has it figured out and documented for a great majority of common inverters, with the various different communication cables required for various inverter types readily available. That's a simple solution.
I guess this would be a part of a DIYer doing research :D I like your style Dexter!
 
Just going to throw this out there in regards to the Sol-Ark.

If a battery manufacturer is just making their BMS compatible with the Sol-Ark by writing basic commands and sending them to the Sol-Ark using a Generic profile then your only going to get a partial benefit. When I say Partial, it will be just like the Growatt talking to an EG4LL. You can see battery voltage, temperature and maybe one or two other things.

On the other hand if Sol-Ark writes code to make the Sol-Ark compatible with a specific battery it opens up a whole bunch of other benefits.

For Instance when I Plug in an eFlex Battery and set the eFlex ID profile number in the Sol-Ark, it starts a two way dialog with the battery. If a battery is not supported by Sol-Ark it is a one way conversation. The battery sends info to the Sol-Ark and it just displayed but the Sol-Ark does nothing to act on the info because it has no command set to follow. That is why getting Sol-Ark to integrate a battery into their firmware makes a huge difference.

When a supported battery like an eFlex is plugged in the Sol-Ark it changes all its settings to work with that eFlex battery.

In the Sol-Ark settings the following items are automatically changed if One eFlex is plugged in.

Voltage and Temperature are displayed as expected
Battery Size is Automatically set to 105Ah
Max Discharge is Automatically set to 60Ah
Max Charge is Automatically set to 60Ah
All Charging Voltage steps are automatically set to what Fortress Power Recommends for the eFlex.
If Temperature goes up too high, the charge rate from the Sol-Ark slows.
The Sol-Ark adapts the charging current based on what the BMS requests.

If I add another eFlex battery to the system the setting automatically change again.

Battery Size goes to 210Ah
Max Discharge goes to 120Ah
Max Charge Goes to 120Ah
The Charge voltages of remain the same but if for some reason one pack reaches 100% SOC before the other the Sol-Ark is notified and it instantly adjusts the charging current.

Add more eFlex's and changes happen again.

If a battery in the rack goes off line for some reason the Sol-Ark will change it's parameters to remove it from all of it's calculations.
 
Last edited:
Just going to throw this out there in regards to the Sol-Ark.

If a battery manufacturer is just making their BMS compatible with the Sol-Ark by writing basic commands and sending them to the Sol-Ark using a Generic profile then your only going to get a partial benefit. When I say Partial, it will be just like the Growatt talking to an EG4LL. You can see battery voltage, temperature and maybe one or two other things.

On the other hand if Sol-Ark writes code to make the Sol-Ark compatible with a specific battery it opens up a whole bunch of other benefits.

For Instance when I Plug in an eFlex Battery and set the eFlex ID profile number in the Sol-Ark, it starts a two way dialog with the battery. If the battery is not supported by Sol-Ark it is a one way conversation. The battery sends info to the Sol-Ark and it just displayed but the Sol-Ark does nothing to act on the info because it has no command set to follow. That is why getting Sol-Ark to integrate a battery into their firmware makes a huge difference.

When a supported battery like an eFlex is plugged in the Sol-Ark it changes all its settings to work with that eFlex battery.

In the Sol-Ark settings the following items are automatically changed if One eFlex is plugged in.

Voltage and Temperature are displayed as expected
Battery Size is Automatically set to 105Ah
Max Discharge is Automatically set to 60Ah
Max Charge is Automatically set to 60Ah
All Charging Voltage steps are automatically set to what Fortress Power Recommends for the eFlex.
If Temperature goes up to high the charge rate from the Sol-Ark slows.
The Sol-Ark adapts the charging current based on what the BMS requests.

If I add another eFlex battery to the system the setting automatically change again.

Battery Size goes to 210Ah
Max Discharge goes to 120Ah
Max Charge Goes to 120Ah
The Charge voltages of remain the same but if for some reason one pack reaches 100% SOC before the other the Sol-Ark is notified and it instantly adjusts the charging current.

Add more eFlex's and changes happen again.
OK, that's interesting. When I asked what benefit people were looking for, I didn't really get much, but there is some here.

However, it seems like most of this is convenience. I.e., it is one time settings that are done automatically because of the connection. Normally, you'd need to set your Inverter/Charger one time with some specifics about your battery, like the battery size and max charge rate, the bulk / absorption / float voltage, etc.

I would think that if someone wanted communication between the battery / BMS and the inverter / charger, it would be to dynamically change things based on changing conditions. Reduced charge rates when the BMS sees the SoC getting close to full is the best example that I can really see value in.
 
I would think that if someone wanted communication between the battery / BMS and the inverter / charger, it would be to dynamically change things based on changing conditions. Reduced charge rates when the BMS sees the SoC getting close to full is the best example that I can really see value in.
This is what the Pylon protocol permits. I presume other protocols are similar.

1651001746391.png
You can see the inverter slowly ramping charging voltage and then step down amperage as the SoC approaches 100%. (The jump in current after 8pm was me manually adjusting the current limit on the inverter. The BMS is actively telling the inverter what acceptable voltage/amperage limits are.)
 
When a supported battery like an eFlex is plugged in the Sol-Ark it changes all its settings to work with that eFlex battery.

In the Sol-Ark settings the following items are automatically changed if One eFlex is plugged in.

Voltage and Temperature are displayed as expected
Battery Size is Automatically set to 105Ah
Max Discharge is Automatically set to 60Ah
Max Charge is Automatically set to 60Ah
All Charging Voltage steps are automatically set to what Fortress Power Recommends for the eFlex.
If Temperature goes up too high, the charge rate from the Sol-Ark slows.
The Sol-Ark adapts the charging current based on what the BMS requests.

If I add another eFlex battery to the system the setting automatically change again.

Battery Size goes to 210Ah
Max Discharge goes to 120Ah
Max Charge Goes to 120Ah
The Charge voltages of remain the same but if for some reason one pack reaches 100% SOC before the other the Sol-Ark is notified and it instantly adjusts the charging current.
This is done via one way communication and works the same with the SOK battery. In fact, the max charge/discharge is programmed based on current battery status, so for example when the battery is balancing, the battery requests the inverter only give it a few amps so it doesn't blow past the OVP.
 
would think that if someone wanted communication between the battery / BMS and the inverter / charger, it would be to dynamically change things based on changing conditions. Reduced charge rates when the BMS sees the SoC getting close to full is the best example that I can really see value in.
Nailed it.
 
OK, that's interesting. When I asked what benefit people were looking for, I didn't really get much, but there is some here.

However, it seems like most of this is convenience. I.e., it is one time settings that are done automatically because of the connection. Normally, you'd need to set your Inverter/Charger one time with some specifics about your battery, like the battery size and max charge rate, the bulk / absorption / float voltage, etc.

I would think that if someone wanted communication between the battery / BMS and the inverter / charger, it would be to dynamically change things based on changing conditions. Reduced charge rates when the BMS sees the SoC getting close to full is the best example that I can really see value your daily
Manual settings are fine but having the inverter be able to instantly adjust settings, like available current draw really come in handy if you turn off a battery or one of them trips out. This can save you from overloading your the remaining packs during a high demand. Also charging current is adjusted automatically.
 
This is done via one way communication and works the same with the SOK battery. In fact, the max charge/discharge is programmed based on current battery status, so for example when the battery is balancing, the battery requests the inverter only give it a few amps so it doesn't blow past the OVP.
The Max Discharge and Charge on my Sol-Ark are either set manually or are set by the Inverter when the eFlex batteries are plugged in.
If I only plug in one it will set the values to 60A. If I try to manually change that it will override the new setting and go back to 60 Amps so long as I am in closed loop mode. The only thing I can override that will stay in place is the battery charge voltages.
 
Last edited:
This is exactly correct.

I don't know how to explain it any better than horsefly did. The way the market it right now, there isn't a standard protocol and until there is you either pay a premium for an installer to research and install for you, or if you are DIY you take the responsibility upon yourself.
Richard I want to state again, I'm not trying to flame you or any other distributor. I'm just saying the tech is there, and has been for some time. It's high time for these manufactures, both domestic, and foreign to get the communication standardized. I have done my own research, but nobody should have to. Inverters and batteries should have been plug and play long ago.
 
Richard I want to state again, I'm not trying to flame you or any other distributor. I'm just saying the tech is there, and has been for some time. It's high time for these manufactures, both domestic, and foreign to get the communication standardized. I have done my own research, but nobody should have to. Inverters and batteries should have been plug and play long ago.
I don't think you realize how much easier my life would be if we had a standard haha! Trust me, nobody wants this more than me.
 
I don't think you realize how much easier my life would be if we had a standard haha! Trust me, nobody wants this more than me.
Then it's high time to pick a standard and run with it. If 20 or so bigger distributors got on the phone and agreed enough is enough, your life could be easier. Get on the forums, and contact more and more dealers. Invite dealers in from here and across the ponds. The more dealers that demand, the faster it happens. Less grief for you distributers, less grief for the installers, and most importantly less grief for the people who pay everyone's wages and profit, the end user. The market does demand a few standards in this industry. Considering how high tech solar related has become, it is in the dark ages in many ways. Less need for trouble shooting and engineering after the fact will make life easier. I'm sure there are other things that need to tighten up that most, other then the engineers don't have a clue about.

There are many more who want solar then are buying it. One reason is finding no standards, and a whole lot of info that is written by electrical engineers for electrical engineers.

Even small things like the max PV isc per mppt can become a complicated, and hugely time consuming, research and Q&A thing for the non solar savvy crowd. I have a gsl 7.6k. I opened the box and pulled out the manual thinking all my information would be contained. What a joke. I couldn't find any panels that I could s and p to get a decent configuration. Most panels are around 11a. If I parallel I'm over the 18a max of the mppt. I read that these things can self limit, but nothing about how much, and the max panel Isc in the manual, or the the spec sheet. I asked here to no avail, I emailed the manufacturer more than once, and their contact people have no clue about their product in some ways. They told me the panels can't go over the 18A ISC. (Oh? Ok, I'll just run another $5k worth of wire the 250' that I need from panels, to inverter) Thankfully a member here who is electrical solar savvy with the same inverter sent me a PM. That crucial info is only found on a label on the unit. "Why was I so stupid as to think that the manual would have that crucial information" Nothing in the book, or spec sheet, and the factory reps had no clue. Again I say what a joke. The max panel Isc is 25a. I spent 12 hours +- of my time to get a small but very important bit of info, that should be plastered into every bit of literature.

I'm just trying to point out that not everyone is electrical savvy. That doesn't mean that those who are not as stubborn as me should abandon the idea of solar power if they can't afford an electrical engineer to design every detail for them, yet it is happening by the thousands every day.

There is no reason for a laymen to have to spend countless hours on a computer to find out if battery x will work with inverter y. Again stone ages comes to mind.
 
Last edited:
Back
Top