SUNCAN CAN FD in Action: Practical Evaluation and Performance in Linux
SUNCAN CAN FD in Action: Practical Evaluation and Performance
Linux
Introduction
While the industry typically defines CAN FD as supporting data rates up to 8 Mbps, in practice, the actual throughput is often lower. This is due to delays introduced by hardware and software design, as well as the arbitration phase, which still operates at the lower speed defined by CAN 2.0. As a result, real-world performance rarely achieves the theoretical maximum.
This article presents a practical evaluation of SUNCAN's performance by measuring its actual throughput on Linux, we will discuss Windows in the next article.
In Action - Linux
The Linux kernel provides a Socket API for CAN, and nearly all well-known CAN products on the market today support SocketCAN, which has become the mainstream approach for CAN applications on Linux. Naturally, SUNCAN is no exception. In this article, we will use SocketCAN to conduct a hands-on performance test of SUNCAN.
Platform
can-utils is a collection of command-line tools for working with SocketCAN — the Linux kernel's built-in CAN subsystem. Two commands are well-suited for verifying CAN FD performance: cangen and cansequence.
cangen can send 64-byte data frames back-to-back without gaps. This allows testing of the actual maximum bit rate for transmission and reception.
cansequence, by contrast, transmits frames sequentially with a single-byte payload and performs data integrity checks. It is useful for evaluating bus stability and determining the maximum receive frame rate.
On the other hand, we need a monitoring tool to track the bus loading. The canbusload command can fulfill this task.
cangen Options
cansequence optionsPractical results<span class="EOP SCXW14757305 BCX0" data-ccp-props="{}" style="-webkit-user-drag: none; -webkit-tap-highlight-color: transparent; margin: 0px; padding: 0px; user-select: text; color: rgb(0, 0, 0); font-size: 14pt; white-space-collapse: preserve; line-height: 23.7417px; font-family: " times="" new="" roman",="" "times="" roman_embeddedfont",="" roman_msfontservice",="" serif;"="">
SUNCAN Configuration
Wiring
(Insert wiring diagram or description here)
Practical Results
The data highlights two key points: SUNCAN achieves a maximum throughput of 5.3 Mbps and a maximum receive rate of 16,875 frames per second on SocketCAN.
SUNCAN CAN FD in Action: Practical Evaluation and Performance in Linux
SUNCAN CAN FD in Action: Practical Evaluation and Performance
Linux
Introduction
While the industry typically defines CAN FD as supporting data rates up to 8 Mbps, in practice, the actual throughput is often lower. This is due to delays introduced by hardware and software design, as well as the arbitration phase, which still operates at the lower speed defined by CAN 2.0. As a result, real-world performance rarely achieves the theoretical maximum.
This article presents a practical evaluation of SUNCAN's performance by measuring its actual throughput on Linux, we will discuss Windows in the next article.
In Action - Linux
The Linux kernel provides a Socket API for CAN, and nearly all well-known CAN products on the market today support SocketCAN, which has become the mainstream approach for CAN applications on Linux. Naturally, SUNCAN is no exception. In this article, we will use SocketCAN to conduct a hands-on performance test of SUNCAN.
Platform
can-utils is a collection of command-line tools for working with SocketCAN — the Linux kernel's built-in CAN subsystem. Two commands are well-suited for verifying CAN FD performance: cangen and cansequence.
cangen can send 64-byte data frames back-to-back without gaps. This allows testing of the actual maximum bit rate for transmission and reception.
cansequence, by contrast, transmits frames sequentially with a single-byte payload and performs data integrity checks. It is useful for evaluating bus stability and determining the maximum receive frame rate.
On the other hand, we need a monitoring tool to track the bus loading. The canbusload command can fulfill this task.
cangen Options
cansequence optionsPractical results<span class="EOP SCXW14757305 BCX0" data-ccp-props="{}" style="-webkit-user-drag: none; -webkit-tap-highlight-color: transparent; margin: 0px; padding: 0px; user-select: text; color: rgb(0, 0, 0); font-size: 14pt; white-space-collapse: preserve; line-height: 23.7417px; font-family: " times="" new="" roman",="" "times="" roman_embeddedfont",="" roman_msfontservice",="" serif;"="">
SUNCAN Configuration
Wiring
(Insert wiring diagram or description here)
Practical Results
The data highlights two key points: SUNCAN achieves a maximum throughput of 5.3 Mbps and a maximum receive rate of 16,875 frames per second on SocketCAN.
SUNCAN CAN FD in Action: Practical Evaluation and Performance in Linux
SUNCAN CAN FD in Action: Practical Evaluation and Performance
Linux
Introduction
While the industry typically defines CAN FD as supporting data rates up to 8 Mbps, in practice, the actual throughput is often lower. This is due to delays introduced by hardware and software design, as well as the arbitration phase, which still operates at the lower speed defined by CAN 2.0. As a result, real-world performance rarely achieves the theoretical maximum.
This article presents a practical evaluation of SUNCAN's performance by measuring its actual throughput on Linux, we will discuss Windows in the next article.
In Action - Linux
The Linux kernel provides a Socket API for CAN, and nearly all well-known CAN products on the market today support SocketCAN, which has become the mainstream approach for CAN applications on Linux. Naturally, SUNCAN is no exception. In this article, we will use SocketCAN to conduct a hands-on performance test of SUNCAN.
Platform
can-utils is a collection of command-line tools for working with SocketCAN — the Linux kernel's built-in CAN subsystem. Two commands are well-suited for verifying CAN FD performance: cangen and cansequence.
cangen can send 64-byte data frames back-to-back without gaps. This allows testing of the actual maximum bit rate for transmission and reception.
cansequence, by contrast, transmits frames sequentially with a single-byte payload and performs data integrity checks. It is useful for evaluating bus stability and determining the maximum receive frame rate.
On the other hand, we need a monitoring tool to track the bus loading. The canbusload command can fulfill this task.
cangen Options
cansequence optionsPractical results<span class="EOP SCXW14757305 BCX0" data-ccp-props="{}" style="-webkit-user-drag: none; -webkit-tap-highlight-color: transparent; margin: 0px; padding: 0px; user-select: text; color: rgb(0, 0, 0); font-size: 14pt; white-space-collapse: preserve; line-height: 23.7417px; font-family: " times="" new="" roman",="" "times="" roman_embeddedfont",="" roman_msfontservice",="" serif;"="">
SUNCAN Configuration
Wiring
(Insert wiring diagram or description here)
Practical Results
The data highlights two key points: SUNCAN achieves a maximum throughput of 5.3 Mbps and a maximum receive rate of 16,875 frames per second on SocketCAN.
SUNCAN CAN FD in Action: Practical Evaluation and Performance in Linux
SUNCAN CAN FD in Action: Practical Evaluation and Performance
Linux
Introduction
While the industry typically defines CAN FD as supporting data rates up to 8 Mbps, in practice, the actual throughput is often lower. This is due to delays introduced by hardware and software design, as well as the arbitration phase, which still operates at the lower speed defined by CAN 2.0. As a result, real-world performance rarely achieves the theoretical maximum.
This article presents a practical evaluation of SUNCAN's performance by measuring its actual throughput on Linux, we will discuss Windows in the next article.
In Action - Linux
The Linux kernel provides a Socket API for CAN, and nearly all well-known CAN products on the market today support SocketCAN, which has become the mainstream approach for CAN applications on Linux. Naturally, SUNCAN is no exception. In this article, we will use SocketCAN to conduct a hands-on performance test of SUNCAN.
Platform
can-utils is a collection of command-line tools for working with SocketCAN — the Linux kernel's built-in CAN subsystem. Two commands are well-suited for verifying CAN FD performance: cangen and cansequence.
cangen can send 64-byte data frames back-to-back without gaps. This allows testing of the actual maximum bit rate for transmission and reception.
cansequence, by contrast, transmits frames sequentially with a single-byte payload and performs data integrity checks. It is useful for evaluating bus stability and determining the maximum receive frame rate.
On the other hand, we need a monitoring tool to track the bus loading. The canbusload command can fulfill this task.
cangen Options
cansequence optionsPractical results<span class="EOP SCXW14757305 BCX0" data-ccp-props="{}" style="-webkit-user-drag: none; -webkit-tap-highlight-color: transparent; margin: 0px; padding: 0px; user-select: text; color: rgb(0, 0, 0); font-size: 14pt; white-space-collapse: preserve; line-height: 23.7417px; font-family: " times="" new="" roman",="" "times="" roman_embeddedfont",="" roman_msfontservice",="" serif;"="">
SUNCAN Configuration
Wiring
(Insert wiring diagram or description here)
Practical Results
The data highlights two key points: SUNCAN achieves a maximum throughput of 5.3 Mbps and a maximum receive rate of 16,875 frames per second on SocketCAN.