I'm trying to use the Embedded CAN for RIO vi's however I keep running into the same error at the CANStart.vi.
"Error -35027 ocurred at CANStart.vi:501001
Hardware problem happens."
I was using this previously on an sbRIO-9651 successfully, however a day later this issue arose and would not go away. I would've looked deeper into the error, however the vi is password protected so I can't see what is causing it exactly. Is there any additional information about this error or possible solutions to fix this?
This was attempted to run on a custom CAN module board (which was successful the other day, and nothing was changed about its setup). Multiple boards were tested and multiple NI SOMs were tested all with the same error
I'm facing the same problem with the can VIs. Did you find a solution to this?
What sbRIO target are you using? I've looked into this a bit, and Error 35027 occurs when we attempt to start the CAN controller, but for some reason it is unable to be started. This can occur because the controller is in the BusOff error state or because you're trying to start two CAN Ports, when there is only a single port natively available on thetarget (other ports can be added using RIO Mezzanine Cards, but if these are not present trying to start a second CAN port would cause this error).
From some documentation I found: The most common cause of this error is not defining a CAN port via a CLIP Generator. The sbRIO-9651 CAN port exists in the way of user-defined FPGA signals which needs to be configured using a sbRIO CLIP Generator. If the Component-Level IP (CLIP) is not defined, the embedded CAN driver can’t detect the CAN port which can yield this error. Refer to the NI-Single-Board RIO CLIP Generator Help for more information about the CLIP Generator, at the link below.
NI Single-Board RIO CLIP Generator Help
Hope that helps or at least gives you some more background into what could be happening.
Not defining the CAN port via the CLIP generator was the reason behind the error. Thank you for the link, it did help resolve the issue.
I'm using sbRIO 9651 along with a device that uses CANopen as a communication protocol. I'm having trouble implementing CANopen in labview using the NI-Embedded CAN for RIO driver. I have also tried porting the CANopen example for cRIO (http://www.ni.com/example/30474/en/) to sbRIO, but I've hit quite a few roadblocks.
Is there an example for CANopen implementation for the sbRIO or do you have some information that could help me implement CANopen on the sbRIO?
CANopen has its own toolkit from 2011 and doesn't relay on NI-Embedded CAN for RIO driver. You can download the CANopen toolkit here based on your LabVIEW version. After the toolkit is installed, you can find CANopen examples in NI Example Finder.
In the link that you provided, under NI-Industrial communications for CANopen library - sbRIO 9651 is not listed as a supported device. I went ahead and installed this driver on the sbRIO, but when I tried to run the example VI there was an error that read "The CANopen hardware cannot be found. Ensure the CANopen hardware is correctly installed. Ensure you use the correct port name. You can get your device port name(s) in MAX". I checked MAX and canopen interface is not listed under devices/interfaces.
Also, here it says that sbRIO-9651 does not support NI-XENT or NI-CAN drivers.
Is there any other information that you know that could help me?
Sorry for my mistake and you are right, the NI-CANopen toolkit cann't be installed on sbRIO-9651. The NI-CANopen toolkit can be used on most cRIO and sbRIO-9607 & sbRIO-9627. However, there is no exist source for using CANopen on sbRIO-9651 at least as far as I know.
Also, sbRIO-9651 does not support NI-XENT or NI-CAN drivers. NI-EmbeddedCAN is the only available toolkit about CAN protocol for sbRIO-9651.
If the type of message is raw CAN frame, you can use NI-EmbeddedCAN to read/write directly. But, if they are SDO or PDO messages, I am afraid that you have to follow the method of the link that you mentioned.