Home > CAN Software > PCAN APIs
PCAN APIs (application programming interface) provided by PEAK System Technik allow easy development of powerful software with CAN and CAN FD support utilizing the wide range of PC-CAN interfaces made by PEAK. A variety of application-specific PCAN APIs for the automotive sector is also available.

PCAN-Basic API (API for connecting to CAN and CAN FD buses for Windows® and Linux)

The PCAN-Basic API (application programming interface) allows easy development of powerful software with CAN and CAN FD support. It includes all of the functions that an application needs in order to communicate with PCAN PC hardware. The cross-operating-system design makes it possible to easily port software projects between platforms. PCAN-Basic consists of the actual device driver and an interface DLL, which provides the API functions. As the successor to PCAN-Light, PCAN-Basic offers increased functionality and extended language support. It provides various functions for developers under C++, C#, C++/CLR, Delphi, VB.NET, Java, and Phyton 2.6.

Version 4.0 (released on 06/08/2015) of PCAN-Basic now supports the new CAN FD standard (CAN with Flexible Data Rate) which is primarily characterized by higher bandwidth for data transfer. With this API, 32-bit and 64-bit programs for Windows can access CAN and CAN FD buses. Based on devices of the PCAN-Gateway series, it is also possible to communicate with remote CAN buses via IP networks. Changes are primarily seen in the added possibility to initialize a CAN FD communication and to read and transmit CAN FD messages afterwards. The handling remains as used to (CAN_InitializeFD, CAN_ReadFD, CAN_WriteFD).

The development of the new API version was focused on broad compatibility. Programs that have been created with the previous API, will work with the new DLL. Vice versa, new applications can be used with an older DLL, provided that no new features are involved. Regarding the device drivers for CAN interfaces, the interaction is ensured with the new FD-enabled driver (4.x) as well as with its predecessor (3.x).

  • PCAN-Basic API (Windows) V4.0 can be downloaded here.
  • PCAN-Basic API (Linux) can be downloaded here.

PCAN-CCP API & PCAN-XCP API (APIs for communication with control units)

The PCAN-CCP API is a programming interface for the communication between Windows® applications (Masters) and electronic control units (Slave ECUs). The API is based on the CAN Calibration Protocol (CCP) by ASAM and is mainly deployed for development in the automotive area.

The Universal Measurement and Calibration Protocol (XCP) is a further development of CCP, but not compatible. XCP supports multiple transmission mediums. The corresponding programming interface by PEAK-System is called PCAN-XCP API which uses the CAN bus as transmission medium analogous to the PCAN-CCP API.

Both APIs utilize the programming interface PCAN-Basic for accessing the CAN hardware in the computer. PCAN-Basic is included with every CAN interface from PEAK-System. The PCAN-CCP API and PCAN-XCP API packages are available free of charge.

  • PCAN-CCP API (ECU communication according to CAN Calibration Protocol) can be downloaded here.
  • PCAN-XCP API (ECU communication per Universal Measurement and Calibration Protocol) can be downloaded here.

PCAN-ISO TP API (API implementation of the ISO-TP Standard ISO 15765-2)


ISO-TP (ISO 15765-2) is an international standard for the transfer of data packages via CAN. Above CAN (OSI layers 1 and 2), the protocol covers the OSI layers 3 (Network Layer) and 4 (Transport Layer). It can transmit data packages of up to 4095 Bytes per CAN message. The data bytes are transmitted segmented with multiple CAN frames.

The PCAN-ISO-TP API implements the functionality of the standard on the basis of 10 functions. They are categorized in Allocation, Configuration, Address Mapping Configuration, Information, and Communication. PCAN-ISO-TP uses the PCAN-Basic programming interface to access the CAN hardware in the computer. PCAN-Basic is supplied with each CAN interface of PEAK-System. Read about the PCAN-ISO-TP API implementation of the ISO-TP Standard here.

  • PCAN-ISO-TP API (Data package transfer per ISO-TP - ISO 15765-2) can be downloaded here.

PCAN-UDS API (API implementation of the UDS Standard ISO 14229-1)

UDS (ISO 14229-1) stands for Unified Diagnostic Services and defines the communication with control units (ECUs). The Windows software tests the controller using various services. The process is done on the clientserver principle where the program is in the position of the client (also called tester). UDS uses the ISO-TP standard as transport protocol, thus UDS can transmit data blocks of up to 4095 bytes size. Besides the exchange of maintenance information, for example, the transfer of firmware is possible.

The PCAN-UDS API implements the functionality of the standard on the basis of 8 functions. They are categorized in Tester Allocation, Configuration, Information, Utilities, Services, and Communication.
Read about the PCAN-UDS API implementation of the UDS Standard here.

  • PCAN-UDS API (ECU communication per UDS - ISO 14229-1) can be downloaded here.

PCAN-OBD-2 API (API implementation of the OBD-2 Standard ISO 15765-4)

The OBD-2 standard defines the exchange of specific vehicle parameters for on-board diagnostics purposes. The client makes a request on the connected control units (ECUs) in the vehicle to which one or several ECUs are answering. As part of OBD-2, the ISO 15765-4 standard describes the CAN bus as a transmission option.

The PCAN-OBD-2 API implements the functionality of the standard on the basis of 15 functions. They are categorized in Tester Allocation, Configuration, Information, Services, and Communication. According to ISO 15765-4, OBD-2 is based on UDS. Analog to this, PCAN-OBD-2 uses the PCAN-UDS programming interface for the exchange of diagnostic data. Read about the PCAN-OBD-2 API implementation of the OBD-2 Standard here.

  • PCAN-OBD-2 API (Vehicle diagnostics per OBD-2 - ISO 15765-4) can be downloaded here.

PCAN-PassThru API (PassThru API and Connection of PassThru Software to PEAK CAN Interfaces)

For the programming of control units (ECU), there are countless applications from various manufacturers which are used in the development and diagnosis of vehicle electronics. The interface for the communication between these applications and the control units is defined by the international standard SAE J2534 (Pass-Thru). Thus, the hardware for the connection to the control unit can be selected regardless of its manufacturer.

PCAN-PassThru allows the use of SAE J2534-based applications with CAN adapters from PEAK-System.

The functions defined by the standard are provided by Windows® DLLs for 32 and 64-bit systems. These can also be used to develop own Pass-Thru applications. The communication via CAN and OBD-2 (ISO 15765-4) is based on the programming interfaces PCAN-Basic and PCAN-ISO-TP. PCAN-PassThru is supplied with each PC CAN interface from PEAK-System.

  • PCAN-PassThru API can be downloaded here.
  • PCAN-PassThru User Manual can be downloaded here.