Developer Blog

26/01/2022 by Lars-Göran Fredriksson

Comparing the new Kvaser U100 with the Kvaser Leaf Pro HS v2

In this document I will compare some single channel Kvaser CAN interfaces:

  • Kvaser U100 73-30130-01173-1
  • Kvaser U100P 73-30130-01174-8
  • Kvaser Leaf Pro HS v2 73-30130-00843-4
  • Kvaser Leaf Light HS v2 73-30130-00685-0

My aim is to show how much faster the new Kvaser U100/U100P interfaces are, when compared to Kvaser’s existing Leaf interface product line. These figures will provide you with a good performance benchmark for CAN interfaces from other manufacturers. If your application needs speed of response, the Kvaser U100/U100P’s response times need to be seen to be believed …

I will show that in some extreme cases the Kvaser U100 can be up to four times faster than the Leaf Light and almost twice as fast as the Kvaser Leaf Pro interface.

Kvaser Leaf Interfaces

  • Kvaser Leaf Light HS v2 (73-30130-00685-0)
  • Kvaser Leaf Pro HS v2 (73-30130-00843-4)

The Kvaser LEAF interfaces have proven to be very robust and very reliable CAN interfaces. They are used in almost all applications. It is only in situations where extremely short latencies are required that they are outperformed by Kvaser PCIe interfaces.

The LIGHT series delivers basic functionality and is used in many standard applications. The PRO series adds some advanced functionality and extended performance, i.e. error frame generation and silent mode.

Kvaser U100 Interfaces

  • Kvaser U100 (73-30130-01173-1)
  • Kvaser U100P (73-30130-01174-8)

The Kvaser U100 and U100P series introduce some very interesting features:

  • Lightweight, glass fibre reinforced polyamide IP67 housing
  • Reinforced galvanic isolation
  • intuitive LED UI
  • Extended temperature range (-40 °C to +85 °C)
  • Available with four different connectors, DB9, OBD-II, M12 and J1939-II.

Both Kvaser U100 and Kvaser U100P support CAN FD.

What's new with the Kvaser U100 and U100P?

Besides the features mentioned above, the Kvaser U100 and U100P have a key new feature:

  • Quick USB response handling.

The Kvaser U100 USB communication is much more optimized, compared to the Kvaser Leaf series. There is no need to do any smart “repacking and bundling” of the CAN frames as the U100 has the capacity to handle both USB and CAN communication at the same time.

This has a significant impact on higher level protocols The U100 series can be up to 75% faster than the Kvaser Leaf Pro. The U100 can in some cases be compared with Kvaser PCIe CAN interfaces.

Test method CAN Q&A


When sending a message on a CAN bus, let an opponent receive it, and let this opponent  send back a corresponding answer. Now we have the definition of CAN Q&A.

How many Q&A can we send during a second?

There are some factors that limit the amount of messages we can handle:

  • CAN message length
  • CAN bus Bitrate
  • CAN interface hardware delay
  • Software delays

I will use four different settings when comparing the interfaces.

Bitrate        ID       DLC        Max no of Q&A/s
1000          11bit      0              10416
1000          11bit      8               4464
 500          11bit      8               2232
 250          11bit      8               1116

“Max no of Q&A/s”, what is that?

When sending CAN frames with 1000 kbit/s bitrate, 11 bits ID and 0 bytes as payload, then no more than 20833 CAN frames per second can exist on the bus. So the maximum number of Q&A/s is 20833 / 2 = 10416 PP/s.

If my software has absolutely no delays and the interface also has no delays, then I should be able to get up to 10416 PP per second. 

I love that idea. No delays in the software and in the interfaces! Well, until we are able to build hardware based on superconductivity and quantum computing, we must accept that there are delays in software and hardware. (Yes, you are right, there are no delays in software because they are executed in hardware, but you get the point).

How many Q&A/s can I expect?
I created a simple test software written in DELPHI (Pascal) and using the Global Callback functionality in Kvaser CANlib SDK. I have not tried to optimize my program because it should behave as a typical CAN application.

The procedure is quite simple. Send a message, wait for the reply, and then repeat the procedure. Count how many times the software does it per second.

Q&A opponent
When running the PingPong sequence, there must be an opponent present.

I use a standard Windows 10 workstation, equipped with a Kvaser PCIEcan HS v2 interface. The software that runs on the machine checks if there are any CAN messages on the bus, reads them and immediately sends them back (return to sender).

