diy solar

diy solar

Sol-Ark Inverters 8 and 12K

I have thought about buying one made to communicate with Sol-Ark. And their price starts looking a lot better if I have to use expensive BMSs.
Alt E store sells batteries with their Sol-Ark package but I don't know if they communicate. I should ask.
This problem has been beating me up in the back of my mind for months.
Hi there, Amy from altE here. SimpliPhi just released their new AmpliPhi batteries that communicates with Sol-Ark, making setup much easier, and other advantages. They cost $500 more than the standard SimpliPhis. We've got them on order, should be in soon. However, as others have said, while it is a very nice feature, it is optional, and Sol-Ark can run perfectly happy without it. https://simpliphipower.com/product/ampliphi-3-8-battery/
 
Hi Amy. Thanks for the reply.
I got wrapped around the axle with that myself, but after talking to SolArk and learning that communication via CAN bus is optional that it will work fine without it, I'm okay with it.
When I spoke to Sol-Ark tech support they told me disconnecting the battery while the system is charger or discharging is hard on the Sol-Ark. It's probably no harder than blowing a fuse though I assume.
I plan to have a few batteries so they probably never will all disconnect from over or under voltage but temperature could take them all down.
Like I said before, I am happy with the redundancy of multiple batteries and my system will probably never shut down all batteries. But that one little possibility is still dangling.
It would be great if canbus or RS485 will work but the signal to shut down the SolArk charging or discharging should only come after the last battery goes down. I want everything!
 

Seems like maybe a role for a single microcontroller that sends a stop command or start command based on a 5v/12v signal.

DIY to the rescue?
 
It is the job of the BMS to tend to the cells and stop charging/discharging in a situation where damage can occur. You are asking for this function to be handled by a device that is already an inverter, charge controller, and a transfer switch.
If you don't want to use CAN bus, you can use RS485, but that is a less structured communication bus. You should read up on CAN bus. Your vehicle likely has at least 1 and probably more CAN bus' operating. It's as easy as it gets to transfer this amount of data from one device to another. Think about it, it has to transmit the cell number and the voltage for every cell then the pack voltage, and the pack current every second or so. CAN uses ust 2 wires and termination resistors. If you tried to wire all those points, you would have a huge bundle to maintain, and have all the losses involved with the resistance of the wire giving you poor quality data.
Once you understand it, you realize that this is a simple, elegant solution to having 2 devices share information. Especially if there will be a little distance between them.
LOL sorry I guess I'm just not explaining myself well. Bottom line is it is more difficult than it needs to be and most of the Chargers or inverters out there are missing simple way to work with a BMS. Please I really like the Sol-Ark product it just wont do what I wish it to do.
 
Seems like maybe a role for a single microcontroller that sends a stop command or start command based on a 5v/12v signal.

DIY to the rescue?
The problem is the Sol-Ark cant accept a simple command so you need an intermediary.

Also when you add multiple batteries that does create many complexities.

I guess the ultimate inverter would have multiple battery inputs that could each be controlled individually by the inverters master computer.
 
LOL sorry I guess I'm just not explaining myself well. Bottom line is it is more difficult than it needs to be and most of the Chargers or inverters out there are missing simple way to work with a BMS. Please I really like the Sol-Ark product it just wont do what I wish it to do.
@Craig, I'm thinking that you probably know about as much about TCP/IP and UDP ethernet protocols as you do about CAN bus. The funny thing is that you use all of these every day. These technologies are mature enough that most people simply use them at their disposal without even knowing what they are. You plug in the network cable, or log onto Wi-Fi, and they work.
The fact that you are in a position to implement it in your solar system doesn't change that. Will there be a little work to do to get things all set up? Sure! That's what DIY is all about!
You will plug a cable with 2 wires into your BMS and the other end into the SolArk and it will work if they are talking compatible protocols. If that doesn't happen to be the case, @curiouscarbon has a good idea. I'm thinking an Arduino might be able to convert protocols.
There is no simpler way to communicate between electronics. Multiple BMSs can all talk on the same CAN bus. Just like the hundreds of sensors in cars these days.
As I have mentioned before, there are batteries out there that have been proven to talk over CAN to the SolArk, so it's definitely doable it will just cost a bit more than a DIY solution.
 
@Craig, I'm thinking that you probably know about as much about TCP/IP and UDP ethernet protocols as you do about CAN bus. The funny thing is that you use all of these every day. These technologies are mature enough that most people simply use them at their disposal without even knowing what they are. You plug in the network cable, or log onto Wi-Fi, and they work.
The fact that you are in a position to implement it in your solar system doesn't change that. Will there be a little work to do to get things all set up? Sure! That's what DIY is all about!
You will plug a cable with 2 wires into your BMS and the other end into the SolArk and it will work if they are talking compatible protocols. If that doesn't happen to be the case, @curiouscarbon has a good idea. I'm thinking an Arduino might be able to convert protocols.
There is no simpler way to communicate between electronics. Multiple BMSs can all talk on the same CAN bus. Just like the hundreds of sensors in cars these days.
As I have mentioned before, there are batteries out there that have been proven to talk over CAN to the SolArk, so it's definitely doable it will just cost a bit more than a DIY solution.
I give up! Please Im not knocking your method. If that works for your GREAT! It just does not have to be that difficult. I realize these protocols are used everywhere all the time. But if I were in charge, which I am not, it would be even simpler. I have already implemented my own shut off methods it really is not that hard but the simple fact is not everybody wants to program a micro controller as a go between from the battery to the other components. Honestly I really do not think you are understanding what I am asking for. Its ok though its not really that important.
 
