LabVIEW Idea Exchange

Community Browser
About LabVIEW Idea Exchange

Have a LabVIEW Idea?

  1. Browse by label or search in the LabVIEW Idea Exchange to see if your idea has previously been submitted. If your idea exists be sure to vote for the idea by giving it kudos to indicate your approval!
  2. If your idea has not been submitted click Post New Idea to submit a product idea to the LabVIEW Idea Exchange. Be sure to submit a separate post for each idea.
  3. Watch as the community gives your idea kudos and adds their input.
  4. As NI R&D considers the idea, they will change the idea status.
  5. Give kudos to other ideas that you would like to see in a future version of LabVIEW!
Showing results for 
Search instead for 
Did you mean: 

Do you have an idea for LabVIEW NXG?

Use the in-product feedback feature to tell us what we’re doing well and what we can improve. NI R&D monitors feedback submissions and evaluates them for upcoming LabVIEW NXG releases. Tell us what you think!

Post an idea
0 Kudos

The Get and Set Variant attribute functions are polymorphic on the 'variant' input terminal.



What do you expect of the following code:



I think allowing this is a bad technique in a 'early typed' language like LabVIEW.


Or am I missing something?



0 Kudos

An option to kill a "model" vi which causes the the main applicaton to hang (?)if this model vi is linked to the main application statically (by subvi call).


In such a scenario the only option is to kill LabVIEW (by end task). Any way to solve this?




0 Kudos

Populating values to the "enum" control is not possible by using the "strings" property node and hence to populate a large data to a "enum" one has to create a "Ring" control use the "strings" property and replace that "ring" with the enum (or if you have enough time enter them manually) .


So why not use the "Strings" property of "Enum" to write values to it directly..See the image attached



0 Kudos

I am not sure whether this is a repeated post or not.


However i would like to see the 'Tunnel wiring wizard" as a part of the upcoming LV version so that i can wire mutiple cases of my state machine in a single go instaed of wiring in each frame.



Here is the Tunnel wiring wizard attached

0 Kudos

I'm not sure if there is already a way to do this, but it'd be nice to have a "References Manager" at run-time so you can watch all kinds of references be created and (hopefully) destroyed when no longer needed. This can apply to file refnums, TCP connection IDs, queues, etc. It would be helpful for debugging large programs and where multiple developers are working on the same project... as well as for the forgetful likes Smiley Happy

0 Kudos

To make your code reusable as subvi's and have less connector space used the cluster is a way to go, but you need to define the types inside your cluster upfront.

If you want to add an other item inside this cluster you have to rewrite all the subvi's this cluster is wired to...... This is at least annoying. (or dull, boring, dreadful, tedious, dreary, tiresome, aggravating, exasperating, irritating)


If you could add new types of variables inside this "Dynamic Cluster Array" on the fly, you can expand the clusters on the fly when needed !


Example of a "Dynamic Cluster Array":



 Look also to the Search 1D node, to see how you can select an array cluster item.


You can read and write the cluster as normal clusters but if you want to read or write a variable that does not exist this variable is added.

Reading and writing this variable will add this variable in all clusters in the array, these variables will get the default value until your software changes this value.


This behavior is the same as structures in Matlab



0 Kudos

 It would be nice to have a default QSM project.  The attached image could be a good starting point for everyone to provide comments, in regards to what the project should include.


0 Kudos

The only method available to assign all the data from one chart to another is to use the History Data property node.  


chart property.png 


Without using the property node, all you get is the last value of the chart.   


Take for example this use case:

   I have several functional globals holding unique chart data.  Using one Front Panel chart on the main VI, i swap whichever operations data i'd like to see in and out of that chart.  Currently, i have to fumble around with searching for the correct reference number of the Func Global chart and use a property node to do my data assignment.  Totally inefficient! 


Adding the ability to select assignment of the entire history to the "Data Operations" context menu, and making the chart polymorphic to recognize the input difference would be incredibly helpful. 

0 Kudos

I would like to use data probes and custom probes on front panel controls and indicators. I would especially like to pop-up on an indicator of a running VI and bring up a floating chart or graph.

0 Kudos

I miss the possibility to 


- add COM compatibility to .NET Interop Assembly builds

- add COM  compatibility to Shared DLL builds



I missed LV help information about the need to add a key file (*.snk) to the project first, before you can select it for signing the assembly. Unless you do that the file filter (*.snk) seems to fail when browsing.

0 Kudos