This software is also just naively written and not optimized.

Typical test sequence

Diagram 1, Kvaser U100, 1Mbit/s, 0 byte DLC

The test lasts for 2.5 seconds (x-axis is time in seconds). I start sending 100 PP/s and aim to send 10000 PP/s at the end of the test.

We can see that we start at 100 PP/s (right axis) and the curve flattens at approx 4750 PP/s (right axis).

Results of the Q&A test

Screen Shot 2022-01-25 at 17.10.11 PM
                    1Mbit/s, 0 DLC    1Mbit/s, 8 DLC    500Kbit/s, 8 DLC    250Kbit/s, 8 DLC
U100/U100P              4758              2787                1678                934
Leaf Pro HS v2          2719              2002                1335                802
Leaf Light HS v2         988               988                 988                496

As we can see in the test above, the Kvaser U100 and Kvaser U100P always have higher throughput than Leaf Light and Leaf Pro.

They are almost as fast as fixed mounted Kvaser PCIEcan HS v2. When I compare them, the Kvaser U100 and Kvaser U100P reach approximately 85-95% of the PCIe cards capacity.

                   Bitrate         ID        DLC
Setting 1:        1 Mbit/s      11bit    0 bytes
Setting 2:        1 Mbit/s      11bit    8 bytes
Setting 3:      500 kbit/s      11bit    8 bytes 
Setting 4:      250k bit/s      11bit    8 bytes

Q & A

Can I migrate from Kvaser Leaf Light HS v2 to Kvaser U100?
The Kvaser U100 supports all features that the Kvaser Leaf Light HS v2 can handle. Normally no adjustments of the software is needed.

Can I Migrate from Kvaser Leaf Pro HS v2 to Kvaser U100P?
The Kvaser U100P supports all features that the Kvaser Leaf Pro can handle except one; the U100P does not support t programs.

Do I need new Drivers and SDK?
All Kvaser interfaces share the same Drivers and SDK package. A software that has been written for the Kvaser Leaf light or Kvaser Leaf Pro can often be used with Kvaser U100 and Kvaser U100P without any changes. (But it is never wrong to update/recompile the software with the latest Kvaser SDK).

Why is the Kvaser U100 faster than Kvaser Leaf Light and Leaf Pro?
Internally: The Kvaser U100 uses a much more powerful processor compared to the Kvaser Pro and Light interfaces. Even though it is more powerful, it still consumes less power.

Externally: The USB communication is much more optimized, both in the Kvaser U100 hardware and also in the Kvaser Drivers. There is no need to do any smart “repacking and bundling” of the CAN frames as the Kvaser U100 has the capacity to handle both USB and CAN communication at the same time.

Will a USB connected interface ever be as fast as an internal mounted interface card?
The currently used technologies will always favor an internally mounted CAN interface before an externally connected CAN interface.

U100 uses USB2, will it be faster if it uses USB3 in the future?
Switching to USB3 will probably not give the interface higher throughput. USB2 is a very reliable communication method that fulfills the requirements we have today and for many years to come. Most of the communication delay is caused by the computer, by the interface circuits and the CPU.

Does the Kvaser U100 require a fast host computer?
The Kvaser U100 will run on almost any hardware. With no repacking and bundling in the USB communication, the Kvaser U100 creates more USB packets when compared to a Kvaser Leaf Pro or Leaf Light. The load on the host CPU will be higher, so it is recommended that the host application has access to enough CPU cores. The Kvaser U100 also requires USB controllers and hubs that are quick and have adequate capacity. (Almost all PCs sold in the last 5 years will have the proper capacity).

Do you need more information or do you have questions?

Please feel free to contact us, your comments and questions are welcome!

You can find us here: SUPPORT@KVASER.COM

Or, if you like, you can contact me directly:

Field Application Engineer

Lars-Göran “HELGE” Fredriksson

Author Image

Lars-Göran Fredriksson

Lars-Göran Fredriksson is a Field Application Engineer for Kvaser AB. His background is in geographic information system (GIS) and Remote Sensing and his current focus is on connecting the deep knowledge of Kvaser's developers with the practical questions of our end users. If you doubt his passion for CAN, just know that his first week in the office he created an interactive CAN Trivia game that sent the office scouring the halls for the correct answers. He is a passionate fisherman who would like to develop new environmentally friendly fishing methods. Biggest catch and release fish is for the moment a Bluefin Tuna at appr 325kg / 715lbs.