diy solar

diy solar

How do CAN / RS485 work?

ChangeMachine

New Member
Joined
Aug 5, 2021
Messages
10
If someone would be so kind... how does one determine battery compatibility with an inverter? I assume that "compatibility" comes in two levels:
  1. Manual/Blind Charging: The inverter is programmed to send & receive power at specified rates and knows nothing more about the batteries than the current SOC / voltage.
  2. Fancy Charging: The BMS monitors SOC, temps etc and sends that data to the inverter via CAN or RS485.
Is that at all right? If an inverter's specs list certain compatible/approved batteries, does that just mean something like #2. If so, will any BMS that "speaks CAN" work with a CAN capable inverter? And RS485? I'm guessing RS485 is just a port via which the inverter queries the BMS indentifier, and if it's a known BMS it'll know how to interpret it's data.

Do "budget" battery packs (with a bms) typically have comm abilities or no? If a battery pack (ie Fortress) DOES have CAN/RS485 ability, but is not on an inverters list, what does that mean?

Much thanks for any info y'all can share.
 
I would consider example #2 as being rare .... To expect this to work all components would probably have to be from the same vendor. Exceptions may be those using third party devices like Arduino and programming those type functions themselves.

There may be some who have this capability in their system ... maybe they will check in.
 
You can get #2 with certified configurations.

For example for BMS: Orion, Batrium or REC supports the Victron CanBus protocol. So the BMS provides the SOC to the overall system so a second shunt is not needed. The BMS also tells the canbus connected equipment if it can charge, and if so what is the current and voltage rates to use. For discharge it tells if it's allowed.

So as long as you are using compatible parts that speak together it all works. In the Victron world they call this DVCC.

You will still likely need a battery protect for the dumb loads in your systems that don't speak canbus, or a simple contactor controlled by the BMS.

I can tell you once you've used a fully featured system like this you quickly realize the power of it.

You can easily program all sorts of nice features like:

If tomorrow is a day with high solar potential in my area and the current discharge rate will not deplete me below 15% SOC by solar start time tomorrow then delay the generator start; but if not then run it in the next available quiet time period. And while the generator is running turn on the electric water heater when charger current draw is below 20A input.
 
In addition to the BMS listed above, the TAO BMS also supports the Victron CAN messages straight out of the box (as explained by @jwelter99). It has also the possibility to define custom messages to communicate with other equipment (or adapt to future capabilities)... as long as it is within the CAN standard (standard and extended PGN / message ID).

TAO BMS has also an intermediate approach (Charge Cycle Management) where the charger charges in accordance with its own parameters. The BMS monitors voltage and current to know when the battery is full and gives the instruction to stop the charge (either directly if charger can be remote controlled or via a contactor). The BMS re-enables the charge at a SOC you define. Very practical to avoid keeping the battery fully charged for extended periods, or can also be used to stop the charge before 100% SOC when the installation is not used intensively but needs to be operational (for example keep the SOC between 30% and 70% - with a full charge every 30 days).

RS485 is a serial communication standard (like RS232) defining the electrical characteristics of the communication. It does not define the content (messages format and content). It is often used for communication between equipment from the same manufacturer (where the manufacturer defines the communication protocol and supplies equipment / applications to send and receive). This is not usually a way to communicate between two pieces of equipment from different manufacturers as those protocol are often proprietary with no standard.
 
Thanks, all, for the feedback. Philtao, awesome website & product. I hope to be that advanced someday (to use Tao BMS, not to make my own).

The benefits of a "compatible battery" sound lovely, but I'm going to consider that it might be outa my league on price and my level of solar maturity. Maybe I'll just stick with entry-level gear and complexify as I go.
 
Thanks, all, for the feedback. Philtao, awesome website & product. I hope to be that advanced someday (to use Tao BMS, not to make my own).

The benefits of a "compatible battery" sound lovely, but I'm going to consider that it might be outa my league on price and my level of solar maturity. Maybe I'll just stick with entry-level gear and complexify as I go.
Seplos claim that their BMS communicates via CAN/ RS232/ RS485 and is compatible with the following inverters:
  • Victron
  • Growatt
  • Goodwe
  • SMA
  • Pylontech
  • Luxpower
  • Sofar solar
  • Deye
  • Sermatec
  • Fox ESS
  • Victronic power
  • Renac
I have one but haven't commissioned it yet so I cant attest to quality or compatibility with other inverters but some people in this forum are using the BMS with Growatt inverters.

 
does outback radian series and fm100 speak CAN? using batrium bms
 
In addition to the BMS listed above, the TAO BMS also supports the Victron CAN messages straight out of the box (as explained by @jwelter99). It has also the possibility to define custom messages to communicate with other equipment (or adapt to future capabilities)... as long as it is within the CAN standard (standard and extended PGN / message ID).

TAO BMS has also an intermediate approach (Charge Cycle Management) where the charger charges in accordance with its own parameters. The BMS monitors voltage and current to know when the battery is full and gives the instruction to stop the charge (either directly if charger can be remote controlled or via a contactor). The BMS re-enables the charge at a SOC you define. Very practical to avoid keeping the battery fully charged for extended periods, or can also be used to stop the charge before 100% SOC when the installation is not used intensively but needs to be operational (for example keep the SOC between 30% and 70% - with a full charge every 30 days).

RS485 is a serial communication standard (like RS232) defining the electrical characteristics of the communication. It does not define the content (messages format and content). It is often used for communication between equipment from the same manufacturer (where the manufacturer defines the communication protocol and supplies equipment / applications to send and receive). This is not usually a way to communicate between two pieces of equipment from different manufacturers as those protocol are often proprietary with no standard.
@Philtao does TAO able to communicate with Growatt 12kw inverter ? https://watts247.com/product/new-gr...se-120v-240v-output-100a-at-120v-50a-at-240v/
 
Here is the web page that lists the inverters that Batrium will connect and “control”.


There is also a nice dedicated page that tells exactly how to setup the system for Victron

If a inverter/charger can be controlled with an on-off signal the Batrium has many relays that you can use to switch on and off devices.
 
You want something certified by both manufactures if possible. If not you will suffer issues with firmware updates breaking support.

For example not too long ago Batrium support with Victron was broken and took awhile to get resolved.
 
I had a look at the user manual, but it does not give much information on communication with the outside world.
  • I did not find any mention of CAN bus
  • there is a remote control port (ref 10 on page 4), but no details further!
  • there is a BMS port (ref 14 on page 4), then on page 16 they say "Three lithium battery BMS communication protocol options"
If the remote control is like an on/off switch, the BMS can control it directly from one of its outputs
If one of the 3 communication protocol options is CAN SAE J1939 there is high chance theBMS can communicate with it. The BMS already supports a number of SAE J1939 derived protocols (NMEA2000, RV-c, OS Energy...) and has the flexibility to define and send proprietary messages (just need to know what the inverter expects)

Can you get more details from your supplier?
Just a guess: the ports are planned for future use, because if they were operational, they would surely promote these features (?)
 
Back
Top