This website uses cookies for analytics, for logins to the online shop and the forum, and for the handling of an order. By browsing this website you agree to the use of cookies. Detailed information on their use can be found in our privacy policy.

OK Privacy Policy

Linux and PEAK-System's CAN Interfaces

The PEAK-System PC-CAN interfaces product family is fully operational with any Linux OS.

Many Linux distributions, or rather the used Linux Kernels, already contain the drivers for PEAK-System's CAN interfaces. The CAN interfaces are then accessed via the common SocketCAN framework as network devices (aka netdev).

If you are using Linux environments missing a driver (e.g. minimized Linux environments, older Kernels) or you want to use our character-based driver (chardev) e.g. in connection with the PCAN-Basic API, you need our PCAN Driver for Linux package and compile the driver yourself.



Drivers Included in Linux Kernel

Key Features

  • Out-of-the-box usage, suitable for most cases
  • Part of the Linux mainline kernel, classic CAN since 3.2 (peak_pci), CAN FD since 4.0 (peak_usb)
  • CAN channels are handled as network devices (netdev)

Check: Are CAN drivers part of your Linux environment?

Open a terminal and type:
grep PEAK_ /boot/config-`uname -r`

All PEAK drivers are listed (y = included in kernel, m = separate module) but this may not work in every Linux environment.


Check: Is the CAN device initialized?

Open a terminal and type: lsmod | grep ^peak

If, for example, a USB-based CAN interface from PEAK is connected and initialized, the output will be at least one line starting with peak_usb.



No Download Necessary

Driver Package for Proprietary Purposes

Key Features

  • Contains sources for chardev and for netdev drivers
  • Monolithic driver in contrast to mainline SocketCAN environment with several drivers
  • Must be compiled for the target system
  • Can be build for real-time Linux extensions like Xenomai or RTAI (RTDM)
  • Enables the use of PCAN-Basic Linux API calls (not possible via SocketCAN)
  • Provides extra information like the bus load (depending on used CAN interface)
  • Support of specific hardware features
  • True hardware time stamps with handling of clock drifts
  • Mainline kernel drivers are blacklisted when using the PCAN driver

When to Use the Package

  • Your CAN application relies on PCAN-Basic for Linux API (based on chardev driver).
  • The Kernel you run is too old to include one of the peak_* mainline drivers you need.
  • The Kernel you run includes peak_* mainline drivers that are out-of-date or might contain issues.


Implementation Details Download PCAN Driver Package Documentation

PCAN-Basic for Linux

API for Connecting to CAN and CAN FD Buses

We provide the PCAN-Basic API to allow the development of your own CAN applications for Linux. Programmers can use the languages C++, Java, and Python 2.x. More information about PCAN-Basic is available at its product web page.



PCAN-Basic Product Page Download Version History

PCAN-View for Linux

Software for Displaying CAN and CAN FD Messages

PCAN-View is a simple CAN monitor software for receiving and transmitting CAN and CAN FD messages. PCAN-View for Linux is based on the NCurses library.

The pcanview-ncurses Debian package depends on the libncurses5 one. Thus, when pcanview-ncurses is downloaded from this website, libncurses5 should be installed first:

$ sudo apt-get install libncurses5
$ sudo dpkg --install pcanview-ncurses-xxx.deb



Download (i386) Download (amd64) Download (arm64) Download (armhf)