If you want to develop your own application that interacts with your Kvaser device, you need to download the software development kit, Kvaser CANlib SDK . Inside the SDK you’ll find that there are three main libraries:
- CANlib
- kvrlib
- kvmlib
What’s the difference between CANlib, kvrlib, and kvmlib?
1. Â The first one is CANlib. At it’s core you have functions to set bus parameters (e.g. bit rate), go bus on/off and read/write CAN messages. You can also use CANlib to download and start t programs on your device. All of this is done on a device that is attached to your computer, and they are universally available across all supported Kvaser Devices. If you can see your device listed in the Kvaser Hardware tool, it is connected and you can communicate with it through CANlib.
2. Â The second is kvrlib. Â Some Kvaser devices, known as remote devices, can be connected via Ethernet (E.g. Kvaser Ethercan Light HS and Kvaser BlackBird v2) and you need to configure those devices before they are connected to your computer. This is where kvrlib comes into play with functions to discover and connect to a Kvaser Device on the network, making it accessible for the CANlib functions. The kvrlib also has functions to configure how the remote device connects to the network (e.g. dynamic/static IP). It also contains extra functions for wireless setup, such as scanning and getting connection status.
3. Â The last library is kvmlib. This library is used to interact with Kvaser Memorator devices that can record CAN messages (E.g. Kvaser Memorator Professional 5xHS). You can download configuration data (e.g. triggers, filters, scripts) allowing you to disconnect the device from your computer, connect the device to a CAN bus and let it record the traffic autonomously. When done, you can reconnect the device with your computer and use kvmlib to get the recorded data.