Previous articles have looked at what a communications bus is, why we use CANBus, and how it appears electrically. While we don’t need a deep understanding of how the electrical signals are formed and interpreted, we need a way to connect to the network. To work with CANBus, we need hardware that can convert the electrical pulses into something a microprocessor can understand, 0’s and 1’s.
This article will look at the CANBus adapter and its purpose.
Converting pulses to information
All devices that connect to a CANBus need a CAN Transceiver, such as the MCP2551. This transceiver will convert received analogue pulses to binary signals and convert binary into outgoing pulses. A CAN Controller, such as the MCP2515, is also required to interpret the continuous flow of binary signals from the CAN transceiver into data. The CAN Controller breaks down the incoming data into messages. It can also form a CAN frame based on the data given to it. In a later article, we will look at CAN frames, their structure, and their formation.
Professional CANBus Adapters
One of the first steps to working with CAN is to see it, so really, we want a way to connect a PC to an existing CANBus and start seeing messages!
In the automotive sector, CANBus adapters range from £600 to £10,000’s and usually require licenses to work with industry-standard software. In the picture above, we have three entry-level automotive sector adapters.
On the left is the PEAK CAN-USB which costs around £170, comes with some basic software and is one of the most straightforward devices to program for. However, it has a single high speed CAN channel, which quickly becomes a limiting factor when looking at multiple CANBus simultaneously.
In the middle is the ETAS ES581 which costs around £600, has dual channels and is intended for use with the ETAS INCA software chain. ETAS software licenses are many £1000s each. ETAS hardware and software is extensively used in engine management development. However, I’ve always found the basic ETAS USB adapters to be a bit of a fiddle to get the drivers working once you move away from Windows 7. This driver issue may have improved with the latest variant of the ES582.
Finally, on the right of the image, the VECTOR VN1610 costs around £600. This adapter has dual channels. It is intended for use with the VECTOR software family, including CANoe, CANalyzer and CANape. Like the ETAS, software licenses are prohibitively expensive for home hobbyists. VECTOR hardware can be a little tricky to program for, but once you get the hang of the API interface, the hardware gives the most reliable results.
Software for interpreting CANBus data?
These three adapters are the ones I’ve used the most in my career. They are, however, just about in the reach of a committed hobbyist. The professional software licenses, however, are prohibitively expensive. So why would I propose any of them? Fortunately, all three of these CANBus adapters work with a piece of free software called BusMaster. In the following article, we’ll look at how we can use the software to interpret CANBus data.