Ouvrir le menu Fermer le menu

ISIT CANopen Stack

The CANopen ISIT stack complies with the CiA-301 V4.2 and CiA-302 standard and allows rapid implementation of the CANopen protocol in an embedded application.

ISIT also offers 2 others versions of its CANopen stack :


Initiated by Bosch in 1991 and standardized in 1993 (ISO 11898), the CAN bus has experienced uninterrupted growth since its inception, going far beyond the automotive field. It has proven by its robustness, its reliability, its simplicity and the low cost associated with its implementation that it is the ideal protocol for controlling real-time networks, alongside Ethernet dedicated to applications requiring greater bandwidth for data. In 2016, 1.5 billion CAN nodes were deployed (source CiA). The CANopen protocol, corresponding to layer 7 of the OSI model, is a communication system based on the CAN network. CANopen provides flexible and efficient services for configuration, diagnosis, network supervision and process data exchange, with the definition of profiles making it possible to design interoperable products, greatly simplifying the design of a system. Originally designed for motion-based machine control systems, such as material handling systems, it is now used in a wide variety of applications, such as medical equipment, all-terrain vehicles, maritime electronics, railway applications or even building automation for elevators control for example.


ISIT offers a software CANopen protocol stack compliant with the CiA-301 V4.2 and CiA-302 standard. Developed in C-ANSI and independent of the hardware, it eases the rapid development of master and slave devices, including the necessary services, the NMT master (network management), the LSS master (layer configuration services) or the SDO client, and can serve one or more CAN controllers in a single device.

Features and Benefits

  • Compliant with the safety extension of CANopen (CiA 304)
  • OS and CPU independent architecture
  • Delivery in binary or source code

The ISIT CANopen stack is available in Slave and Master / Slave versions, in binary pre-ported on a target or in source code.

The ISIT CANopen stack consists of a hardware dependent part, mainly the CAN driver, and a hardware independent part which communicates with the driver's message queues. The hardware dependent part controls the CAN controller and the timing functions necessary for operation.

The stack driver is already available for many CPU and CAN controllers (ST, Infineon, TI, Renesas…), with or without operating system, and porting to new platforms can be done with minimal effort. The CANopen stack can be used without OS (Bare Metal) or with various real-time operating systems such as ThreadX, FreeRTOS, Keil RTX, embOS or TI-RTOS, as well as with Linux (SocketCAN, can4linux).

The ISIT CANopen stack provides a basic API in C language, and the application communicates only with the hardware independent part of the CANopen stack. In this way, it is possible to exchange drivers without any influence on the functionality of the application. CANopen services are initialized by calling functions within the application. During execution, the CANopen stack performs all necessary communication tasks autonomously, and informs the application of CANopen messages using callback functions.

Communication requests from other devices as well as the necessary periodic tasks and monitoring of timers are processed in the CANopen stack. The API also provides a Callback system to prevent the application of network events so that it performs the appropriate actions.

For development, ISIT provides a friendly object dictionary generation solution. Indeed, only the EDS file is necessary to generate the sources corresponding to the desired dictionary.

Functions overview

  • Exists in binary or precompiled version
  • CANopen source code compliant with standard CiA 301 for CANopen master and slave services included (sf binary version)
  • Modular structure and ANSI-C compatibility allowing easy porting to new target platforms
  • Generic operating system API, suitable for integration with real-time operating systems
  • Communication layer allowing to implement all the profiles of CANopen standardized devices

ISIT also offers a Safety Extension of the CANopen safety protocol compliant with the CiA 304 standard, see the CANopen Safety stack.


Upon request, ISIT can adapt the stack onto a specific system and perform the necessary test sets to approach the certification process with confidence.

Additional services

  • Trainings on CAN/CANopen
  • Operating System and CPU porting
  • Integration with customer application
  • Application development

Content of the delivery

  • CANopen stack: Software provided in binary (preported) or source code for the stack and the driver
  • Usage documentation
  • Support and maintenance included for 90 days

Economic model and support

We offer an attractive price structure, with a flexible and royalty-free business model for the standard CANopen stack, with different levels of licenses for use on a project, site or for a multi-site company.

Implementation assistance is included for 90 days, and an update and technical support service can be set up after the initial support period, and renewed annually, so that your stack is always up to date and you have support for future projects.

Porting a CAN driver, implementing specific demonstration projects or adapting CANopen software to processors that are not directly supported can be accomplished in a few days.