BUS AND PROTOCOL

CAN vs RS485: three separate agreements, and only one of them is the bus

A BMS and an inverter have to agree three times over before any number crosses the cable. Choosing the bus settles the first agreement and leaves the other two entirely open, which is why so many correctly wired links stay silent.

The three agreements

It helps to stop treating “CAN” and “RS485” as descriptions of a link and start treating them as one of three things that have to line up. Nearly every failure people bring to us sits in the third one, and nearly every purchasing decision is made on the first.

AgreementWhat has to matchWhat happens when it does not
ElectricalTransceiver type, differential pair, signal levels, termination, ground reference.No traffic at all, or corruption that gets worse with cable length. Visible on a scope, invisible in software.
FramingCAN bitrate and frame format, or RS485 baud rate, parity, stop bits and device address.Frames arrive and are discarded. CAN error counters climb; a serial port returns timeouts or garbage.
Message dictionaryWhich identifier or register holds voltage, current, state of charge, and the charge and discharge limits.A clean, busy link where the inverter still reports no battery. This is where most real failures live.

What CAN gives you that RS485 does not

CAN carries the framing agreement in hardware. Every frame has an identifier, collisions are resolved by arbitration rather than by a master polling each device in turn, and the controller keeps error counters that take a node off the bus when it misbehaves. That is why it is the usual choice for a link that has to report charge and discharge limits continuously while an inverter acts on them.

RS485 is only a differential pair and a pair of transceivers. It has no identifiers, no arbitration and no error handling of its own, so a protocol on top has to supply framing, addressing and error checking. That makes it flexible and cheap, and it is why RS485 links carry a request-and-response protocol with a register map rather than a stream of unsolicited updates.

Neither one is better; the far-end device decides

There is no version of this question that can be answered without naming the other device. If the inverter implements a battery protocol over CAN, the link is CAN. If a monitoring gateway reads registers over RS485, that link is RS485. A pack frequently has both at once, running to different equipment, and neither choice reflects a judgement about the buses.

What that means practically: fix the far-end device first, read its manual for the bus and protocol it wants, and only then choose the BMS and the cable. Doing it the other way round produces a shortlist that has to be redone.

For inverter-connected packs, start from the JK-PB series and confirm the protocol before ordering.

Why a converter does not rescue a mismatched pair

A CAN-to-RS485 converter operates on the electrical and framing agreements. It takes bits off one bus and puts them on the other, correctly formed and perfectly useless, because the receiving device has no definition for what arrived. The message dictionary is untouched by anything that converts signals.

Translating between two battery protocols is a gateway function: something has to parse the source dictionary, map each value to the destination dictionary, and republish it at the rate the destination expects. That is a device with firmware and a supported-device list, not a passive adapter, and it introduces its own version-matching problem.

“Supported” is a statement about two firmware versions

A protocol name in a compatibility list is shorthand. The named protocols evolve, message identifiers get added and occasionally reassigned, and a BMS firmware written against one revision can go quiet against an inverter built to another. Both ends can be honestly advertising support and still not interoperate.

Record the BMS hardware and firmware version and the inverter firmware version before ordering, and record the combination that worked afterwards. That record is worth more than any compatibility table for the next installation.

Isolate a silent link from the bottom up

Each step below rules out one of the three agreements. Working downward from the protocol instead wastes a commissioning day rediscovering that the pack itself was never healthy.

  • Pack reads sane cell voltages on local monitoring before anything is connected
  • The correct port is in use, and the display is not occupying the one the inverter needs
  • Pinout verified against both manuals, and continuity checked before energising
  • Bitrate or baud rate, parity and address matched at both ends
  • Termination present at exactly the two physical ends of the bus and nowhere else
  • Protocol profile selected on the BMS and the matching battery type selected on the inverter
  • Both firmware versions recorded, and both checked against the compatibility statement

Pinout, termination and grounding are covered in detail in the RS485 and CAN wiring guide. Cables are listed by protocol and supported family in the cable catalog; a plug that seats is not evidence of anything.

What a fully working link looks like

