Archived: LabVIEW 2012 Embedded Module for ARM Microcontrollers Known Issues

NI does not actively maintain this document.

This content provides support for older products and technology, so you may notice outdated links or obsolete information about operating systems or other relevant products.

Overview



This document contains the LabVIEW 2012 Embedded Module for ARM Microcontrollers known issues that were discovered before and since the release of LabVIEW 2012 for ARM. Not every issue known to NI will appear on this list; it is intended to only show the severe and more common issues that can be encountered.

The LabVIEW 2012 Platform Known Issues contains a full listing of known issues, including LabVIEW toolkits and modules.

Document Organization

The Known Issues Document is divided into two separate tables. The following section displays the issues by issue category.

Known Issues by Category

The following items are known issues in LabVIEW 2012 Embedded Module for ARM Microcontrollers sorted by Category.

Analysis and Math
225248Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
Building and Distributing LabVIEW Applications
121512User specified compiler Optimization level is ignored if JTAG debugging is enabled
225248Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
242453Pressing Pause while debugging an ARM application over JTAG does not highlight the place where execution stops
284430Values on wires of Extended Precision data types display incorrectly during highlight execution.
359542Applications utilizing concatenating For Loop tunnels may hang LabVIEW during builds
File I/O
381541Set File Position does not change the current file mark of an existing file opened for writing on LabVIEW Embedded for ARM targets.
Functions, VIs, and Express VIs
181189I2C VIs do not support interface selection or multiple slave addresses
216128Timed Loops run with a default priority of 100 if the Configure Timed Loop dialog box is not opened
225248Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
286504Elemental IO resource name does not match with peripheral on the Luminary LM3S8962 Evaluation Board
306720Merge Errors function is not available in functions palette on ARM targets
362803CAN Read with unwired output causes target stack overflow.
Miscellaneous
363773Closing the Front Panel of an application running in debug mode on a LabVIEW Embedded for ARM target crashes LabVIEW.



IDKnown Issue
Analysis and Math
225248

Return
Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
When building ARM applications with MicroLib (not a default selection), advanced analysis library functions that resize arrays can generate unexpected results. Advanced analysis library functions can be found on the Signal Generation and Mathematics palettes. By default, ARM applications are built with the Standard Library and not MicroLib. However, this option can be set through the uVision project.

Workaround: N/A

Reported Version: 2010  Resolved Version: N/A  Added: 07/22/2010
Building and Distributing LabVIEW Applications
121512

Return
User specified compiler Optimization level is ignored if JTAG debugging is enabled
The user specified value of compiler optimization level (-Ox), set in the Advanced Compilation Options in the Build Specification is ignored if JTAG debugging is enabled. A default of -O0 is used in this case.

Workaround: N/A

Reported Version: 1.0  Resolved Version: N/A  Added: 06/02/2010
225248

Return
Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
When building ARM applications with MicroLib (not a default selection), advanced analysis library functions that resize arrays can generate unexpected results. Advanced analysis library functions can be found on the Signal Generation and Mathematics palettes. By default, ARM applications are built with the Standard Library and not MicroLib. However, this option can be set through the uVision project.

Workaround: N/A

Reported Version: 2010  Resolved Version: N/A  Added: 07/22/2010
242453

Return
Pressing Pause while debugging an ARM application over JTAG does not highlight the place where execution stops
While debugging an application using JTAG on an ARM target, pressing pause does stop the VI but you cannot single step after this and LabVIEW does not indicate where the VI stopped execution. This is because pressing pause simply sends a stop command to the target and LabVIEW does not know where the application stopped in relation to the VI.

Workaround: Set breakpoints in your VI to stop execution

Reported Version: 2010  Resolved Version: N/A  Added: 07/30/2010
284430

Return
Values on wires of Extended Precision data types display incorrectly during highlight execution.
When using highlight execution debugging on ARM targets the value for the extended numeric type is shown as NaN, and the value for the extended complex numeric type is shown as 0.00E+0.

Workaround: Use the probes to display the correct values on wires.

Reported Version: 2011  Resolved Version: N/A  Added: 07/29/2011
359542

Return
Applications utilizing concatenating For Loop tunnels may hang LabVIEW during builds
This hang can occur if one of the following two conditions is met: 1. You set an output tunnel of a For Loop as Concatenating and build the application with USB JTAG debugging enabled. 2. You pass a 2D or multidimensional array out of a For Loop with the output tunnel set as concatenating and build the application.

Workaround: 1. Use TCP or Serial Debugging, or disable debugging. 2. Do not use concatenating output tunnels with 2D and multidimensional arrays.

Reported Version: 2012  Resolved Version: N/A  Added: 07/10/2012
File I/O
381541

Return
Set File Position does not change the current file mark of an existing file opened for writing on LabVIEW Embedded for ARM targets.
The Set File Position function uses fseek() on LabVIEW Embedded for ARM targets. The fseek() function is only supported on files that are open for writing. See http://www.keil.com/support/man/docs/rlarm/rlarm_fseek.htm

Workaround: Read file contents into memory, modify the data, then write/overwrite all of the data to file.

