MD4-7 CAN Interruption

Mike 4 years ago in IQANdesign updated by Gustav Widén (System support) 4 years ago 5

We have an MD4-7 integrated with a CAN Steering unit.  The MD4 and CAN Steering unit are the only two nodes on the CAN Network, which is the MD4-7's CAN-C and is J1939.  There are several JFINs/JFOUTs to/from the MD4 and one of the GFOUTs is a heartbeat set up to be sent continuously every 20mS.

The CAN Steering unit has internal diagnostics and has occasionally indicated that it has lost communication from the MD4.  For this fault to trip, the CAN Steering Unit would need to miss 1 full second of messages from the MD4.  At this time, we have ruled out a hardware issue (it isn't a bad connection or terminating resistor in the CAN network).

What known settings/bugs/errors, if any, are there that could interrupt a continuous JFOUT from the MD4-7 CAN-C?

Any Critical CAN faults in the MD4 system log?

What is the typical CAN bus utilization on CAN C?  It sounds like you may have some high bandwidth communication on that bus.  If you are running at a high bandwidth, I would recommend moving this network to CAN A or B.  These CAN ports have more capability than CAN C or D.  There should be a note in the MD4 instruction book somewhere that mentions this.

I agree with Edward, utilisation is something to look at.

I would also recommend looking at the network with IQAN analyse to work out what is happening.

Do you get the same issue if you transmit at 40ms ?

You could implement a running counter in a parallel J1939 message to check that frames are being placed on the bus reliably.

Is your J1939 electrical design to specification in terms of bus length and number of twists ? some subsystems are less fault tolerant than others.

Thanks Edward and Nick.

There are no Critical CAN Faults in the log that coincide the CAN Steering unit communication fault.

CAN-C is only running at 250KBPS with relatively light traffic.  What is the actual bandwidth of CAN-C?  Is that bandwidth only consumed by data that we have JFrames in/out for is the bandwidth taken up by ALL CAN traffic on the network?  What happens when the bandwidth of CAN-C is exceeded? Would we get any system errors?  We'll look at the bus traffic in analyse as soon as we can access the system.

The cable is Alpha Wire 5170C - 18AWG, 16/30 stranding, tinned copper, each pair shielded with foil, 3.2 twists/foot min.  There are two 120ohm terminating resistors between CAN-HI and CAN-LO, one toward each end of the network. The total network length is 91'. We have used the same cable in various pair counts for the CAN-A network in many applications without an issue. If the network hardware was not up to snuff, or intermittently failing, wouldn't we get an IQAN 'No Contact' error?

Thanks again for the input!

To see a No contact error at the IQAN side, you need to have a timeout defined on the J1939 module in the system design.

As an alternative, you can define a timeout on the JFIN, normally a good idea if you have some critical message where you need to react to a timeout faster. 

The No contact for the module gives an MD4 popup and a log record, to observe the JFIN timeout you'll need to measure on the channel. 

You could also check that you don't have the internal MD4 termination resistors switched on. External and  internal MD4 termination may mean you are over terminated at the MD4 end of the network thereby causing some strange intermittent behaviour.