Systec CANopen Manager Source Code CiA 302

COMBINATION OF NMT MASTER WITH ADDITIONAL FUNCTIONS
STANDARDIZED IMPLEMENTATION OF PROCESSES

A CANopen network usually consists of several devices with different functionality. One main function is the NMT master which shall exist in every CANopen network. Its task is to control and monitor the NMT state of all NMT slaves. Commonly, the CANopen device which controls the system from an application point of view implements the NMT master also, e.g. a PLC.

The CANopen Manager according to CiA 302 combines the NMT master with additional functionalities and implements processes in a standardized way, e.g. the boot-up of the network. This boot-up consists of the scan for expected CANopen devices and their configuration by the Configuration Manager.

Furthermore the CANopen Manager may implement the SDO manager which is responsible for dynamic establishment of SDO connections. This means, that SDO connections do not have to be configured when installing the system, but CANopen devices are able to request SDO connections to other devices at run time. These CANopen devices which are the counterpart of the SDO manager are called “SDO requesting device”. The SDO manager ensures that the same SDO server of a CANopen device is not used by two SDO clients at the same time, if and only if no SDO connections are established dynamically by CANopen devices themselves.

A CAN driver porting, implementing of specific demo projects or adaptation of the CANopen software to processors that are not directly supported can be carried out in a few days. Please contact SYS TEC for further information on the available adaptation services.

Modular, Scalable and Portable

The continuous modularization of the functionalities and implementation in ANSI-C make possible simple porting to different target systems. Great importance was set on scalability and performance. Highly optimized memory management and zero-copy implementation prevent unnecessary copying of data. With our CANopen Source you can just as cost-effectively create single-chip solutions and complex, multi-channel master applications. Our CANopen protocol stack was successfully ported, along with a number of microcontrollers, to a DSP.

The CANopen software is organized into individual modules. Some modules can be incorporated into or removed from the project, depending on the required functionality. The modules do not cross-call functions to another module but only functions from subordinate or superordinate modules (as Callback function). There are no cross-references of global variables between the modules. A central software layer, called "CANopen Controlling Module" (CCM), provides a simplified API of the CANopen functions to the application layer and controls the interaction of the individual modules. Furthermore, the hardware specific implementation is clearly decoupled from the CANopen protocol stack, resulting in a minimum effort required for porting to a new target platform.

No Royalties on Deployed Products

We offer an attractive pricing structure. You get the complete source with project examples on every purchase as Buy-Out license for an economic one-time fee. There are no royalties on your deployed products.

The license is location-bound and can be used for various targets, projects and products by your engineers without further license fees.

Through a license extension, development partners and other sites of their company can use the source code.
Our update and support services can be renewed annually - so your stack is always up to date.

