Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Change IDs from standard to extended in the NI 9853 module with cRIO 9004

Solved!
Go to solution

Hi, Im new to the cRIO system (9004) and the NI 9853 (CAN high speed) module; Ive been able to successfully use the "CAN basic.vi" example in my project to transmit over the CAN 1 port and listen on the CAN 0 port (made my cable and everything seems to work fine). I also have a prototype CAN network made of some ICs from microchip (speciffically trying to work with dsPIC30F4011 and MCP 2551), I know my prototype CAN network works because Ive tested it, and the devices on it are able to communicate.

 

When I try to hook up the cRIO with the NI 9853 as new nodes nodes to the network nothing happens, Im not able to either read or transmit to any other nodes on the network with the VI example.

 

When I hook up the cRIO to the network I disable CAN 1 port and just change the output FPGA node to CAN 0 (as the example description says) to be able to transmit and read over the CAN 0 port, but nothing seems to work.

 

Anyway, the devices on my prototype network use extended (decimal) IDs, I know on the example the cluster of elements uses IDs in hex, but I dont know which specification they are using (CAN 2.0A or CAN 2.0B). So Im trying to figure this out, to see if this has something to do with the problem.

 

In Advance...Thanks

 

 

0 Kudos
Message 1 of 7
(9,439 Views)
Solution
Accepted by topic author ChuyDB

I'm not sure this will solve your problem but at least you must take care about the 30th bit that is used by NI to identify extended or standard arbitration ID.

 

See the results of the search for extended id can 30th bit.

 

 

Message 2 of 7
(9,436 Views)

Thanks JB, Im checking it out right now, seems I have to find a way to OR the 30th bit, guess I have to separate the CAN frame into bytes before doing this.

Ill be sure to post whatever progress I make.

Thanks for your time.

0 Kudos
Message 3 of 7
(9,423 Views)

This is only for the ID and not for the data frames !

The first result of the above mentionned search shows how to OR the 30th bit of the ID.

Message 4 of 7
(9,416 Views)

Forgot to reply; your info on the 30th bit did solve the extended ID problem JB, thanks. I know that because if I filter IDs on one of the ports to only recieve extended IDs, that port will only recieve the ID specified after ORing the 30th bit; that is, the port will read ID100 extended but not ID100 standard (assuming the filtering specified to read only ID100 extended).

 

Saddly I still cant communicate cRIO with 9853 with any external devices. I think It has to do with sync issues, anyway Ive made another post trying to explain the problem.

 

Thanks again...

0 Kudos
Message 5 of 7
(9,319 Views)

Hi, I am currently building communication between NI9853 and an external instrument, I would like to know how your project was going? It would be glad if you can help me since i got nothing transmitting data from my external instrument to NI9853 although the vice Versa is successfully done. 

0 Kudos
Message 6 of 7
(6,085 Views)

The last post was 5 years ago, and the thread was marked as solved.  If you have a problem make a new thread, asking clear questions, demonstrating where the issue is.  The first step is the Help >> Example Finder which has several examples on reading and writing data with various CAN hardware.

0 Kudos
Message 7 of 7
(6,076 Views)