The inverter should display pack voltage, current and state of charge sourced from the BMS rather than estimated from its own terminals, and it should obey the charge and discharge current limits the BMS reports. An inverter that shows the battery but keeps charging at its own rate has half a link: the dictionary is being read for telemetry and ignored for control.

Checking a BMS and inverter pair before ordering

Send the inverter brand, model and firmware version, the intended bus, and the pack series count and current.

ENGINEERING NOTES

Settle the decision, then pick the part

Each note works through one decision end to end. Where a note and a product page disagree, the product page and the written quotation are the ones that bind.
SOURCE CHECKS

Check a JKBMS source

Check a JKBMS listing against what a reseller cannot restate: the four segments of the model code, the version the board reports itself, the visible port set, and a quotation that names its own exclusions.

Read guide
NAME TO PART

From brand name to part

All four spellings return the same hardware, so none of them narrows anything. This maps the term you searched to the artefact you were actually after: a model code, a manual, a firmware note or a cable.

Read guide
ORDERING

How ordering works

Two order paths run on this catalog. Work out which one a product uses, what shipping costs to your destination, which currency you will be charged in, and what has to be fixed before payment.

Read guide
ENCLOSURE DOCS

Battery box documents

Find the JKESS enclosure document that matches the format you were shipped, and work out the four cell measurements an enclosure manual assumes you already checked.

Read guide
PEAK SHAVING

Sizing peak shaving

Work peak shaving out of interval data: find the billing demand window, measure the energy above the threshold, size kW and kWh separately, and stop the recharge from setting the next peak.

Read guide
THERMAL

Air or liquid cooling

Estimate what a battery cabinet actually has to reject, judge the design on cell-to-cell temperature spread rather than average temperature, and price in what each cooling system costs to keep working.

Read guide
BMS ARCHITECTURE

What a BMU is

BMU means different things in different datasheets. Establish what a specific controller does from its I/O list, count units from channels rather than from kWh, and find where the interlock loop really terminates.

Read guide
SOURCING

Comparing ESS quotes

Normalise C&I ESS quotations before comparing price: usable against nameplate energy, what the warranty actually measures, the line items that fall outside the scope, and who owns the integration boundary.

Read guide
APP AND BLUETOOTH

JKBMS app and Bluetooth

Connect the JKBMS app over Bluetooth, understand pairing behaviour and permissions, and work through the connection failures reported most often.

Read guide
RS485 AND CAN WIRING

JK BMS RS485 and CAN wiring

Identify the RS485 and CAN ports on a JK BMS, verify the pinout against the manual for your model, and avoid the wiring mistakes that damage a port.

Read guide
FIRMWARE AND PARAMETERS

JKBMS firmware and parameters

Understand how JKBMS firmware versions affect available parameters, what to record before changing settings, and how to avoid an unrecoverable configuration.

Read guide
FAMILY TABLE

BD, PB, B1A and B2A side by side

One table showing what each family is built around, so a shortlist takes a minute instead of a browse.

Read guide
ENCLOSURE FIT

Fitting cells into an enclosure kit

Measure the cells before shortlisting a box: stack length with compression, height over the terminals, mass and rack loading.

Read guide
BOARD SELECTION

Narrowing the catalog to one code

Work from the pack and the inverter rating down to a handful of codes instead of browsing the list.

Read guide
BD OR PB

Which family the project needs

Local monitoring or an inverter protocol link. That question decides the family before anything else does.

Read guide
BALANCE CURRENT

How much balancing a pack needs

Balance current is a rate. Match it to how fast the pack drifts and how much idle time it has to recover.

Read guide
BUS CHOICE

CAN or RS485 for the link

The device at the far end decides the bus. Confirm pinout, bitrate and protocol profile before buying a cable.

Read guide
HIGH-VOLTAGE

Where contactor authority sits

Split responsibilities between module slaves and the cluster master, and find what nothing in the design owns yet.

Read guide
PROJECT INPUTS

What to fix before requesting a cabinet quote

The decisions that have to be settled first, and the ones that can safely stay open until the design review.

Read guide