Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

CAN 985x and cRIO 9012

Solved!
Go to solution

I have a cRIO 9012 controller and a 9101 chassis.  I am having trouble running the basic examples.  My question revolves around set up.

Background:  I have 8.6 with real time/fpga, NIRIO 3.0, NICAN2.6, as well as the 985x Software 1.3.2.  I've loaded up the most recent NIRIO3.0.0August 2008 on my RIO, however running Basic Receive/Transmit example FPGAs causes timeout errors.  I have added another module (9472) just to make sure I can toggle some visible LEDs.  However as soon as my loop hits the CAN node that loop freezes while my LEDs blink away.

 

This morning I thought to run the CAN Channel Receive example.  I loaded and sent the channel config to the RIO.  I try to deploy the host VI and receive the following:

 

Deploying RIO0(successfully deployed target settings)
Deploying ncConfigCANNet.vi
Failed to download ncConfigCANNet.vi

LabVIEW:  Failed to load shared library nican.*:ncConfig:C on RT target device.

 

Here is where I'm confused.  I thought the VX works system does not support CAN.  I do not see any CAN support under the NIRIO3.0.0August 2008 software, however this download error suggests I'm missing a driver (or something else....)  Has anyone had a similar issue, am I missing software on my controller?  Any suggestions welcome.

 

Thanks.

 

0 Kudos
Message 1 of 6
(8,414 Views)

I've answered part of my question....  NICAN isn't supported on my 9012 with VXworks.  I pulled a bad example out of the library that used API's that were not supported.  That explains the RIO compile error.

 

However, I'm still locking up whenever I try low level transmit/receive calls in the FPGA.  Time for a loop back test!

0 Kudos
Message 2 of 6
(8,410 Views)

Yes, NI-CAN doesn't support VxWorks, thus the "Channel" Examples do not work. But there is a "Frame to Channel Conversion Library" available for Free Download, that supports VxWorks and allows you to use Channel DB files. The Library bringts examples as well.

 

The timeout for the basic examples could be caused by configuration issues, like wrong baudrate, wrong cable termination or missing power supply. (Yes, the second port needs external power supply.)

 

DirkW

0 Kudos
Message 3 of 6
(8,392 Views)

Thanks for the response.  I've checked the baud rates (125k) and have them both on auto start.  I have a 1 meter twisted pair with 120Ohm resistor on both ends into a DB9.  CAN1 has a 9.5V power into 9 (Vsup) and 6 (com).  I've used the basic example to transmit from CAN1 into CAN0 without success.  I will eventually receive the 65538 error from the CAN nodes (configuration error or the module is busy).

 

I am confident of my baud rates and my messaging.  I have previously used the usb CAN 8473 as well as the PCI CAN card and have been able to transmit/receive.  So I would think using the basic examples with a few additional debug indicators would shed light on the problem, however I'm only able to get this very general error out.  At this point I can't tell if I have a module problem or a set up problem.

 

I'm going to try to get additonal info by looking at the comm state and error counter....

0 Kudos
Message 4 of 6
(8,386 Views)

That's just the timeout error for the Read node, which means that no frame has arrived within your configured timeout period. (10000 ms by default).

Could you try a different power supply or 12 volts for example?

 

DirkW

0 Kudos
Message 5 of 6
(8,365 Views)
Solution
Accepted by topic author user50

I located a new 9853 we received last month.  I was able to place that in slot 4 and successfully use my receive and transmit programs.  I was able to watch the CAN heartbeat, as well as perform a loop test from CAN1 to CAN0.

 

The original 9853 is heading back on a RMA to NI.  That module apparently is 1 year old.

0 Kudos
Message 6 of 6
(8,357 Views)