CM CanOpen - ERR light single flash


I downloaded the configuration to the CM CanOpen module as described in the CM CanOpen Configuration Studio manual. But, I keep seeing the ERR light blinking at single flash rate. I have added the .eds file of the slave device to this configuration as well. The address of the CM CanOpen module and the data length match in S7-1200 (TIA PORTAL V12). From the description in the manual it looks like a single flash on the ERR light means generic configuration error. How do I solve this? Any thoughts? Please let me know if I can share in more information on this. Thanks very much!


Single flash means this,

“Warning limit reached in CAN controller, for
example due to bad or no signal on the
CANopen network”

Could you perhaps take a video and upload it to this forum? You should be able to drag and drop a short video file.

If it is a single flash, this could have to do with issues on the CAN network. Have you set the correct baud rate? Do you have proper CAN bus termination on the CAN network?

Could this also happen if I have no slave connected, but I have downloaded a configuration with a slave? I have been having trouble finding a decent cable to connect the slave. I know its just a DB-9 female connector, but with the screws in each terminal my male connection cable may not be making a very good contact with the terminals. I tried directly connecting wires to each terminal but it gets too tedious with those super tiny screw terminals. Is there a better way to connect to this?

Also, yes, the baud rate matches.

I just tried to download a configuration without a slave and it still has the single flashing red light at ERR.

If there is no slave connected I think this could explain the behavior. The CM module could be sending CAN frames, and is then getting errors because there is no acknowledgment.

I am not sure exactly what to suggest for making a connection to the DB9. Perhaps it would be better to use a DB9 break out that uses soldering? Also, it will be important to consider properly terminating the network. If this is not done you will also get errors.

Is it necessary to terminate just with one slave too?

What resistor value should I use? And between what terminals?

You must always have termination resistors on a CAN bus, no matter how many nodes. The best practice is to have a 120 ohm resistor between the low and high channels on each end of the network. Usually it is ok to have just one terminating resistor, but not best practice. This is a pretty good reference for CAN termination,

I have attached a video below. Would this be a single flash or a 1Hz?

Thanks, I just checked my slave device and there is a termination resistor on it, I was not aware that the setting was ON. I will try adding another resistor at the PLC side.

This appears to be a single flash, thanks.

I just added a 120Ohm resistor on the PLC side. Still the same error! Out of ideas now :sweat:

Is the slave device connected to the CM module?

Yes, it is connected. Any more thoughts?

Do you have a USB to CAN dongle that can monitor traffic? If so it could be beneficial to monitor the CAN network.

Also, I would recommend verifying that you do not have the CAN H and CAN L pins swapped.

Through some miracle the ERR light is off, I am not sure what I was missing. Thanks very much for your help with that part, I am sure I was missing multitudes of things.

Do you know at what addresses the CanOpen commands can be given for S7-1200 in TIA portal? The addresses are mapped in the CM Configuration Studio, but I am not sure how to access them with TIA Portal.

The data is accessed using the method described in chapter 8 of this manual,

CM CANopen User Manual - updated link (3.5 MB)

I do have this manual, I did download the function blocks available on the website but the only ones that were added to the library were the ones for the Transparent CAN. Am I supposed to be running in this mode? I didn’t see any other the other FB’s such as Get Process Data IN, Set Process Data Out etc.

Never mind, I found these functions in the Extended Functions tab. I will try this out.