PCAN-Basic API – Simple & Reliable CAN Bus Programming

PCAN Basic Software

A Unified, Free API for PEAK CAN Devices

PCAN-Basic from PEAK-System is the free programming interface for developers who need to build custom CAN and CAN FD applications using PEAK hardware. Whether you’re working with USB, PCI, PCIe, MiniPCIe, M.2, WLAN, or LAN interfaces, PCAN-Basic provides a single, consistent API for all device types.

 

And the best part? It’s completely free for both personal and commercial use.

 

Why Choose PCAN-Basic?

  • Universal Support Across PEAK Interfaces - One API for all PEAK CAN adapters—USB, PCI, LAN, and more.
  • CAN and CAN FD Compatibility - Easily switch between classical CAN and CAN FD messaging with the same codebase.
  • Multiplatform: Windows & Linux - Available for 32/64-bit Windows and multiple Linux distributions.
  • Multilingual Sample Code - C, C++, C#, VB.NET, Delphi, Python, and more. Jumpstart your dev process.
  • Free & Flexible Licensing - No restrictions or activation. Ideal for both prototyping and production.


Common API Functions

The PCAN-Basic API includes a robust set of functions for interacting with CAN and CAN FD networks. Here are the core calls developers rely on:

Function Description
CAN_Initialize Initializes a CAN channel for communication.
CAN_Uninitialize Closes a previously initialized CAN channel.
CAN_Reset Resets a CAN controller or clears its internal status.
CAN_GetStatus Retrieves the current status of the CAN controller. (data in buffer, overruns etc.)
CAN_Read Reads a CAN or CAN FD message from the receive queue.
CAN_Write Sends a CAN or CAN FD message onto the network. (11/29-bit ID and RTR available)
CAN_FilterMessages Configures acceptance filtering for incoming messages.
CAN_GetValue Queries device-specific information (bitrate, status, etc.).
CAN_SetValue Configures various channel or hardware parameters.
CAN_GetErrorText Returns readable error messages for troubleshooting.

These functions enable full control over bus communication, error handling, device settings, and filtering.

What's Included with PCAN-Basic

  • DLLs for Windows and Linux

  • Header files, constants, and type definitions

  • Full documentation (PDF & HTML formats)

  • Code examples in multiple languages

  • Supports single and multi-threaded applications

  • Handles multichannel environments and event notifications

How It Works: Drivers, DLLs, and API Access

To get started, a Windows driver is installed to act as the interface between your CAN adapter and application software. This driver includes a Ring-0 kernel-mode component that provides direct, low-latency access to CAN hardware via the operating system.

The PCAN-Basic DLLs expose a uniform application programming interface (API) that allows you to send and receive CAN or CAN FD messages using a consistent set of function calls—no matter which interface you’re using (USB, PCI, PC/104, or even legacy parallel port).

  • The API is compatible with C, C++, Visual Basic, and Delphi.
  • Example programs and source code are included for most supported languages.

Ideal Applications Include:

  • Diagnostic tools for embedded devices

  • CAN traffic logging and filtering

  • Simulation or HIL testing environments

  • Custom in-house control interfaces

  • Lightweight command-line tools for engineering teams

PEAK Hardware Compatibility

PCAN-Basic works with all PEAK CAN and CAN FD hardware, including:

Trusted by Thousands of Developers Worldwide

PCAN-Basic simplifies CAN communication without sacrificing performance or flexibility. It’s the foundation for countless industrial, automotive, and research applications across the globe.

Ready to Get Started?

The PCAN-Basic API is available as a free download with any PEAK CAN adapter purchase.

Need help choosing the right CAN interface or integrating the API into your project? We’re here to help.

 

Receive 10% off your next web order when you Subscribe to our Newsletter