LabVIEW Idea Exchange

Community Browser
Top Authors
cancel
Showing results for 
Search instead for 
Did you mean: 
Post an idea

There doesn't appear to be any proper place for posting Data Dashboard product ideas, so I'll leave this here and it can be moved if necessary.

 

Data dashboard is a great application that makes portable and continuously monitoring of remote systems more easily accessible. However, Data Dashboard on Windows platforms must be running in the foreground to display shared variables. It would be convenient if Data Dashboard could pin live tiles to the start menu, while periodically poling for variable updates. In this way users would no longer need to constantly launch or switch to the Data Dashboard app.

 

The nature of Data Dashboard seems to mesh well with the "information at a glance" mantra of the live tile interface. Seems like a missed opportunity to me and I would love to see this implemented in the future.

In response to another post, Darren suggested someone start a new topic about how to more effectively spread information about new or esoteric features (sometimes referred to as "tribal knowledge").

One idea is to have a database of these gems and display one at random during the splash screen.  So, while we are waiting for LabVIEW to start, we can learn a potentially useful "trick", if we care to.

 

Example:  "Control-click on some primitives will reverse the order of the inputs.  By also holding Shift, any inversions will follow the connections."

(Note:  the second have of this example is not actually implemented yet.)

Am I the only one annoyed by the missing pixels on the increment arrow button?

 

The left one is original, on right I fixed it in paint, does it make any sense? Any clue why it's actually like this?

 

System Numeric.png

 

Just reminds me this story of the google logo. http://www.theguardian.com/technology/2014/may/27/google-pixel-perfect-logo

 

 

FPGA code allows I/O references to be used so that code can be re-used/abstracted, like this

FPGA-SubVI.PNG

This could/should be extended to cRIO C-modules so that code can be re-used on multiple modules. This would require the 'cRIO Device' property node to return an array of I/O Refnums that could then be passed to subVIs or other modular code.

 

For example, if I have code for an analogue input module (say, NI 9205) which filters and processes the data, and I wish to re-use that code in multiple experiments I have to manually change the module name in each IO constant or node (Mod1/AI0 to Mod3/AI0) if the module moves or I need more than one of the same type.

 

Conversely, if the cRIO Device property could provide the I/O references, the code could accept a cRIO Device constant and the reusable code extract the I/O references. The code would then adapt from Mod1/AI0 to Mod3/AI0 as the cRIO device was changed from Mod1 to Mod3.

 

It would be added to these properties.

FPGA-cRIO-Prop.PNG

 

Thanks,

Richard.

 

Capture.PNG

User Colors 1-16 are now pre-defined by the default LabVIEW.ini file  that leaves us developers with only two.  Why 18 total?  This needs some adjustments IMHO!  It should be easy to implement but, can't be done without hacking the ini editor

Allow type casting between Strictly Typed VI References

TypeCastVI.png

Why:

The asynchronous methods require strictly typed VIs. Strictly typed VIs depend on the connector pane and terminal wiring type (Required, Recommended, Optional). Depending on your development environment and configuration options (Front Panel > Connector pane terminals default to required), newly connected terminals may be Required -or- Recommended. 

Opening a VI reference or calling an async method with the wrong terminal wiring type will result in Error 1057: Type mismatch. 

TypeCastVI_Justification2.png

To work around the connector pane variance, we need to type cast check every connector pane terminal variance in order to call the proper async method without getting the Type Mismatch error.

TypeCastVI_Current.png

The amount of unnecessary complexity to call and collect a thread is infuriating. There is already enough complexity when it comes to spawning a new threads; between the conditional options (Non-Reentrant, Reentrant, Async Forget, Async Collect), VI type specifier (Generic, Strict), Connector Pane Type (Pattern, Rotation), Terminal Wiring Types (Required, Recommended, Optional), etc. Threading in LabVIEW needs improvement.

Idea:

To better support Asynchronous calls, we need the ability type cast the required strictly typed VIs to:

1. Add an option to Start Asynchronous Call and Wait on Asynchronous Call methods to ignore the VI terminal wiring type flags:

     Required (0x21000), Recommended (0x20800), Optional (0x20000)

2. Support type casting VIs To More Generic Type and To More Specific Type to avoid the error 1057 Type Mismatch all together

TypeCastVI_Idea.png

Regards,

A LabVIEW Enthusiast 

My 2 cents: would be nice to have optional tabs on the case structure similar to what we have in modern browsers like chrome. If dont have gazillion cases then this would be a very comfortable way to switch between cases. Arrows at the side shift the cases. The active case is color coded and slightly overlapping the surrounding cases.

 

Warning: MS paint artwork below! 🙂

 

case.png

I'd like to see added to LabVIEW  a 'Retain String Formatting' option for the concatenation operator. This would cause string formatting (the stuff you set with the CTRL-0 shortcut) to be preserved when concatenated. See the example below. This could be added to the right-click properties of the concatenation operator "Preserve String Formatting". An alternate symbol for concatentation would need to be provided so that you could visually tell that this option was enabled when looking at the concatenation operator on the block diagram. Maybe the NBC peacock sitting on top of it?

 

