Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

Need to read an array in the ECUMC measurement category from an OEM ECU.

Obviously, you did not read my post above.  The A2L file is an ASCII file and the Measurement and Characteristic entries are dependent on the hex addressing and not its location in the A2L file other than it should fall in the same section as other Measurements or Characteristics.  You can have multiple Characteristics and Measurements that are all at the same address without issue provided your operating system has sufficient memory for all of the added entries.

Help the Community (and future reviewers) by marking posts as follows:
If it helped - KUDOS
If it answers the issue - SOLUTION
0 Kudos
Message 11 of 17
(2,606 Views)

Thanks for the response. I did read your post above.

 

My issue is not with the A2L file formatting, but rather the fact that the ECUMC toolkit has the ability to read a characteristic array, but not a measurement array.

0 Kudos
Message 12 of 17
(2,601 Views)

FYI for anyone coming across this limitation, there is a mix of incomplete and misleading information in this thread.  Our company just came across this, too.  Here is a summary of the issue and current status as best as we understand it:

 

Problem

The ASAM MCD-2 MC standard defines a "MATRIX_DIM" property that can apply to XCP characteristics or measurements.  This property defines the characteristic or measurement as an array.  NI's ECU MC toolkit (as of version 20.0) supports characteristic arrays of up to two dimensions.  The toolkit does NOT support measurement arrays of any dimensionality - i.e., they must be scalars.  This is to say that the ECU MC toolkit does not support the MATRIX_DIM property for XCP measurements.  This limitation is documented in the ECU MC readme (the screenshot below is from version 20.0, but it has been present for several previous versions, too):

 

image-2020-10-06-09-41-49-739.png

 

Workarounds

To be absolutely clear, there is no current solution (as of ECU MC 20.0) to support measurement arrays.  The only workaround I'm aware of (described in this thread already) is to break apart measurement arrays into individual scalars in the A2L file itself.  In other words, instead of defining a 1D, 2-element measurement array called "foo", define two measurement scalars called "foo_1" and "foo_2" or something to that effect.  Again, you MUST modify the A2L file to make this work.

 

When Will Measurement Arrays Be Supported in NI's ECU MC Toolkit and/or the ECU MC VeriStand Custom Device?

As with any feature, NI will develop it when a critical mass of customers requests it.  Please reach out to NI support or your sales rep and request that this feature be brought to the automotive networks product owner's attention.  The more times this happens, the more likely the feature is to be implemented.

Message 13 of 17
(2,367 Views)

Caveat Emptor: This thread did not discuss XCP until the previous post.  As such, the information presented above is relevant for XCP, but not necessarily for the Standard CAN Connections.

Help the Community (and future reviewers) by marking posts as follows:
If it helped - KUDOS
If it answers the issue - SOLUTION
0 Kudos
Message 14 of 17
(2,260 Views)

Hi Minions,

 

The OP mentioned "Measurements" and "Characteristics" and using the ECUMC toolkit in their first post, so they're definitely not using standard CAN, which is programmed with NI-XNET and has no "Measurement" or "Characteristic" terminology in the standard as far as I know.  I've never used CCP, which I know the ECUMC toolkit supports, so my previous post may be incomplete in that it might also be true about CCP.  Still, I think the conversation has unambiguously been about XCP (and/or CCP, per the previous sentence) since the first post even though XCP wasn't explicitly mentioned.

0 Kudos
Message 15 of 17
(2,247 Views)

Measurements and Characteristics are part of the CCP and A2L files as I have worked with CCP for almost 10 years.

Help the Community (and future reviewers) by marking posts as follows:
If it helped - KUDOS
If it answers the issue - SOLUTION
0 Kudos
Message 16 of 17
(2,242 Views)

I think we're saying the same thing with different words.  You mentioned "standard CAN connections", which I interpreted as meaning a standard CAN protocol (e.g., CAN 2.0 or similar, which is programmed with NI-XNET and is not CCP).  I tried to distinguish between CAN and CCP in my previous response, but that distinction may have been unclear.  I'm sorry if that was the case, but if you reread my post, I explicitly leave open the possibility that CCP may suffer the same issues as XCP and rule out that CAN (which, again, is not CCP) has anything to do with this issue.

 

All of that said, re-reading my first post, I do think and thus will now posit that everything I wrote applies equally to XCP and CCP.  The statement in the ECUMC readme is generic to A2L files not supporting MATRIX_DIM (it's not specific to XCP or CCP).  Additionally, the NI APIs provided for reading measurements only have a polymorphic option for scalars.  Thus, I think it's accurate to state the regardless of whether you're using XCP or CCP, you can only read scalar measurements using the ECU MC API.  Let me know if you disagree.

 

David

0 Kudos
Message 17 of 17
(2,235 Views)