CANopen Protocol Stack, by emtas GmbH

The CANopen Protocol Stack is a software library that provides all communication services according to the CANopen profile CiA 301. It is available in different variants, written in ANSI-C. Conformity to the standard is always tested with the recent CANopen Conformance test of the CiA.
The usage of the software helps to develop CANopen conform devices in a fast as well as comfortable way.
The flexible application programming interface provides functions to evaluate received data and to use CANopen services in the network. Extension modules for several coomunication and application profiles, besides those of the CiA 301 and 302 are available.

To connect the CANopen stack to multiple CAN controllers and CPU types, a well-defined driver interface is used.
Using this driver interface the CANopen stack can also easily be adapted to new CAN controllers or CPU types.
Also it is possible to substitute hardware platforms with only little effort.
To save resources the CANopen Protocol Stack is configurable and scalable.
The software tool CANopen DeviceDesigner, which is part of the delivery, is used to do configuration of the protocol stacks.
This tool support a fast and cost-saving design of CANopen devices.
The CANopen DeviceDesigner configures the CANopen stack and CANopen driver under consideration of the device characteristics. So the optimal configuration is given.
With the tool also object dictionary and EDS files can be generated which guarantees consistency.