Sometimes setting string formatting attributes programmatically is a lot of work, and inappropriate to the application; simply not changing/removing the attributes would be sufficient... Note that the string formatting attributes are preserved across a cut-and-paste - if you copy the contents of a formatted string and paste it into another string, the attributes are retained. I find the current behavior of the concatenation operator  (NOT retaining string attributes) to be at odds and inconsistent with LabVIEW. After all, it is a GRAPHICAL programming environment, is it not?

 

If I remember correctly, you also lose string formatting attributes when changing a string constant to a control or indicator - perhaps that also could use some thought...

 

NewConcatenate.jpg

Hi Team,

 

Would be Great to add or Delete Input in Array [ Insert Into Array ]. Bit difficult to manage when used for reporting. Rearrange all input nodes if to add or delete a input inbetween.

 

Idea.png

 

 

Many Thanks

Anbu

Hi !

 

Often dealing with old code it's always a pain to install old versions of LabVIEW to get the code compiled the newest LV version.

For example, porting code made in LV 5.0 implies converting first to LV 7, then convert to LV 2009, and finally convert to LV 2013.

You then have to install these version, licences, ...

 

It would be nice to have a service on NI.com website from which we could send a zip archive containing the project to convert.

Then selecting the target LV version, a could service could unzip and compile the code across all versions of LV to have the code matching the requested version.

Why is the property to read the default value a scripting property?

 

If you'd ask me reading the default value should be a normal property...

 

Writing it is scripting, so maybe it should be split up.

Two more suggestions

 

There has also been a need for rising edge and falling edge triggers for boolean values instead of having to manually code this in every time.  I know this would take extra memory space but could be turned on or off maybe in the control settings dialog.

 

I also have to manually code in time delay functions because everything I do is in loops with parallel code.  The timers can't execute properly this way and would be nice to be able to use the built-in timing functions instead of hand-coding.

I would like the worfkflow to save a new class/library/project to be more like Save As... when creating a copy.  Mainly I would like the option to either use 'Current folder' which puts the class/library in the current directory, or the option I would almost always use, Save which creates a new folder with the class name and puts the class inside.

 

NewClassSaveDialog.png

I really need the concept of "aliases" or "shortcuts" to project items.  Consider this project:

Case 1.PNG

Case 1: maybe the item in blue is where I left off working yesterday,

Case 2: maybe the item in blue is a VI that I have to change when I add a new class somewhere else.

 

Either way, to get to it, I have to

1... Open the target ('RTAC-Culverson')

2... Open the DAQOBJECT folder

3... Open the DAQOBJECT CAN folder

4... Open the DAQMODULE CAN folder

5... Open the DAQMODULE CAN.lvclass

6... Open the ACCESSORS folder

7... Open the MY OUTPUT CAN TASK folder

8... Open the VI that I want.

 

I suggest this:

 

1...  I pop up on this item in the project, and choose CREATE ALIAS.

2... An Alias appears in the project.  Aliases are ALWAYS at the top of the project, without opening any folders.  (maybe limit to 10 aliases)

3... You can't do anything to an alias except OPEN it or REMOVE it.

4... Double clicking (= OPEN) an alias merely opens all folders leading to the targeted item, and highlighting it.

5... You can create an alias to a VI, to a CTL, to a CLASS, to a FOLDER, to a BUILD SPEC, anything in the project.

6... Deleting the original item deletes the alias to it.

 

This seems simple to do, because you don't need a context menu for the alias (if it's a build spec, allow BUILD in the menu, if it's a VI, allow RUN, or OPEN, etc.) Forget all that.  Just OPEN it, or REMOVE it.

 

It's a ref to an item WITHIN the project, so copying a LVPROJ file should copy all the aliases.

 

Whaddya think ?

 which it is still not doing in LabVIEW 2015.

.net calls can end up being pretty verbose in LabVIEW, having to pipe between property boxes to get to some nested value, when the call is pretty straightforward when written in a more traditional language. In addition, trying to replicate some .dll functionality seen in c++ is frustrated by how different the calls look. Having the ability to drop into a function block to write .net code would make it much easier to port functionality + debug.

Even if there was a penalty performance wise, it would still be a nice middle ground for getting a prototype off the ground before optimising it for LabVIEW.

Hi All 

 

if NI adds the Fuctional Global Variable (FGV) tempalte in design pateren tempates in hte New window, it is easy to create FGV VI's.

and Helps the programmers, no need to create from the begining of VI.

Even it is usefull for CLD Exam also.Smiley Happy

 

 

FGV Template.jpg

Aren't you tired or seeing Labview, or LABview or LabView online?

 

NI Certifications (CLA, CLD, etc) should be stripped off people engage in miss-spelling LabVIEW.

 

And those who aren't certified should handwrite "LabVIEW stands for Laboratory Virtual Instrumentation Engineering Workbench" 10 thousand times!

Search for Keywords is presently limited to logical "OR" search. It would highly profit from logical "AND" Search.

LabVIEW could highly profit from improved access to examples. I suggest to outsource the NI Example Finder to an advanced web search engine.