Skip to main content

What is CAN bus?

What is CAN bus?

Controller Area Network (CAN) is a serial communication protocol that lets microcontrollers and devices talk to each other without a central host computer. Developed by Bosch in the 1980s, it is now the standard in automotive and heavy vehicle electronics.

Why buses use it

In a MAN Lion's City, dozens of ECUs (Electronic Control Units) share data in real time: the engine tells the instrument cluster the RPM, the EBS reports brake air pressure, the tachograph transmits vehicle speed — all over two wires (CAN_H and CAN_L).

The J1939 standard

Heavy vehicles (buses, trucks) use SAE J1939, an application layer built on top of CAN. It defines:

Element Description 29-bit ID Extended identifier (vs 11-bit basic CAN) PGN Parameter Group Number — identifies the data type SA Source Address — address of the sending ECU (0x00–0xFE) SPN Suspect Parameter Number — each signal within a PGN

Implementation parameters

Parameter Value Bus speed 250 kbps ID type Extended (29-bit) Send cycle 20 ms (50 Hz) Transceiver MCP2515 + TJA1050 MCP2515 oscillator 8 MHz

Note

0xFF bytes in unused positions are the J1939 default for "parameter not available" (SNA — Specific Not Available).