Why two CAN channels are connected to each other?

Thread Starter

naseeam

Joined Jan 4, 2017
72
Please consider steering electronic control unit (ECU). It has 6-pin CAN connector.
CAN L pin is connected to another CAN L pin in this 6-pin connector.
CAN H pin is connected to another CAN H pin in this 6-pin connector.

What are the reasons for above?
 

Papabravo

Joined Feb 24, 2006
18,797
The purpose is to bridge two CAN networks. The technical reason for doing this has at least two underlying reasons.
  1. CAN transceivers are all connected in parallel on a bus. Each transmitter must drive all of the other receivers on the bus including its own receiver. If you connect too many nodes the transmitters can fail to achieve reliable transmit levels.
  2. Reliable communication depends on bit rate and cable length. If two nodes are so far apart that reliable communication at the desired speed is not possible, then a network bridge is a possible solution.
In our research we found that 32 nodes was a useful practical limit for CAN transceivers of that era (ca. 1990-2005)
 
Last edited:

Irving

Joined Jan 30, 2016
2,782
The purpose is to bridge two CAN networks.
That would be true if 1 set of CAN-H & CAN-L were not connected to the other set, but the TS clearly states
"CAN L pin is connected to another CAN L pin in this 6-pin connector.
CAN H pin is connected to another CAN H pin in this 6-pin connector."​
 

Thread Starter

naseeam

Joined Jan 4, 2017
72
The purpose is to bridge two CAN networks. The technical reason for doing this has at least two underlying reasons.
  1. CAN transceivers are all connected in parallel on a bus. Each transmitter must drive all of the other receivers on the bus including its own receiver. If you connect too many nodes the transmitters can fail to achieve reliable transmit levels.
  2. Reliable communication depends on bit rate and cable length. If two nodes are so far apart that reliable communication at the desired speed is not possible, then a network bridge is a possible solution.
In our research we found that 32 nodes was a useful practical limit for CAN transceivers of that era (ca. 1990-2005)
My understanding of bridge is a device that connects two CAN networks. The steering ECU CAN connector has two CAN channels that are connected to each other (CAN L pins are connected to each other and CAN H pins are connected to each ohter). What does that have to do with CAN network bridge?
 

Irving

Joined Jan 30, 2016
2,782
My understanding of bridge is a device that connects two CAN networks. The steering ECU CAN connector has two CAN channels that are connected to each other (CAN L pins are connected to each other and CAN H pins are connected to each ohter). What does that have to do with CAN network bridge?
No, it has two physical layer connections to 1 CAN bus - 'channel' is not a CAN bus concept.

Nothing to do with network bridging either...
 

Papabravo

Joined Feb 24, 2006
18,797
That would be true if 1 set of CAN-H & CAN-L were not connected to the other set, but the TS clearly states
"CAN L pin is connected to another CAN L pin in this 6-pin connector.
CAN H pin is connected to another CAN H pin in this 6-pin connector."​
If each of the two devices had two independent CAN networks, then there would have to be a common connection between them in order for each of them to be a bridge.

If we are only talking about one device with two physical layers connected together, then it might imply that we have two independent controllers connected to the same bus and they can share the transmit duties, but there would be little point in having them both receive all incoming messages. They could set their mask and match filters to handle different subsets of the incoming messages, and this would be a reasonable thing to do.
 
Last edited:

Irving

Joined Jan 30, 2016
2,782
If each of the two devices had two independent CAN networks, then there would have to be a common connection between them in order for each of them to be a bridge.
Not sure I understand your point... I have a CAN bridge, the 2 CAN physical connections are completely isolated from each other, physically and galvanically. It repeats traffic on one side to the other, except for packets in an exclude list. It can do other functions like 'address' or 'ID' translation. To some extent it does a repeater/extender function though CAN timing limits that.
 

Papabravo

Joined Feb 24, 2006
18,797
Not sure I understand your point... I have a CAN bridge, the 2 CAN physical connections are completely isolated from each other, physically and galvanically. It repeats traffic on one side to the other, except for packets in an exclude list. It can do other functions like 'address' or 'ID' translation. To some extent it does a repeater/extender function though CAN timing limits that.
Show me a picture of what you think the TS is describing because it is increasingly clear that I don't have the same picture in mind that you do. A diagram in the original post would have been most helpful, but that is apparently too much to ask of some thread starters.
 

Thread Starter

naseeam

Joined Jan 4, 2017
72
No, it has two physical layer connections to 1 CAN bus
Is following understanding correct?

If there is one physical layer connection to 1 CAN bus, and there are two ECUs. CAN L of ECU A would be connected to CAN L of ECU B? And CAN H of ECU A would be connected to CAN H to ECU B?

If there are two physical layer connection to 1 CAN bus, and there are two ECUs. There would be two wires connected from CAN L of ECU A to CAN L of ECU B? And there would be two wires connected from CAN H of ECU A to CAN H of ECU B?
 

Papabravo

