Site Information

 Loading... Please wait...

Controller Area Network (CAN Bus) Tutorial - Remote Frame

Posted by Wilfried Voss on

The following is an excerpt from A Comprehensible Controller Area Network by Wilfried Voss.

A Comprehensible Guide to Controller Area Network

A Remote Frame requests the transmission of a message by another node. The requested data frame, identified by a unique message ID, may be accepted by any number of nodes in the network according to the individual application needs but can only be sent by one node associated with the requested message.

The remote frame and the requested data frame use the same message identifier. Both frames are distinguished by the RTR (Remote Transmission Request) bit, part of the arbitration field. If a data frame and a remote frame using the same message ID try to access the bus simultaneously, the data frame will gain bus access over the remote frame since it uses a dominant RTR bit.

Remote frames can only be transmitted with a DLC (Data Length Code) identical to the DLC of the corresponding data frame. Due to a limitation of contention-based arbitration, simultaneous transmission of remote frames with different DLCs will lead to irresolvable collisions. See also Chapter 4.5 - Message Frame Format.

Between the Start of Frame (SOF) bit and the end of the message identifier, both frames, Data Frames and Remote Frames are identical. A Remote Frame is detected by a high (recessive) RTR bit (Remote Transmission Request). Each receiving node in a CAN network, when detecting a high RTR bit, will now know that the received message is a Remote Frame. In fact, the RTR bit is part of the arbitration portion of a message frame.

The above picture shows the complete Remote Frame. Since the Data Frame and the Remote Frame are built very similar, a detailed description of both frames’ building components is provided in the following Chapter 4.5 Message Frame Format.

The data request cycle in a CAN network will involve the sending of two messages, the actual message request (remote frame), followed by the requested data (data frame). For further details please refer also to Chapter 5 - Message Broadcasting.


PiCAN 2 - CAN Bus Interface for Raspberry Pi

PiCAN 2 - CAN Bus Interface for Raspberry Pi

This PiCAN2 board provides Controller Area Network (CAN) Bus capabilities for the Raspberry Pi. It uses the Microchip MCP2515 CAN controller with MCP2551 CAN transceiver. Connection are made via DB9 or 3-way screw terminal.

There is an easy-to-install SocketCAN driver, and programming can be accomplished in C or Python.

The PiCAN board is fully compatible with the new Raspberry Pi 4 Model B.

More Information...