I give up! Please Im not knocking your method. If that works for your GREAT! It just does not have to be that difficult. I realize these protocols are used everywhere all the time. But if I were in charge, which I am not, it would be even simpler. I have already implemented my own shut off methods it really is not that hard but the simple fact is not everybody wants to program a micro controller as a go between from the battery to the other components. Honestly I really do not think you are understanding what I am asking for. Its ok though its not really that important.
I have to know what's more simple than:
1. Buy a BMS that communicates via CAN
1.5. SolArk has a CAN interface
2. Connect the two together.
Seriously. How much more simple do you want?
 
Perhaps an open source arduino sketch and a simple circuit diagram could be a valuable community resource?

A core question I have is: what specific types of messages on CAN bus are being used by SolArk to determine charge cutoff?

Packet traces of this happening with normally supported hardware could be helpful towards a basic charge cutoff DIY CAN Bus Messenger.
 
@Haugen https://github.com/teachop/FlexCAN_Library
This is what I would start with

Was thinking a simple circuit that receive multiple optoisolated charge enable/disable lines from N number BMS and output CANBus messages that convince the sol arc that it’s stop charge time
That does look like a good starting point. It will definitely be a challenging project because the only reason I would start on that is if my BMS protocol does not successfully talk to the SolArk.
I am a Test hardware kind of guy, so the new world where software is used for everything is a real pain for me. I get the advantages, and I fully support things like CAN bus because the hardware alternative is terrible due to the limitations of physics. Huge hairballs of wire, voltage drops depending upon the gage and length of wire, Electromagnetic interference, and a host of other issues plague those solutions. Sensors living on a communication bus is elegant and simple.
I just want the software developers to test out their solutions and getvon the same page for the industry so that questions of protocol aren't left to the end user to figure out.
 
I’m interested in DC PV and solark seems pretty good at that, so this sort of DIY battery communicator circuit is of interest to me.

Paying a premium for a fancy CAN bus enabled battery is unappealing to me. I prefer to parallel connect multiple DIY LFP packs and scale that with a well thought out disconnect scheme.

E.G. arduino reads battery good indicator from some generic BMS output pin 5v/12v logic high/low. multiply this times number of packs. if more than X% disconnect, just immediately disconnect the rest. a reader could probably think of more optimal disconnect strategies.

edit: that said, if anyone wants to suggest a great DIY BMS that supports the proper canbus protocol, that would be rad!
 
Perhaps an open source arduino sketch and a simple circuit diagram could be a valuable community resource?

A core question I have is: what specific types of messages on CAN bus are being used by SolArk to determine charge cutoff?

Packet traces of this happening with normally supported hardware could be helpful towards a basic charge cutoff DIY CAN Bus Messenger.
SolArk won't send me their protocol.
They DID tell me several be ands that they have tested and found to work with their system. I have the protocol, but I don't know enough to compare my BMS protocol to the one that definitely works. I asked SolArk to do it, but they declined. I figure they are a fairly small outfit, they probably bought a solution.
The SolArk is the ECU and it mostly just listens on the CAN. The BMS is going to transmit messages about cell voltages, etc. I don't have the resources to go buy these other batteries and reverse engineer them.
 
I’m interested in DC PV and solark seems pretty good at that, so this sort of DIY battery communicator circuit is of interest to me.

Paying a premium for a fancy CAN bus enabled battery is unappealing to me. I prefer to parallel connect multiple DIY LFP packs and scale that with a well thought out disconnect scheme.

E.G. arduino reads battery good indicator from some generic BMS output pin 5v/12v logic high/low. multiply this times number of packs. if more than X% disconnect, just immediately disconnect the rest. a reader could probably think of more optimal disconnect strategies.

edit: that said, if anyone wants to suggest a great DIY BMS that supports the proper canbus protocol, that would be rad!
I bought a $200 Heltec BMS for my SolArk system. It has CAN and RS485. I have to wait for my cells to arrive before I can power it up.
I'm hoping that is before my solar install, so I can leverage the expertise of the installer.
The Alibaba vendor sent me their CAN info, but most of it is in Chinese. I think there is enough English for someone who knows how to read the protocol to decipher it. I'm just not that guy.
 
any resources on these protocols are welcome. i write firmware, so data sheets are readable. the overkillsolar bms has only uart, so for my case i will be writing arduino software to read https://github.com/FurTrader/OverkillSolarBMS/blob/master/JBD Protocol English version.pdf that stuff into data frames and log them for future failure mode diagnosis

anyways thank you for your input on the topic of CAN Bus with SolArk, it seems that standards are still frankly emerging for inter module communication for energy storage systems
 
I have to know what's more simple than:
1. Buy a BMS that communicates via CAN
1.5. SolArk has a CAN interface
2. Connect the two together.
Seriously. How much more simple do you want?
Midnite solar,Victron,Samlex and probably some others allow for a voltage from the BMS to enable/disable Charging/inverting. Its signal if that input on any of those devices reads a voltage they charger or discharge if that voltage goes away they stop their respective job. There is no middleman necessary its a simple binary solution. on or off. All BMS thatI know of can be made to send a voltage or not without any external interface. The Chargery is designed this way and all other BMS can use the main full pack input/output to send this signal.
 
any resources on these protocols are welcome. i write firmware, so data sheets are readable. the overkillsolar bms has only uart, so for my case i will be writing arduino software to read https://github.com/FurTrader/OverkillSolarBMS/blob/master/JBD Protocol English version.pdf that stuff into data frames and log them for future failure mode diagnosis

anyways thank you for your input on the topic of CAN Bus with SolArk, it seems that standards are still frankly emerging for inter module communication for energy storage systems
I think if you can write code for an arduino or other device that is great. I fortunately am able to as well. But most people cant or do not have the time to learn it. This is why I look for a solution that is not reliant of someone hacking together an intermediary device. I have done that rout and it works well for me but it is also not by any means "idiot proof" to use a phrase from the 80's
 
Back
Top