Kvaser ROS Interface API
This package was developed as a standardized way to access Kvaser CAN devices from ROS. It can either be used as a development API
by including the header <kvaser_interface/kvaser_interface.h> and linking against
libros_linuxcan.so or the stand-alone node
kvaser_can_bridge can communicate with a CAN device independently.
The following are required prerequisites:
- The Kvaser CANLIB API (https://www.kvaser.com/downloads/)
Can be downloaded directly or installed through PPA:
sudo apt-add-repository ppa:jwhitleyastuff/kvaser-linuxcan
sudo apt update && sudo apt install -y kvaser-canlib-dev
You can optionally install the Kvaser drivers from the PPA with the following command:
sudo apt install -y kvaser-drivers-dkms
For Linux kernel 4.13 or higher, version 5.21 or higher of CANLIB is required
This topic is published by the node. It expects to have other nodes subscribe to it to receive data which are sent by the CAN device.
This topic is subscribed to by the node. It expects to have data published to it which are intended to be received by the CAN device.
This is the Kvaser Hardware ID (serial number) of the connected device.
This is the 0-based index of the channel number on the specific hardware device designated by the ~can_hardware_id.
This is the communication rate to be used on the CAN channel in bits per second (default: 500000).
A simple tool with no ROS dependencies which returns a list of all Kvaser devices and channels available on those devices.
A simple tool with no ROS depedencies to output the CAN messages received on a given channel index (-i - default: 0) and bitrate (-b - default: 500000) to the terminal.