Joined Feb 24, 2006
18,797
Is following understanding correct?

If there is one physical layer connection to 1 CAN bus, and there are two ECUs. CAN L of ECU A would be connected to CAN L of ECU B? And CAN H of ECU A would be connected to CAN H to ECU B?

If there are two physical layer connection to 1 CAN bus, and there are two ECUs. There would be two wires connected from CAN L of ECU A to CAN L of ECU B? And there would be two wires connected from CAN H of ECU A to CAN H of ECU B?
Beats me, but a picture is worth thousands of words.
 

Irving

Joined Jan 30, 2016
2,782
OK

The top picture is what I think the TS is describing - one (or more) transceiver(s) connected to two pairs of pins - still only one network.

My bridge is the lower picture - two independent tranceivers connected to two physically distinct networks. The MCU (an STM32 with dual CAN Controllers) manages traffic flow between the networks.

This latter arrangement, by way of example, is used in VAG dashboards on Mk3 & Mk4 Golf, TT, A3/Q3 and other models where it connects the hi-speed "Engine Management" CANBus (ECU, ABS, Gearbox, etc.) to the lo-speed "Infotainment" CANBus (LIN - AC, DashInfo, Radio/CD, Locks, Windows, etc).

1654348215049.png
 

Papabravo

Joined Feb 24, 2006
18,797
Thanks - got it
Single CAN controller, single CAN transceiver, but it could be two controllers, two transceivers with the transceivers connected together. If the connectors are the screw-terminal type it eliminates the necessity of doubling up the CAN_H and CAN_L lines in in a single screw terminal.
 

Thread Starter

naseeam

Joined Jan 4, 2017
72
The top picture is what I think the TS is describing - one (or more) transceiver(s) connected to two pairs of pins - still only one network.
Correct! Thank you for providing the schematic.

After discussing with members in other forums, I believe redundancy is the reason for this configuration.

There are two wires connected to CAN Transceiver CAN L pin and two wires connected to CAN Transceiver CAN H pin. For example, if one of the CAN L wire is cut, CAN communication will be unaffected because you have the other CAN L wire.

The question is how will the system detect that one of the wires is open circuit so low severity diagnostic can be raised. I say low severity because you still have the other CAN L wire.

Also, is there some standard or Functional Safety requirement that requires this wiring configuration for electric power steering (EPS) ECU?

Do you agree with all of above?
 
Chances are the second set of wires is going to the next node in the CAN. Steering sensors are close to brake switches, clutch switches, gear selectors (column mounted), and maybe on to the dash? The only real way to find out is to follow them and see where they go.

While a redundant circuit sounds possible, it is more likely that a redundant system would be tied to a separate CAN network. The common gateway that repeats messages across all the networks when needed would then pass the information around as well as set an error code for a network error on the bad network.
 

Irving

Joined Jan 30, 2016
2,782
Is it called a bridge because STM32 micrcocontroller transfers data from U1 to U2? Is STM32 micrcontroller the bridge?
Exactly so... Technically the software that runs on the STM32 is the actual 'bridge' in that it determines the functionality.

A case in point is the bridge I use on my wheelchair, using an ESP32 microcontroller. The joystick and motor controller communicate via a 500kbps CANBus. I break into that to add new functionality, eg the controller continuously sends a 'battery %' message to the joystick which then displays that as a red/yellow/green bar chart. The problem is that the % relates to a lead-acid battery and is pretty meaningless anyway as its based on a crude voltage measurement. I have a massively bigger (180Ah v 60Ah) custom LiFePO4 pack and a battery monitoring system that knows exactly how much capacity is available because it 'counts Columbs in & out'. The battery monitor has two CAN transceivers and sits on the CANBus between the controller and the joystick. Normally it just passes the messages directly back and forth between the two sides, but whenever it gets a battery % message from the controller (every second) it acknowledges that and throws it away and sends its own battery % message to the joystick. So now 'green' is anything over 20%, amber 10 - 20% and red <10%. As an added bonus it sends detailed battery info, eg voltage of each cell, average & peak current, etc. by BlueTooth to an app on my phone. A future 'fix' will be to throw away 'drive' messages from the joystick to the controller and use ones sent by BlueTooth so I can drive my chair remotely from my bed.
 

Thread Starter

naseeam

Joined Jan 4, 2017
72
Normally it just passes the messages directly back and forth between the two sides
Are there two CAN networks? First CAN network is battery monitor CAN transceiver 1 is connected to joystick. And second CAN network is battery monitor CAN transceiver 2 is connected to motor controller?
 

drjohsmith

Joined Dec 13, 2021
423
Please consider steering electronic control unit (ECU). It has 6-pin CAN connector.
CAN L pin is connected to another CAN L pin in this 6-pin connector.
CAN H pin is connected to another CAN H pin in this 6-pin connector.

What are the reasons for above?
a six pin connector for can is unusual
Can you post a picture of the unit itself please
and some details of the unit itself, make and model ?
 
Top