Carrying The Can.

Sorry not a brief introduction, so take a deep breath and read on.


CAN (Controller Area Network) was first developed over 20 years ago. In 1983 Robert Bosch GmbH,  started a project to develop an in-vehicle network. The CAN protocol was officially introduced in 1986 Society of Automotive Engineers congress in Detroit and the first CAN controller chips  appeared in 1987.  In 1991 Bosch published the CAN 2.0 specification and in 1993 CAN was adopted International Standards Organisation .

But what is CANbus? At it's simplest it integrates the numerous control systems used in today's vehicles into an integrated  network using only two wires to send and receive data. This means that the amount of wiring can be significantly reduced, and disparate systems can be persuaded to work with one and other. The modern car uses CANbus for everything from engine control, and indicators to heater and radio controls.

CAN is one of the communication methods defined in the EOBD (European On-Board Diagnostics) standard.  EOBD has been mandated as the diagnostics standard on all new petrol vehicles sold since 2001, and all new diesel vehicles sold since 2004. By model year 2008, CAN has  become the only permitted interface for OBD II diagnostics in the USA. Even without legislation in Europe, it is more than likely that the vast majority of manufacturers will follow suit and utilise CAN as the interface for providing EOBD functionality.  What does this mean? Simply that a standard method of information retrieval has been forced upon vehicle manufacturers making it in theory much easier to retrieve and upload data on the ever more complicated modern vehicle. Indeed many manufacturers have already started using CAN as the diagnostics protocol for their new models.

  The CAN bus allows multiple devices to be linked together on the same bus. Below is a typical example.



The diagnostic port gateway provides the link between the diagnostic connector and the vehicle networks. In this example, two internal networks are shown, one (in red) associated with safety critical modules such as engine management and the other (in blue) associated with lower priority modules such as body control.

 In a CAN network, a transmitter sends a message to all CAN nodes. Each message type has an identifier that is unique throughout the network. All nodes on the network receive the message and each analyses the identifier to determine if the message, and therefore its content, is relevant to that particular node. For example, a body control module would probably not be interested in a message containing the speed of the vehicle, but this type of message would definitely be of interest to a dashboard control module.

 As well as identifying the type of message, the identifier also establishes the priority of the message. The lower the value of the identifier, the higher the priority of the message. This scheme enables the bus to arbitrate between messages that are placed on the bus at the same time and ensure that higher priority messages are transmitted before lower priority messages.

 There are two versions of the CAN standard that specify different lengths of identifier. CAN 2.0A specifies an 11 bit identifier whereas CAN 2.0B specifies a 29 bit identifier. CAN 2.0B is backwards compatible with CAN 2.0A. It is important when choosing a Scan Tool that it can handle both 11 and 29 bit CAN identifiers.

 Note that whilst the EOBD standard defines a 2-wire CAN bus there are manufacturer specific variants such as GMLAN, the single wire CAN bus used by General Motors.

 So what are the benefits to the vehicle manufacturer of using CAN as an interface bus within a vehicle?

 High Data Rates CAN uses a two-wire solution (CAN Hi and CAN Lo); this enables higher data rates to be used than would be possible with a single wire solution such as K-Line. For example EOBD specifies a maximum CAN data rate of 500,000 bits per second compared with the K-Line data rate of 10,400 bit/second. The CAN 2.0B specification extends the maximum data rate to 1Mbps (1,000,000 bits per second).

 Reliability CAN has extensive error checking built into the format of each packet of data. The protocol automatically handles collisions of messages on the bus, ensuring that higher priority messages are transmitted before lower priority messages.

 Bus based Multiple controllers may be placed on the same bus, thereby reducing the amount of wiring and the number of connectors in a vehicle. This also means that vehicle designers may add additional modules to the vehicle network without necessarily having to reprogram existing modules.


Call us on 01233  610014