Thread: Scopes
View Single Post
  #9  
Old 05-13-2003, 05:03 PM
mplafleur's Avatar
mplafleur mplafleur is offline
User Friendly
 
Join Date: Sep 2001
Location: Lathrup Village, Michigan
Posts: 2,939
Do you have both CAN lines superimposed on one another? One is supposed to drive high and the other low from their recessive state of about 2.5 volts.

I am assuming they are for the moment, and that the bit transfer rate is 500 Kbps. This would give a bit time of about 2000 nsec.

From my knowlege of CAN...

Each message has a Start of Frame (SOF) and an End of Frame (EOF). The SOF marks the beginning of a message. The SOF consists of a sigle dominant bit after a predetermined idle state. The EOF is an idle period of seven bit times after the message, therefore unseen. The logic '1' bits are the driven states, fluctuations going positive and negative, that are evident in the scope trace.

There is a standard frame and an extended frame. The standard frame consists of an 11-bit identifier, Remote Transmission Request (RTR) bit, a 6-bit control field, up to 8 bytes data, 2-bit Cyclic Redundancy Check (CRC) field, and an in-frame acknowledgement field. The RTR is used to id the frame as a data frame, The control field gives the data length.

The in-frame acknowledement consists of 2 bits. The first is always passive and the second is driven by any listener that correctly receives and qualifies the message. Qualification is by use of a mask and the CRC. First, the listener checks a couple of internal masks with that of the senders identifier. If the message is accepted, then the CRC is checked. If both these checks pass, then the buss is driven during the second bit of the acknowledgement field. Transmission of this bit may originate from MORE THAN ONE MODULE. It is therefore impossible from viewing a message to determine who acknoledges the message.

It is possible to determine who sends the message. Remember to ignore the first dominate bit, the next 11 bits are the identifier (the node ID of the sender). Looking at the trace that is driven low, we have (after the SOF) a binary 01010111111 or a 2BF hex as the sending node identifier. If I look at the top trace I get 2FF hex. These traces don't look like they come from the CAN buss at the same time. It would help me to see them separate.

I don't know if any of the two are valid IDs or if MB uses this CAN standard. But I hope it helps in any case.
__________________
Michael LaFleur

'05 E320 CDI - 86,000 miles
'86 300SDL - 360,000 miles
'85 300SD - 150,000 miles (sold)
'89 190D - 120,000 miles (sold)
'85 300SD - 317,000 miles (sold)
'98 ML320 - 270,000 miles (sold)
'75 300D - 170,000 miles (sold)
'83 Harley Davidson FLTC (Broken again) :-(
'61 Plymouth Valiant - 60k mikes
2004 Papillon (Oliver)
2005 Tzitzu (Griffon)
2009 Welsh Corgi (Buba)


Last edited by mplafleur; 05-15-2003 at 09:05 AM.
Reply With Quote