I would love to have an option to remove scrollbars from block diagram.  I have been using LabVIEW since 2001 and I am constantly having to modify code from engineers who are using LabVIEW for the first time.  If there was a way to enforce the good practice of making the block diagram the size of a single screen, this would help me a ton.  I realize that developers use computers with different screen resolutions so the option to display scrollbars still needs to be there but it would be great if it could be disabled.

0 Kudos

The Lego NXT software release (not toolkit) is a wonderful interactive environment, that should be provided as an add-on application

on its own, call it "block application builder".  I see many useful applications in a variety of different industries where businesses wish to extend to their customers interactive and intuitive interface that they can program in their desired configuration of the product's behavior according to their own use cases.


That means we need an environment where we can prepackage blocks that is functionally specific to their applications, with ability to sequence them, run them in parallel, add conditional runs, and iterative loops. The blocks themselves could be computational in nature, or additionally provide user interface popups for interrogating the user, and have access to the full range of Labview functionality. Each block properties settings can appear as front panel settings for user to customize the behavior of that block. This is exactly how the

Log mindstorm software was configured, except we ask that you extend the availability of that functionality for the general users to develop their own intuitive applications using the same environment framework design. This application can target building the customer created sequence of operations as a windows .exe or .dll. We also would like to customize the menus in the application. In other  words, make the Lego mindstorm application a generic template for us to develop our own applications with similar intuitive framework.

0 Kudos

For controls and indicators created through Block Diagram, the display of the Label in the BD can be made invisible by right clicking on it and select Visible items. I used to do this often when my diagram gets bigger and bigger.


Oops lot of mouse strokes.... Instead if by simply pressing delete key, if the label gets invisible, then it will be very good and easy..... Just a thought. Please comment on this.

0 Kudos

LabVIEW uses 5 types of operation behavior for push buttons. However, I have come accross a rather annoying obstacle, whenever I need to execute an event for once (turning on a simple LED AND keeping lit AND keeping the button released, for instance), I need to run through Loops or structures which  consumes the space of the block diagram. Although this may sound very simple, after all I am a newbie when it comes to LabVIEW, it really helps in certain places, namely in my very simple project. Here are two of the ways that demonstrate what I am doing at the moment: 








And here is how the new pressonce/execute once and for all/release block diagram looks like (excuse my English, I believe the digrams must illustrate what I want to say)




 As I have said, maybe it doesn't make a difference to you, but it does to others and I am one of them, well you can either go with a while loop or without, let's keep it to the big guys to decide (this is if my suggestion gets accepted). And I am choosing a random label Smiley Very Happy

Thank you for your time.

Smiley Happy


Message Edited by toniaz on 28-11-2009 12:46 AM

0 Kudos


In large application there are huge amount of parameters. If there is a lot of parameters usually there is also lot of parameter handling code in block diagram. This code can be moved to away if there is ready mayde parameter handling system. Here are my basic needs\ideas to this kind of system: 


- Parameter values are read from e.g. CSV-file when there is a first call 

- Parameter value must be changeable during code execution

- When value is changed new value must be updated to e.g. CSV-file

- User can change parameter name from project view. The new name is updated to all block diagrams (compare to shared variables)

- New parameters can be created from project view

- All parameter values can be changed and read from block diagram by using proper VIs

- Parameter library settings e.g CSV-file format and name can be set in project view


Is there any one else who needs this kind of system?

0 Kudos

Make a new menu item available in the structures contextual menu (like the auto-grow) to enable automatic wiring off wires that go through the structure in other cases, events or sequences.

0 Kudos

I really wish labview had a rainflow analysis algorithm in one of its tookits. Rainflow analysis algorithms are very useful for analyzing lots of data taken during structural test monitoring. A real-time version would be nice too.





taken from

0 Kudos

This post

Has gotten me thinking about how to handle preserving a memory location for external data updates.  @009 has much better memory management- couldn't a Preserve Memory primitive be written? For obvious reasons a counterpart Deallocate would need to be required for each "Preserve" call



0 Kudos

Why did National change the way pasting objects on either the front panel or block diagram?

In 8.2 the paste (Ctrl-V) would paste the clipboard where the cursor was last clicked. 

In 8.6 (or possibly 8.6.1) it always pastes it in the center of the panel or diagram and is floating.

This is very annoying.


0 Kudos



Certainly, every body tries to evaluate a vi in terms of performance. This includes the time which a particular code takes to run. We have to use the tick cout vi in order to determine the time of execution.

How about adding an additional button in the  toolbar itself which measures the time taken by a particular code to execute? Smiley Happy

This can certainly be a good feature in LabVIEW!!!