Skip to content

Language

CANopen Library for Linux

by EmSA
Original price €2.490,00 - Original price €2.490,00
Original price
€2.490,00
€2.490,00 - €2.490,00
Current price €2.490,00

Professional-grade CANopen API shared library for Linux. It provides a complete CANopen platform for building Linux applications. The package includes full documentation, a C header file, and a ready-to-run example application. Supported languages are C and C++. Communication is handled via SocketCAN.

The CANopen library enables quick and straightforward development of custom CANopen-based Linux applications, without requiring deep prior knowledge of the protocol. The kit contains a high-quality CANopen shared library along with documentation, the C header file, and the required library/import files. The library implements the CANopen stack and uses any SocketCAN-compatible CAN interface to communicate with the CAN hardware.

Use it to build custom CANopen masters, managers, and configuration tools in a fraction of the usual time. It’s equally suited for data-transfer utilities, firmware update tools, and network analysis applications. For production environments, you can create lean test and service software that operators can run without CANopen training or protocol terminology.

Features

The following is a list of features of the CANopen library. The list is not exhaustive, but does give a good overview.

  • Send Network Management messages to all nodes or a single node
  • Perform an SDO expedited or segmented download to a node
  • Perform an SDO expedited or segmented upload from a node
  • Progress callbacks during SDO transfers
  • Operation result callback at the end of SDO transfers
  • SDO transfers are non-blocking, allowing easier implementation of applications
  • Ability to cancel an SDO transfer currently in operation
  • High speed network scan to determine nodes present. Typically completes in less than 0.5 seconds.
  • All messages have typically 1us accuracy timestamps
  • CAN 2.0A and CAN 2.0B messages supported
  • Remote Transmission Request messages supported
  • Transmit and receive plain CAN messages
  • Callbacks for CAN messages sent and received
  • Callback for events, such as bus off, timeout, hardware error and protocol error
  • Ability to get a current timestamp for comparing with timestamps of messages received
  • Switch networks and CAN interfaces on the fly
  • High speed mass expedited write to all nodes
  • Configurable timeouts and time delays
  • Write Device Configuration Files to nodes
  • Write Network Configuration Files to networks to configure all nodes at once
  • Receives error frames
  • Reset the CAN interface
  • PDO transmission and reception (event time, inhibit time, SYNC, change of state detection, application layer tx approve/deny)
  • Can connect to internal networks with no CAN interface for CANopen network simulation
  • Able to find and interrogate LSS slaves on the network
  • Able to configure the node IDs and bit timings of LSS slaves
  • Support for CiA 1301 - CANopen FD
    • USDO read/write
    • PDOs with up to 64-bytes of data
    • PEAK CAN-FD interfaces
    • Enhanced emergency messages
  • Support for CANcrypt
    • Encrypted communication with CAN nodes
    • Node pairing

What's Included

The developer’s kit contains the following components:

  • The professional CANopen shared library implementing full CANopen functionality
  • A C header file
  • An example application
  • A user manual explaining how to use the CANopen library

System Requirements

The CANopen library runs on Linux using SocketCAN, and works with any currently available CAN interface that supports SocketCAN.

Limitations

General technical support is available for Linux development environments and covers standard questions about the library’s functionality. Detailed, hands-on support can only be provided for projects using C or C++ with GCC.

The license permits distribution of generated binaries only. Please contact us for further details.