System Requirements

What you need to run CANoli, connect to a CAN bus, and use the AI features.

Operating systems

CANoli is a native desktop application for:

  • macOS 12 (Monterey) or later — Apple Silicon and Intel.
  • Windows 10 or 11 (64-bit).
  • Linux — 64-bit x86 (x86_64) with glibc 2.35 or newer, or 64-bit ARM (aarch64) with glibc 2.39 or newer; the next section lists which distributions those cover.

Which Linux distributions

CANoli’s Linux builds are compiled against a fixed glibc, and glibc is forward-compatible only — so the version yours ships, not its name, decides whether CANoli runs. Check it with:

ldd --version | head -1
uname -m

The two architectures do not have the same floor, so read the column for the one uname -m reported:

Distributionglibcx86_64aarch64
Ubuntu 24.04 LTS and later2.39+✅✅
Debian 13 (Trixie) and later2.41+✅✅
Fedora 40 and later2.39+✅✅
Ubuntu 22.04 LTS2.35✅❌
Debian 12 (Bookworm)2.36✅❌
Linux Mint 212.35✅❌
Fedora 36–392.35–2.38✅❌
RHEL / Rocky / Alma 92.34❌❌
Debian 11 (Bullseye)2.31❌❌
Ubuntu 20.04 LTS2.31❌❌

The ARM build needs a newer system than the x86 one. That is not a choice we made: the Qt packages CANoli is built on publish no ARM build for an older glibc, so the floor follows theirs. A Raspberry Pi or ARM laptop running Ubuntu 24.04 or later is fine; one on an older release is not.

Downloads

Take the file matching your architecture — amd64/x86_64 for a 64-bit PC, arm64/aarch64 for ARM:

  • Debian, Ubuntu, Mint and other Debian-family distributions — take the .deb and install it with sudo apt install ./canoli_<version>_amd64.deb (or _arm64.deb). Use apt, not dpkg -i: apt installs the graphics libraries CANoli needs, and dpkg alone does not.
  • Everything else — take the .tar.gz for your architecture, unpack it, and run the canoli binary inside.

If the binary exits immediately with an error mentioning the Qt platform plugin, it is missing those graphics libraries. The .deb installs them for you; with the tarball, install them yourself:

sudo apt install libegl1 libxkbcommon0 libdbus-1-3 libfontconfig1 \
    libxcb-cursor0

On a non-Debian distribution the package names differ — look for your distribution’s equivalents of libEGL, libxkbcommon, dbus, fontconfig and xcb-cursor.

Hardware

  • A 64-bit processor and a few hundred MB of free disk space for the application; more if you record large log files.
  • A display at 1280×800 or larger is recommended for the dockable panel layout.
  • A USB-CAN adapter to capture live traffic (see below). No adapter is needed to open and analyze existing log files, edit DBC/SYM databases, or explore CANoli with the built-in Virtual adapter.

CAN adapters and drivers

AdapterWindowsmacOSLinuxDriver
PEAK-System PCAN (PCAN-USB / USB FD / USB Pro FD)✅✅✅Windows needs PEAK’s driver package; macOS needs nothing (bundled with CANoli); Linux uses the in-kernel peak_usb — see Connect a CAN Adapter.
Linux SocketCAN (can0, vcan0, …)——✅In-kernel; bring the interface up before connecting — see Connect a CAN Adapter.
Vector (VN16xx, e.g. VN1610 / VN1611)✅❌❌Requires the Vector XL Driver Library, which is Windows-only.
Virtual (built-in software bus)✅✅✅None — bundled with CANoli.

The Virtual adapter simulates two CAN nodes in software, so every feature works on a laptop with no hardware attached.

Linux users: your PCAN works through SocketCAN, so on Linux you can connect to it either as a PCAN adapter or as a SocketCAN interface. Vector hardware is not usable on Linux or macOS — the XL Driver Library it needs exists only on Windows, and Vector devices are not part of mainline SocketCAN.

AI features (optional)

CANoli is AI-native but embeds no AI model of its own. The AI features — anomaly triage, auto-decode, natural-language log queries — are driven by your own AI agent over the Model Context Protocol (MCP). To use them you provide and run an external MCP-capable agent, such as Claude Code or Codex, under your own account. All other (non-AI) features work fully offline with no agent.

Network use

CANoli runs offline for all core analysis. It reaches the network only for optional, clearly-scoped purposes: online license validation, the launch-time update check (which you can disable from the Help menu), and opt-in crash reporting. Your CAN data is never sent to our servers.