Board / MCU Manufacturer MCU Family / Boards CAN controller / interface Operating System Demo based on MCU Demo based on IDE Demo CANopen Master/Slave P/N SO-877 Demo CANopen Manager P/N SO-1063 Demo for CiA device profile / Add-on Supported via standard scope of the CANopen Stack
- X86 SocketCAN Linux   GCC Eclipse Yes Yes CiA 401 Yes
- X86 SYS TEC USB-CANmodul series, SYS TEC CAN-Ethernet Gateway, PEAK PCAN-PCI, PEAK PCAN-USB, Vector CANcaseXL, Tews Technologies TPMC 816 Microsoft Windows OS   Microsoft Visual Studio Yes Yes CiA 401 Yes
Atmel AT90 AVR internal - AT90CAN128 IAR Embedded Workbench Yes No CiA 401 Yes
Atmel AT90 AVR internal - AT90CAN128 Atmel Studio Yes No CiA 401 Yes
Atmel AT91 ARM7 internal - AT91SAM7A3 Keil uVision Yes No CiA 401 Yes
Cypress / Fujitsu F2MC-16FX internal - MB96F348 Softune Workbench Yes No CiA 401 Yes
Enclustra Mars ZX3 ZYNQ CAN Controller eCos Zync Z-7020 SoC GCC Eclipse Yes No CiA 401 Yes
F&S armStone A9 internal FlexCAN Windows Embedded Compact 7   Microsoft Visual Studio Yes No CiA 401 Yes
Freescale Kinetis K60 internal FlexCAN -     No No   No
Infineon XMC4xxx internal MultiCAN - XMC4500 Keil uVision Yes No CiA 401 Yes
Infineon TriCore TC1766 internal MultiCAN PxROS TC1766 GCC Yes No CiA 401 Yes
Infineon TriCore TC1796 internal MultiCAN PxROS TC1796 GCC Yes No CiA 401 Yes
Infineon XC22xx internal MultiCAN - XC2287 Tasking Yes No CiA 401, CiA 304 SRDO (requires SO-1059) No
Microchip PIC32MX internal ECAN - PIC32MX795F512L Microchip MPLAB Yes No CiA 401 Yes
Microchip dsPIC33F internal ECAN - dsPIC33F256 Microchip MPLAB Yes No CiA 401, Bootloader (requires SO-1089) Yes
Microchip   external MCP2515       No No   Yes
NXP, Phytec phyCORE-ADuC external SJA1000 - ADuC812 Keil uVision Yes No CiA 401 Yes
NXP LPC17xx internal NXP CAN controller - LPC1768 Code Red Tech - LPCXpresso Yes No CiA 401 Yes
NXP LPC21xx internal NXP CAN controller - LPC2129 Keil uVision Yes No CiA 401 Yes
NXP LPC22xx internal NXP CAN controller - LPC2294 IAR Embedded Workbench Yes No CiA 401 Yes
NXP LPC23xx internal NXP CAN controller - LPC2368 Keil uVision Yes No CiA 401 Yes
NXP LPC2xxx internal NXP CAN controller - LPC2129, LPC2294, LPC2368   No No Bootloader (requires SO-1089) No
Phytec phyCORE-AM335x SocketCAN Linux AM3359 GCC Yes No CiA 401 Yes
Renesas Synergy S7 internal Express Logic ThreadX Synergy S7G2 e2 studio Yes No CiA 401 No
Renesas Synergy S5 internal Express Logic ThreadX Synergy S5D9 e2 studio Yes No CiA 401 No
Renesas Synergy S3 internal Express Logic ThreadX Synergy S3A7 e2 studio Yes No CiA 401 No
Renesas Synergy S7 internal - Synergy S7G2 e2 studio Yes No CiA 401 No
Renesas Synergy S5 internal - Synergy S5D9 e2 studio Yes No CiA 401 No
Renesas Synergy S3 internal - Synergy S3A7 e2 studio Yes No CiA 401 No
Renesas RX62T internal -     No No   Yes
Silicon Laboratories C8051 internal BoschCAN - C8051F043   No No   No
STMicroelectronics STM32F internal bxCAN - STM32F407 Keil uVision Yes Yes CiA 401, CiA 304 SRDO (requires SO-1059) Yes
STMicroelectronics STM32F internal bxCAN Segger embOS STM32F107 IAR Embedded Workbench Yes No CiA 401 Yes
STMicroelectronics STM32F internal bxCAN - STM32F107 Keil uVision Yes No CiA 401 Yes
STMicroelectronics STM32F internal bxCAN - STM32F107, STM32F072 IAR Embedded Workbench No No Bootloader (requires SO-1089) No
Texas Instruments AM335X SocketCAN Linux AM3359 GCC Eclipse Yes No CiA 401 Yes
Texas Instruments TMS570 internal DCAN - TMS570LS20216 Code Composer Studio No No CiA 304 SRDO (requires SO-1059) Yes
Texas Instruments Hercules RM48 internal DCAN - RM48L952 Code Composer Studio No No CiA 304 SRDO (requires SO-1059) Yes
Texas Instruments Hercules RM42 internal DCAN - RM42L32 Code Composer Studio No No CiA 304 SRDO (requires SO-1059) Yes
Texas Instruments Stellaris® LM3S internal BoschCAN - LM3S8971 Keil uVision Yes No CiA 401 Yes
Xilinx ZYNQ7000 ZYNQ CAN Controller eCos Zync Z-7020 SoC GCC Eclipse Yes No CiA 401 Yes
Xilinx ZYNQ7000 ZYNQ CAN Controller Micrium μC/OS-II Zync Z-7010 SoC GCC Eclipse Yes No CiA 401, CiA 402 (requires SO-1081) No

• CiA 302 compliant CANopen Manager Source Code
• Complete source code set of CANopen manager, master and slave services included
• Same API for both NMT master and pure NMT slave CANopen devices (useful for HMI devices)
• High scalability and portability
• Implemented in plain ANSI C
• Seamlessly integrated SDO manager and SRD client for dynamic establishment of SDO connections
• Completely transparent management of SDO clients
• Configuration Manager, which uses concise DCFs (a compressed format of DCF) to configure CANopen devices
• Automatic configuration of heartbeat or life/node guarding
• Multi-instance support - Implement different logical CANopen devices on a single physical hardware platform
• The first year of software maintenance and technical support included - free of charge!
• No royalties on deployed products
• Bundled versions (so-called Value Packs) with complete set of fully-enabled CANopen tools included available
• Straight-forward ANSI-C implementation and the clear modularized structure support easy porting to new target platforms
• Generic OS API suitable for integration with real time operating systems
• CANopen Manager Protocol Stack provides the communication layer for implementing all standardized CANopen device profiles
• CAN driver source code for many target systems included
• Uniform CAN driver API for all supported CAN interfaces
• High resolution time stamp
• CiA 304 compliant CANopen Safety Protocol Extension (optional add-on)
• CiA 402 Device Profile for Motion Control and Drives (optional add-on)

P / NBeschreibung
SO-1063CANopen Manager Source Code 
CANopen Manager Protocol Stack Source Code, ODBuilderII, Documentation, facility-related CANopen Stack company license without runtime fees incl. 12 month updates and support
SO-1063-VPCANopen Manager Source Code Value Pack 
CANopen Manager Protocol Stack Source Code, ODBuilderII, CANopen Configuration Suite with LSS plug-in, USB-CANmodul1, Documentation, facility-related CANopen Stack company license without runtime fees incl. 12 month updates and support
5006008License extension for CANopen Stack 
for project-related, time-limited using by external development partners