LabVIEW Idea Exchange

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

Simple thing:
It will be nice to have context help with monospaced font. The functionality of this help currently is very poor but with monospace font we will be able to add e.g. simple "arrays" and probably many more others descriptive things that can be usually found in e.g. .h files.

 

Below simple character based array in notepad++ and in LV context help.

 

notepad.JPG

 

context.jpg

 

Regards,

Michał Bieńkowski

A VI's icon can be made of any shape by not filling all the pixels in the icon editor. A cluster constant can be displayed as a small icon. But a cluster constant which is connected to a type def. will display a full size icon no matter what. Why not allow transparency for type def icons?

 

typedef.jpg

One example is shown below from the Device Driver Installation dialog but there a many similar cases. It is very difficult to obtain a decent overview having such a small window for the tree display.

 

I suggest as a general style guide to always enable the resize option in a dialog box whenever the layout requires a scroll box.

 

I have a hard time to see what could be reasons not to do so.

 

dialog resize.png

When closing untitled VIs LabVIEW gives you a dialogue which prompts you to Save changes, Defer or Cancel.

 

Save changes.PNG 

 

If you Defer Decision then you have to select the VI in the project, remove it and confirm another dialogue prompting to save changes. This means that to close an untitled VI  is a three stage process. This can be quite annoying when you have just created a small bit of test code that is no longer needed.

 

I propose having a fourth option in the original dialogue allowing you to not save the VI and remove it from the project and memory.

 

e.g.

 

New option.PNG

The LabVIEW String/Number Conversion Palette contains many functions to convert a number to a Decimal, Hex, Octal, Fractional, Exponential and Engineering Strings.  However there is one missing: The Number to Boolean/Binary String.  This can be replicated very easily with the following code, but should be a native function of LabVIEW.

 

Number to Boolean String86.png

Hi.

 

I'll propose a more informative set of tooltips for shift registers. Especially when you drag out shift registers to access older values as well, I always have a difficult time remembering which is the most current value, and which is the oldest (is it the one on top, or is it the one at the bottom...).

 

Currently all shift registers have the same tooltip, namely "Shift Register". I suggest to change that into an indexed iterator variable name:

 

Shift_register_tooltips.png

 

Cheers,

Steen

I've been programming in LabVIEW for a decade.  Yet, there is still an issue with type def'ing a cluster.  If one of the goals of LabVIEW programming is documentation, why does NI still make it the process difficult?   

 

After creating then 'type def' a cluster, I then have to more spend time unhiding and repositioning labels. This gets extremely inefficient with large cluster.

 

Why not add an option to hide or leave labels untouched when 'type def'ing a cluster?

 

2017-10-25 10_40_31- LabVIEW issue.png

 

I'm working on a high-performance application where every bit of time counts.

 

LabVIEW's parallel execution helps but we are having to write individual functions in C so we can try out the AVX instructions available on modern processors.

 

LabVIEW recently used SSE2 so I guess the compiler supports this (well, LLVM certainly does). It would be good to have an advanced option to enable more recent updates (AVX+) to avoid going to C!

The web is miles ahead of LabVIEW for its UIs.  LabVIEW should support embedding HTML5/CSS containers as content for VI front panels, that can be bound to any data type or class preferrably to enable more capable UIs.

There have been several ideas proposed to alleviate accidentally savings vis in the wrong version of LabVIEW. While useful, I think the main problem is that LabVIEW doesn't use the information it reads from the file to preserve compatibility. I'd like to propose here that LabVIEW introduce compatibility modes for previous releases in which LabVIEW will break a VI if a feature is introduced that isn't supported by the compatibility version. It will essentially be a built-in, seamless "save for previous" mode. 

 

By default, LabVIEW will load a VI (hierarchy) in a compatibility mode for whichever version is was saved in. If the user tries to make a change that isn't compatible, LabVIEW will alert the user and the user can tell LabVIEW whether it's ok to save to a newer version that supports the feature.

 

