From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

is it possible to have same messege id from 2 system for one can interface card

 

We are using individual PCI NI CAN interface card with one system. Now  we want to run two same system with one PCI NI can interface card .  Both system have same messages ids. Is it possible to have same message id from two same system for one can interface card ?  If it is possible does we need to change message ids so that each system has separate id ?

 

If anybody reply  or provide some examples/papers , it will  a great help.

 

Thank you

0 Kudos
Message 1 of 6
(6,366 Views)

Hi arocon,

 

It is possible to have two devices on one CAN bus that transmit with the same message ID. HOWEVER, if this is the case, you wouldn't be able to tell which device the message was coming from. I would highly recommend assigning individual IDs to every device on the bus.

 

As to how you would change the IDs, this would likely be in the device manual.

 

I hope this helps!

Tanya Visser
National Instruments
LabVIEW Group Manager
0 Kudos
Message 2 of 6
(6,351 Views)

Hi Tanya,

 

I appreciate your reply. But is there anyway to tell which device the message was coming from without changing message ids ?

Thank you

0 Kudos
Message 3 of 6
(6,346 Views)

Hi arocon,

 

In the CAN protocol, the arbitration ID is the way you identify which system on the BUS is sending the message. The protocol does not include any other way of identifying the source of the message. You could perhaps include a code in the message itself somehow, but you would need to design this yourself.

 

Take care!

Tanya Visser
National Instruments
LabVIEW Group Manager
0 Kudos
Message 4 of 6
(6,328 Views)

HI Tanya,

 

I appreciate your reply. I am trying to figure out and i need to do it. By the way could you please refer anything (papers,books, sample program), It will be a great help.

 

 

0 Kudos
Message 5 of 6
(6,306 Views)

Hi arocon,

 

You'll need to either control the frame data or the arbitration ID of your devices. I don't know what devices you are using, so I don't know to change them. The arbitration ID is the easiest way to identify your devices. If you have control of what data the frame sends, you could assign the first byte of data as a device ID of some kind. Then when you receive this frame in LabVIEW, you will need to check the first byte to see what device it corresponds to.

 

You'll have to figure out the details of how this works with your CAN systems.

 

Have a great weekend!

Tanya Visser
National Instruments
LabVIEW Group Manager
0 Kudos
Message 6 of 6
(6,299 Views)