06-06-2019 10:11 AM
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.
06-06-2019 10:24 AM
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.
10-06-2020 09:13 AM
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):
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.
12-07-2020 11:22 AM - edited 12-07-2020 11:23 AM
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.
12-07-2020 11:48 AM
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.
12-07-2020 12:00 PM
Measurements and Characteristics are part of the CCP and A2L files as I have worked with CCP for almost 10 years.
12-07-2020 12:05 PM - edited 12-07-2020 12:25 PM
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