The level of alerts can be configurable, of course.

 

Related ideas:

Version-aware LabVIEW launcher

Add header to LabVIEW file to contain the version of LabVIEW

Display VI version in title bar

Version independent Source Code Saves

Over the years I have run into situations where I have to monitor files accessed by another application from within my LabVIEW application (Example: monitoring the standard_out/standard_error files from an app launched with the system exec).

Currently the only way to do that is to use polling. 

 

I would love for LabVIEW to have built in events for file monitoring so polling would no longer be required.

 

For instance, the following events would be very useful:

  1. File Opened
  2. File Closed
  3. File Change  (I really want this one if nothing else)
  4. File Created
  5. File Deleted 
  6. more...

 

Below is an example as to how it might look like.

5-20-2010 9-20-09 AM.png

 

I know that many extract wires 'upwards' and later on merge errors to collect errors and continue. From a layout perspective it's natural to add the top code to the top input of Merge Errors, but from a data flow perspective any error that happens there is often secondary to the 'base/lower' part of the code. This means you need to connect the top code to the bottom input of Merge Errors.

Wouldn't it be nifty if you could have an r-click option or input of "reverse order" or "merge from bottom"?

I assume that it behinds the scenes makes an array of errors and looks for the 1st one, so this would only add a 'reverse array' inside the function. To not have that ability forces you to do a Build array, Reverse array and Merge Error, which feels unnecessary.

First of all, this is not a duplicate of this, by Case Selector I mean Case Selector and not the label.  It may well be a duplicate of something else...

 

I doubt that I am the only one who uses multiple conditions.  This usually leads to nested Case structures, building boolean arrays, or obfuscated mapping functions between the conditions and some enum.  Other times, the case structure is half-of-a-screen wide just to accommodate the values associated with the different cases.  I would suggest that NI add multiple Case Selectors to the Case structure.  Additional selectors could be pulled down like a shift register, or added via a right-click menu.  Either way, I don't think they should be allowed to cross, so the top-down selectors map to left-right selector labels.  There could be a reasonable limit to the number.

 

I know hyperlinks in free labels have been implemented in LabVIEW 2015 and that the idea has been marked as implemented:

http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Hyperlink-in-Floating-Comments/idi-p/986485

 

Kudos to that and I love it. 

 

However, there was another idea:

http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Documantation-links-on-block-diagrams/idi-p/3104999

 

that was closed as a duplicate of the hyperlink in free labels, except there is a small difference in the second idea that was not really implemented. The hyperlinks do not let us insert links relative to the project, the poster of the Documentation links on block diagrams even says: "The risk would be moving the document and the link becomes invalid. This risk could be minimized by placing a documentation folder in your labview project." 

 

So this new idea is to let us either use relative paths on the hyperlinks on the free labels: i.e. file:///C:/ProgramData  or use environment variables such as %userprofile%, %programdata%, etc. For example, file:///%userprofile%/documents. This would make it possible to put links to documents in our machine that will be in a different path than the rest of the team working on the project. The documentation might be relative to the project file, but might not be exactly in the same location in each machine due to differences such as %userprofile% = C:\users\<user name>  where <user name> will be different for each team member. 

 

 

Currently it's only possible to have drag and drop events for files on a path control.

 

It would be usefull if we could have drag and drop events for files on any control.

This way simpler GUI can be build with a very nice user experience.

 

Ton

I just found out about LabVIEW NXG's C Node. I know my team would love to have it in LabVIEW to use for bit masking in a familiar syntax. The Expression and MathScripts nodes have issue with 64-bit values and give unexpected results. A quick test in C Node does fix these issues.

Hello,

 

In many of my applications i had to run dynamic assynchronous VIs using a VI path.

 

When the VI you want to launch has some problems (VI broken, missing ressources, ... ) you get the generic error 1003. (The VI you want to launch may be broken ... ? )

 

This error can be easily solved when you are using LabVIEW IDE. Smiley Happy

 

