Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Veristand + XNET - 2 frames with same ID, mutually exclusive

Hi all,

I'm working on a PXI-based simulator running Veristand and running multipòle CAN connections using XNET.

 

I'm trying to have two messages on the same CAN bus, with the same ID, using a boolean (or two) to select which one to transmit at a given time. Veristand (XNET?) won't allow having two messages with the same ID, regardless of whether they are mutually exclusive. Is there a way to achieve this, without having to compose the messages byte-wise?

 

Thank you all in advance

0 Kudos
Message 1 of 5
(3,508 Views)

Normally, one byte would be a multiplexer signal, which indicates the format of the payload of the rest of the message.  You might want to take a look at the docs.  

0 Kudos
Message 2 of 5
(3,477 Views)

Thank you for your reply, unfortunately multiplexing is not exactly what we need.

 

The issue is that we have a 'double protocol', where two variants of the same frame(s) are sent depending on a status variable. They have the same ID but different payload, and unfortunately it is not possible to change it in order to accommodate the multiplexing bit. That's because the other CAN node's software works this way and it is not possible to change the protocol at this point.

0 Kudos
Message 3 of 5
(3,469 Views)
Well since what you are trying to do is against the CAN spec, I think your only solution will be to come up with a custom solution, using the raw frame API.
0 Kudos
Message 4 of 5
(3,463 Views)

Actually, as far as I know it is not strictly against the CAN specification as long as the same node is supposed to send the two messages, and not at the same time (i.e. they are mutually exclusive). Technically a CAN message can have whatever payload you want, as long as the nodes know how to decode it. Nothing mandates that the composition of the message can't change over time.

 

What it is 'conflicting' with is Vector's .dbc databases, and XNET's handling of the same. Indeed I can read/write the messages byte-wise and compose the signals using a model or custom device, I was just wondering if there was a 'smarter' way to do the same using Veristand's functionality.

0 Kudos
Message 5 of 5
(3,453 Views)