05-30-2013 11:43 AM - edited 05-30-2013 11:48 AM
I think there may be a bug using concatenating tunnels on RT if the 1D Array input to the tunnel is a Fixed Size array coming from the FPGA code. See the image below.
Each array of 6 U32 is a CAN frame coming from an NI-9853. The for loop is looking for 4 CAN frames since that is what my device outputs. As you can see the indexed array is properly sized at 4x6, but the concatenated tunnel is only 6 long instead of 24.
I tried duplicating the bug with an array of random numbers but it worked fine, which is what led me to the conclusion about the fixed size arrays.
Edit: If I create the array without right clicking>create indicator (or edit the indicator's Size property) I get the properly sized array of 24, but only the first 6 indices are right. The other 18 are all 0
05-30-2013 01:58 PM
I can't test your bug at the moment, but as for a work around, is it possible to convert the fixed array to a normal LabVIEW array? Maybe try a Insert Array element at index 0, then delete it. Does concatenating out of the for loop work then?
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
17 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
05-30-2013 02:07 PM - edited 05-30-2013 02:08 PM
Off the top of my head, I can confirm this. I think I ran into this issue recently when I copied a fixed size array from my FPGA code (forgetting it was fixed size) and put it on my RT block diagram (just did it to get the same data type easily). I can't really blame NI for not testing/catching this, but I believe I saw the same issue.
05-30-2013 02:18 PM
@Hooovahh wrote:
I can't test your bug at the moment, but as for a work around, is it possible to convert the fixed array to a normal LabVIEW array? Maybe try a Insert Array element at index 0, then delete it. Does concatenating out of the for loop work then?
The workaround I'm using is just reshaping the array from the indexed tunnel. But, yes inserting into an empty array works. So does replacing a subset of an array with 6 elements
05-30-2013 02:59 PM - edited 05-30-2013 03:02 PM
Another option: right click your indicator, open its properties, and see if it's set to "adapt to source." It may not be the concatentating thats the problem, it may be once it gets to the indicator to be displayed. If it's adapting to a fix sized array, that may be your issue.
05-30-2013 03:01 PM
@for(imstuck) wrote:
Another option: right click your indicator, open its properties, and see if it's set to "adapt to type." It may not be the concatentating thats the problem, it may be once it gets to the indicator to be displayed. If it's adapting to a fix sized array, that may be your issue
Not sure if you caught the edit at the bottom of my first post - That also was an issue, but there still seems to be issue with the concatenating.
05-30-2013 03:03 PM
@elset191 wrote:
@for(imstuck) wrote:
Another option: right click your indicator, open its properties, and see if it's set to "adapt to type." It may not be the concatentating thats the problem, it may be once it gets to the indicator to be displayed. If it's adapting to a fix sized array, that may be your issue
Not sure if you caught the edit at the bottom of my first post - That also was an issue, but there still seems to be issue with the concatenating.
mah baddd