But sometimes, this error can occured in an executable you have deployed to your final user computer.

And then, the error 1003 (The VI you try to call may be broken ... ) is a little bit poor in order to analyse the problem. Smiley Frustrated

This error occurs, for example, when the dynamic VI tryes to access missing DLL's.

 

It would be nice, if the error 1003 message, could be filled out with and additionnal "error description", giving more informations about the error source.

For example, an error list, like the error list in the LabVIEW IDE. (Broken arrow error list !)

 

Thanks a lot.

 

Manu.

If we run an installer that was built with the application builder, sometimes it can happen that we have the exact same version of the program already installed. Nothing to do! Easy, right?

 

We get a nice dialog telling us that "No software will be installed or removed". So far so good.

 

Any reasonable person would think that we could just press [Next >>] here, proceed with doing nothing, and close the installer without further roadblocks.

 

Unfortunately, the [Next >>] Button is disabled and greyed out . Why??? It seems to be a perfectly valid operation at this point.

 

If we press [Cancel], we get yet another dialog asking us if we are really sure to cancel. Of course we are sure!!! There is nothing useful this installer can do on this particular machine at this time, so get it over with already!!!

 

 

Idea: If the installer determines that there is nothing to do, we should be able to press [Next>>] and close the installer without further dialogs.

 

 

 

 

(I assume that this is not a Microsoft thing cast in stone and that NI can actually do something about it)

 

 

 

(I thought something similar was suggested before, but I cannot find it).

 

It is often necessary to deal with "malformed" spreadsheet strings, where there is more than one possible delimiter.

 

One example is discussed here, where a delimiter is either ",", "N", or a combination of the two, but the same has come up before. In my typical case, users sometimes use notepad to edit spreadsheet files, randomly replacing tabs with multiple spaces, multiple tabs, or a combination of tabs and spaces, so it "looks" aligned, but spreadsheet string to array will choke on it.

 

"Scan strings for tokens" has that useful feature to allow the definition of multiple delimiters as an array and (by default) consecutive delimiters are contracted into one (option "allow empty tokens?"=false). This makes it easy to parse lines (delimiters: \n, \r) or fields (delimiters: \t, \s). An example to deal with dirty strings is given here.

 

"Spreadsheet string to array" already accepts arrays of delimiters, but they are treated as alternatives and multiple consecutive delimiters are NOT contracted into one. I suggest to add an option to "Spreadsheet string to array" where multiple consecutive delimiters will be contracted into one for parsing. (or it could be named "allow empty tokens?" as above for simplicity, default=true to keep current behavior)

 

For example if I wire a delimiter array containg a single space element, it would treat multiple spaces as one.

If the delimiter array contains a tab and a space, consecutive spaces and tabs (in any order) will act as a single delimiter. The above quoted example would have a delimiter array containing two elements, "N" and ",".

 

Suggestion: add a boolean input to treat multiple consecutive delimiters as a single delimiter. For example, the two code fragments in the image should give basically the same result (The upper part is slightly defective and would need a little bit more code if lines end in a delimiter, but I think the idea should be clear).

 

The suggestion is at the bottom:

 

 

 

 

Spoiler
LabVIEW to Android .apk for apps or to Apple mobile

Dear Hot Shot Devs! 

thousands of us want to be able to build a mobile app from LabVIEW!!! 

Can you imagine??

 

All that power with full responsive features on any device, like Swift and Android Studio??

 

you can “hook into” those tools to let us design the User Interface and evening do Bluetooth and Wireless with all’s y’all’s stacks and wizardry!!

 

Consider me as an Alpha tester.  I know what is needed. Let me know the plans!

 

I have been using LabVIEW since before rev 3.0 when we could actually talk to Dr G!! 

great work you are doing. Sometimes I do not enjoy the “abstractions” you do to make it easy. Kind of liked the good ole “bit banging” direct link to Comms and I/O but I understand.  

contact me at Dave.Korpi@gmail.com