Modern cars have more electronics than you can think. Almost every vital part has tons of sensors on it with a dedicated computer called ECU (Electrical Control Unit). Usually, there are from several up to hundreds of ECU’s on a single car. Especially luxury ones. All modules have to work as an organized unit. So this is where a reliable connection interface is needed.
Probably you’ve already heard of CAN bus (Controller Area Network). It is a standard bus interface used in most vehicles where board computer communicates with separate control ECUs taking care of engine, gearbox, climate, security alarm, safety bags. CAN devices are connected by using twisted pair signal wires that are more resistant to noises. Signals usually operate at the 5V level. The transfer speed can reach up to 1Mb/s for 40m cable lengths.
Engineers have put lots of thought into CAN protocol. It was designed to be flexible, reliable, and robust. There can be more than one master CAN device on the same bus. For instance, there can be a situation when several masters start communication at the same time. In this case, there is a message priority used to determine which one will have the right to transmit data first. CAN nodes act as independent units and can receive any message and take action if needed. This feature is called ‘multicast.’ This allows adding new CAN devices to an existing bus without reconfiguring the existing setup.
CAN vs LIN interface
CAN interface is a complex interface allowing to have multiple masters what makes it robust and versatile. But due to the increasing cost of the number of electronics used in cars, manufacturers started looking for cheaper solutions that would complement the CAN bus and be more affordable. They came up with LIN (Local Interconnect Network) bus.
LIN bus interface is a more straightforward standard comparing to CAN. LIN can have up to 16 slave nodes controlled by one master. It is slower and cheaper as nodes are clocked by the master (no crystals for each slave node). LIN can be implemented merely as a sub-function in the CAN-LIN interface using USART in the RISC microcontroller. CAN transceiver is a sophisticated device, so it usually comes as a separate peripheral or as a separate chip. LIN uses a single wire for communications with about a 40V signal voltage level. It can reach up to19.2kbps communication speed with a maximum 40m length of the line.
After this short overview, it is evident that the LIN interface is a low band, less effective bus interface comparing to CAN. On the other hand, where efficiency isn’t a ‘must’ factor, it serves as a cheap complement to the CAN network.