Bit-stuffing reduction in the CAN protocol
Introduction
Controller Area Network (CAN) is a popular communication backbone for vehicular, industrial, and embedded control systems. However, its inherent, built-in bit-stuffing mechanism induces an undesirable jitter in frame transmission time, which worsens application-level timings. The invention avoids the insertion of any stuff bits in the CRC field, as well as in the rest of the CAN frame.

Technical features
The CAN frame coding mechanism implies an undesirable variability in frame transmission time, known as jitter, because the number of stuff bits inserted in the frame depends on message contents. The invention prevents the occurrence of stuff bits in the Cyclic Redundancy Check (CRC) field. Hence, it secures a deterministic transmission time and improves the temporal accuracy of distributed digital control systems. In addition, it significantly reduces residual error probability, thus enhancing system dependability, while still being fully compatible with standard CAN controllers. The invention stipulates that the 3 last bits of the data field (tuning bits) shall be set to a value that shapes the CAN-calculated CRC so that it does not require any stuff bits to be transmitted. The method can coexist, and is meant to be used, with other coding methods that prevent stuff bit insertion in other parts of the frame.
Possible Applications
- CAN-based, distributed real-time control systems demanding high accuracy and dependability;
- High-precision measurement instruments;
- High-precision actuation systems;
- Machine tools for high-precision mechanical parts;
- High-performance powertrain components.
Advantages
- Reduction of frame transmission jitter to less than one bit time;
- Reduction of residual error probability by about two orders of magnitude;
- Efficient and cost-effective software implementation;
- Full compatibility with existing CAN controllers and networks.