LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Seeing CAN I/O Type

I was just wondering if there was a way to see if a CAN signal is readable or writable before you actually deploy it in a session? Whether that's through property nodes or other means. 

0 Kudos
Message 1 of 9
(249 Views)

Hi rob,

 

how do you differ between "read" and "write"?

You know you can send the message containing your signal even though there might be a different device sending the same message on your CAN bus?

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 9
(235 Views)

Thanks for the reply, that makes sense from a CAN perspective but to clarify... Is there a way (before I actually deploy a session) to tell which signals in a DBC are intended to be transmitted by my node versus signals that are only ever received from other ECUs?

0 Kudos
Message 3 of 9
(226 Views)

rob,

 

It would need to be defined as either a CHARACTERISITC or MEASUREMENT within the DBC file.  As to IF it is writeable, that may be another story.  Some segments are locked and require running a separate flash kernel in order to gain access to some locations.  This all depends on who owns the firmware and how it was designed with respect to expectations of the user/environment.

Help the Community (and future reviewers) by marking posts as follows:
If it helped - KUDOS
If it answers the issue - SOLUTION
Message 4 of 9
(225 Views)

Hi rob,

 


@robv1234 wrote:

Is there a way (before I actually deploy a session) to tell which signals in a DBC are intended to be transmitted by my node versus signals that are only ever received from other ECUs?


The DBC files I worked with usually defined the "owner" of the messages defined in the DBC. (My background is "listening to automobile ECU CAN bus" while "commanding devices on a different CAN bus".)

 

Usually there is a section in the DBC file defining all participants on the CAN bus and (usually) messages are assigned to those devices!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 5 of 9
(190 Views)

DBC file contains ECU information, which store the transmitting and receiving frames.

You could parse this information to see which the direction of the frames from a certain node point of view, but XNET won't stop you from writing/sending a "receiving frames".

 

-------------------------------------------------------
Applications Engineer | TME Systems
https://tmesystems.net/
-------------------------------------------------------
https://github.com/ZhiYang-Ong
0 Kudos
Message 6 of 9
(180 Views)

A follow up question I had is can you also parse the information to see which signals are digital and which are analog?

 

0 Kudos
Message 7 of 9
(171 Views)

Hi rob,

 


@robv1234 wrote:

A follow up question I had is can you also parse the information to see which signals are digital and which are analog?


All CAN signals are digital, they consist of one or more bits…

 

I guess you want to know how many bits are used by the signal?

Yes, this information is in the DBC! Each signal is defined by its bit position inside the message and the number of bits used for the signal…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 8 of 9
(165 Views)

Also, arrays of values are noted as a MATRIX within a CHARACTERISTIC.  There are several types of arrays.

Help the Community (and future reviewers) by marking posts as follows:
If it helped - KUDOS
If it answers the issue - SOLUTION
0 Kudos
Message 9 of 9
(159 Views)