CANivore Setup#
Supported Systems#
Currently, the following systems are supported for CANivore development:
NI roboRIO
Windows 10/11 x86-64
Linux x86-64 (desktop)
Ubuntu 22.04 or newer
Debian Bullseye or newer
Linux ARM32 and ARM64 (Raspberry Pi, NVIDIA Jetson)
Ubuntu 20.04 or newer
Debian Bullseye or newer
Note
Custom bit rates and CAN 2.0 are not supported at this time. The parameters passed into SocketCAN are not applied by the firmware.
roboRIO#
Note
Phoenix Tuner X requires a 2023 roboRIO image or newer to configure the CANivore.
No additional steps are required. The roboRIO comes with the canivore-usb
kernel module pre-installed.
Linux (non-FRC)#
On non-FRC Linux systems, the canivore-usb
kernel module must be installed to add SocketCAN support for the CANivore. The kernel module is distributed through our APT repository. Begin with adding the repository to your APT sources.
sudo curl -s --compressed -o /usr/share/keyrings/ctr-pubkey.gpg "https://deb.ctr-electronics.com/ctr-pubkey.gpg"
sudo curl -s --compressed -o /etc/apt/sources.list.d/ctr<year>.list "https://deb.ctr-electronics.com/ctr<year>.list"
Note
<year>
should be replaced with the year of Phoenix Pro software for which you have purchased licenses.
After adding the sources, the kernel module can be installed and updated using the following:
sudo apt update
sudo apt install canivore-usb
Tip
To get a robot application up and running quickly, check out our non-FRC Linux example.
Viewing Attached CANivores#
Attached CANivores can be viewed in Phoenix Tuner X by selecting the CANivores page from the left-hand sidebar. You can specify the target system in the Target IP or Team # text box.

Note
The Phoenix Diagnostic Server must be running on the target system to use the CANivores page.
Tip
If you are connecting to CANivores on your local Windows machine, you can enable the CANivore USB toggle and set the target IP to localhost
. This runs a diagnostic server within Tuner X so you do not need to run a robot project to communicate with CANivores.
Field Upgrading CANivores#
A CANivore can be field updated using Phoenix Tuner X.
Click or tap on the listed CANivore card:

The CANivore can then be field upgraded via the dropdown or by manually selected a file:

Phoenix Tuner X also allows the user to batch field upgrade CANivores from the list of CANivores in the same manner as batch field upgrading devices.
Renaming CANivores#
CANivores can be given custom names for use within a robot program. This can be configured through Phoenix Tuner X on the specified device card.