Reported Version: 2012  Resolved Version: N/A  Added: 01/22/2013
Functions, VIs, and Express VIs
181189

Return
I2C VIs do not support interface selection or multiple slave addresses
The ARM I2C VIs do not give you the ability to use all available I2C interfaces (ports) on your Microcontroller. They also do not have the ability to address multiple slaves.

Workaround: N/A

Reported Version: 2009  Resolved Version: N/A  Added: 06/02/2010
216128

Return
Timed Loops run with a default priority of 100 if the Configure Timed Loop dialog box is not opened
The default priority of a Timed Loop should be 25 when targeting an ARM Microcontroller. However if a Timed Loop is added to the Block Diagram of an ARM VI and saved without opening the Configure Timed Loop dialog box, the default priority is configured at 100. This can cause significant difference in the timing behavior of your application, if multiple timed loops are present.

Workaround: Whenever you add a Timed Loop to the Block Diagram, double-click its Input node or right-click the node and select Configure Input Node from the shortcut menu to display the Configure Timed Loop dialog box. This should automatically set its priority to 25. Now click OK to save the correct priority.

Reported Version: 2010  Resolved Version: N/A  Added: 06/02/2010
225248

Return
Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
When building ARM applications with MicroLib (not a default selection), advanced analysis library functions that resize arrays can generate unexpected results. Advanced analysis library functions can be found on the Signal Generation and Mathematics palettes. By default, ARM applications are built with the Standard Library and not MicroLib. However, this option can be set through the uVision project.

Workaround: N/A

Reported Version: 2010  Resolved Version: N/A  Added: 07/22/2010
286504

Return
Elemental IO resource name does not match with peripheral on the Luminary LM3S8962 Evaluation Board
On the TI LM3S8962 evaluation board, the user LED is designated LED1. However, the elemental IO node to access this LED is displayed as LED0 in LabVIEW.

Workaround: N/A

Reported Version: 2010  Resolved Version: N/A  Added: 07/29/2011
306720

Return
Merge Errors function is not available in functions palette on ARM targets

Workaround: Open functions palette in a VI under the My Computer target, drop the Merge Errors function and copy to your ARM VI

Reported Version: 2011  Resolved Version: N/A  Added: 07/29/2011
362803

Return
CAN Read with unwired output causes target stack overflow.
When a CAN Read VI with unwired outputs is executed on a LabVIEW Embedded for ARM target no low level CAN code is executed and a stack overflow may be generated.

Workaround: Always wire all output terminal for CAN VIs when running on LabVIEW Embedded for ARM targets.

Reported Version: 2011  Resolved Version: N/A  Added: 02/07/2013
Miscellaneous
363773

Return
Closing the Front Panel of an application running in debug mode on a LabVIEW Embedded for ARM target crashes LabVIEW.
When running an application in debug mode on a LabVIEW Embedded for ARM target, closing the LabVIEW front panel crashes LabVIEW.

Workaround: Before closing the front panel stop the executing VI.

Reported Version: 2011  Resolved Version: N/A  Added: 02/07/2013

Known Issues by Date

The following items are known issues in LabVIEW 2012 Embedded Module for ARM Microcontrollers sorted by Date.

121512User specified compiler Optimization level is ignored if JTAG debugging is enabled
181189I2C VIs do not support interface selection or multiple slave addresses
216128Timed Loops run with a default priority of 100 if the Configure Timed Loop dialog box is not opened
225248Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
242453Pressing Pause while debugging an ARM application over JTAG does not highlight the place where execution stops
284430Values on wires of Extended Precision data types display incorrectly during highlight execution.
286504Elemental IO resource name does not match with peripheral on the Luminary LM3S8962 Evaluation Board
306720Merge Errors function is not available in functions palette on ARM targets
359542Applications utilizing concatenating For Loop tunnels may hang LabVIEW during builds
381541Set File Position does not change the current file mark of an existing file opened for writing on LabVIEW Embedded for ARM targets.
362803CAN Read with unwired output causes target stack overflow.
363773Closing the Front Panel of an application running in debug mode on a LabVIEW Embedded for ARM target crashes LabVIEW.



IDKnown Issue
121512

Return
User specified compiler Optimization level is ignored if JTAG debugging is enabled
The user specified value of compiler optimization level (-Ox), set in the Advanced Compilation Options in the Build Specification is ignored if JTAG debugging is enabled. A default of -O0 is used in this case.

Workaround: N/A

Reported Version: 1.0  Resolved Version: N/A  Added: 06/02/2010
181189

Return
I2C VIs do not support interface selection or multiple slave addresses
The ARM I2C VIs do not give you the ability to use all available I2C interfaces (ports) on your Microcontroller. They also do not have the ability to address multiple slaves.

Workaround: N/A

Reported Version: 2009  Resolved Version: N/A  Added: 06/02/2010
216128

Return
Timed Loops run with a default priority of 100 if the Configure Timed Loop dialog box is not opened
The default priority of a Timed Loop should be 25 when targeting an ARM Microcontroller. However if a Timed Loop is added to the Block Diagram of an ARM VI and saved without opening the Configure Timed Loop dialog box, the default priority is configured at 100. This can cause significant difference in the timing behavior of your application, if multiple timed loops are present.

