31
\$\begingroup\$

I know the reasons for using terminating resistors on a CAN bus and how important it is.

But why 120 ohm? How did this value come up? Is there any specific reason to use 120 ohm?

\$\endgroup\$
  • 14
    \$\begingroup\$ In Roman numerals CXX is 120 so it makes sense, A and N are undefined under that scheme so they replaced with X which is often used to mark an unkown (X marks the spot etc). \$\endgroup\$ – PeterJ Jan 18 '13 at 10:45
  • \$\begingroup\$ @PeterJ -- Hilarious =) \$\endgroup\$ – DrFriedParts Jan 18 '13 at 11:06
25
\$\begingroup\$

You need to be familiar with Transmission Line Theory to understand the deeper physics in play here. That said, here's the high-level overview:

How important termination is to your system is almost exclusively determined by how long the bus wires are. Here length is determined in terms of wavelengths. If your bus is shorter than one wavelength over 10, the termination is irrelevant (practically) since there is plenty of time for the reflections introduced from an impedance mismatch to die out.

Length defined in wavelengths is a strange unit on first encounter. To convert to standard units you need to know the velocity of the wave and it's frequency. Velocity is a function of the medium it travels through and the environment surrounding the medium. Usually this can be estimated fairly well through the dielectric constant of the material and assuming free-space surrounding that medium.

Frequency is a little more interesting. For digital signals (such as those in CAN), you are concerned with the maximum frequency in the digital signal. That is well approximated by f,max = 1/(2*Tr) where Tr is the rise time (defined 30%-60% of the final voltage level, conservatively).

Why it's 120 is simply a function of the design limited by physical size. It isn't specifically important which value they picked within a broad range (for example, they could have gone with 300 Ohms). However, all devices in the network have to conform to the bus impedance, so once the CAN standard was published there can be no more debate.

Here's a reference to the publication (Thanks @MartinThompson).

\$\endgroup\$
17
\$\begingroup\$

That type of CAN bus is intended to implemented by a twisted pair of wires. The transmission line impedance of unspecified twisted pair isn't exact, but 120 Ω is going to be close most of the time for the relatively large wires commonly used for CAN.

The resistors also have another function in CAN. You can think of CAN as a open collector bus implemented as a differential pair. The total of 60 Ω is the passive pull-together of the CAN bus. When nothing is driving the bus, the two lines are at the same voltage due to the 60 Ω between them. To drive the bus to the dominiant state, a node pulls the lines apart, about 900 mV each, for a total of 1.8 V differential signal. The bus is never actively driven to the recessive state, just let go. That means the resistance between the lines needs to be low enough so that the lines go back to the idle state in a fraction of a bit time.

Note that the actual CAN standard says nothing about the physical layer other than it must have these dominant and recessive states. You could implement a CAN bus as a single ended open collector line, for example. The differential bus you are thinking of is very commonly used with CAN, and is embodied in bus driver chips from various manufacturers, like the common Microchip MCP2551.

\$\endgroup\$
  • 3
    \$\begingroup\$ Pedant mode - ISO11898 (which is certainly a CAN standard :) has parts 2,3 and 5 which describe physical layers. part 1 is (as you say) limited to "dominant and recessive" - much as the original Bosch spec was. en.wikipedia.org/wiki/ISO_11898 \$\endgroup\$ – Martin Thompson Jan 18 '13 at 14:22
  • \$\begingroup\$ Also, ISO11898 part 3 (low speed, fault tolerant) specifies that the bus can fall back to a one-wire mode in the event that a short is detected on one of the paired lines. \$\endgroup\$ – Evil Dog Pie Mar 3 '15 at 12:41
7
\$\begingroup\$

CAN Bus is a differential bus. Each differential pair of wire is a transmission line.Basically, the terminating resistor should match with the Characteristic Impedance of the transmission line to avoid reflection. CAN bus have a nominal characteristic line impedance of 120Ω. Due to that we are using typical terminating resistor value of 120Ω at each end of the bus.

\$\endgroup\$

protected by Dave Tweed Jun 19 '16 at 20:44

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.