Workaround: Whenever you add a Timed Loop to the Block Diagram, double-click its Input node or right-click the node and select Configure Input Node from the shortcut menu to display the Configure Timed Loop dialog box. This should automatically set its priority to 25. Now click OK to save the correct priority.

Reported Version: 2010  Resolved Version: N/A  Added: 06/02/2010
225248

Return
Analysis Library functions that resize arrays might generate unexpected results when used with Microlib
When building ARM applications with MicroLib (not a default selection), advanced analysis library functions that resize arrays can generate unexpected results. Advanced analysis library functions can be found on the Signal Generation and Mathematics palettes. By default, ARM applications are built with the Standard Library and not MicroLib. However, this option can be set through the uVision project.

Workaround: N/A

Reported Version: 2010  Resolved Version: N/A  Added: 07/22/2010
242453

Return
Pressing Pause while debugging an ARM application over JTAG does not highlight the place where execution stops
While debugging an application using JTAG on an ARM target, pressing pause does stop the VI but you cannot single step after this and LabVIEW does not indicate where the VI stopped execution. This is because pressing pause simply sends a stop command to the target and LabVIEW does not know where the application stopped in relation to the VI.

Workaround: Set breakpoints in your VI to stop execution

Reported Version: 2010  Resolved Version: N/A  Added: 07/30/2010
284430

Return
Values on wires of Extended Precision data types display incorrectly during highlight execution.
When using highlight execution debugging on ARM targets the value for the extended numeric type is shown as NaN, and the value for the extended complex numeric type is shown as 0.00E+0.

Workaround: Use the probes to display the correct values on wires.

Reported Version: 2011  Resolved Version: N/A  Added: 07/29/2011
286504

Return
Elemental IO resource name does not match with peripheral on the Luminary LM3S8962 Evaluation Board
On the TI LM3S8962 evaluation board, the user LED is designated LED1. However, the elemental IO node to access this LED is displayed as LED0 in LabVIEW.

Workaround: N/A

Reported Version: 2010  Resolved Version: N/A  Added: 07/29/2011
306720

Return
Merge Errors function is not available in functions palette on ARM targets

Workaround: Open functions palette in a VI under the My Computer target, drop the Merge Errors function and copy to your ARM VI

Reported Version: 2011  Resolved Version: N/A  Added: 07/29/2011
359542

Return
Applications utilizing concatenating For Loop tunnels may hang LabVIEW during builds
This hang can occur if one of the following two conditions is met: 1. You set an output tunnel of a For Loop as Concatenating and build the application with USB JTAG debugging enabled. 2. You pass a 2D or multidimensional array out of a For Loop with the output tunnel set as concatenating and build the application.

Workaround: 1. Use TCP or Serial Debugging, or disable debugging. 2. Do not use concatenating output tunnels with 2D and multidimensional arrays.

Reported Version: 2012  Resolved Version: N/A  Added: 07/10/2012
381541

Return
Set File Position does not change the current file mark of an existing file opened for writing on LabVIEW Embedded for ARM targets.
The Set File Position function uses fseek() on LabVIEW Embedded for ARM targets. The fseek() function is only supported on files that are open for writing. See http://www.keil.com/support/man/docs/rlarm/rlarm_fseek.htm

Workaround: Read file contents into memory, modify the data, then write/overwrite all of the data to file.

Reported Version: 2012  Resolved Version: N/A  Added: 01/22/2013
362803

Return
CAN Read with unwired output causes target stack overflow.
When a CAN Read VI with unwired outputs is executed on a LabVIEW Embedded for ARM target no low level CAN code is executed and a stack overflow may be generated.

Workaround: Always wire all output terminal for CAN VIs when running on LabVIEW Embedded for ARM targets.

Reported Version: 2011  Resolved Version: N/A  Added: 02/07/2013
363773

Return
Closing the Front Panel of an application running in debug mode on a LabVIEW Embedded for ARM target crashes LabVIEW.
When running an application in debug mode on a LabVIEW Embedded for ARM target, closing the LabVIEW front panel crashes LabVIEW.

Workaround: Before closing the front panel stop the executing VI.

Reported Version: 2011  Resolved Version: N/A  Added: 02/07/2013

Document last updated on 2/7/2013

Glossary of Terms

 

  • Bug ID - When an issue is reported to NI, you may be given this ID or find it on ni.com.  You may also find IDs posted by NI on the discussion forums or in KnowledgeBase articles.
  • Legacy ID – An older issue ID that refers to the same issue.  You may instead find this issue ID in older known issues documents.
  • Description - A few sentences which describe the problem. The brief description given does not necessarily describe the problem in full detail.
  • Workaround - Possible ways to work around the problem.
  • Reported Version - The earliest version in which the issue was reported.
  • Resolved Version - Version in which the issue was resolved or was no longer applicable. "N/A" indicates that the issue has not been resolved.
  • Date Added - The date the issue was added to the document (not the reported date).