Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
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!
I occasionally hide controls on my FP and control their visibility programmatically during the execution of my program. The problem is that if I edit my UI and the control is hidden, it's very easy not to be aware that it's there and to accidentally overlap it, hide it or even move it off the screen.
To solve this, I usually try to save the VIs with all the controls visible, but that's not always feasible.
A better solution - LabVIEW should always show hidden controls in edit mode. It should just have some way of differentiating them from visible controls. This mockup shows them as ghosts, but it can also be any other solution:
In run mode, of course, the control would not be shown. This is similar to the black border you get when objects overlap a tab control.
With a case structure I can place the mouse cursor over the structure and Ctrl + scroll wheel to cycle through the cases without it being active. If I try doing this on arrays it doesn't work.
For front panel arrays the numeric indicator must have focus for this to work. Doesn't work when the array data is selected. I understand that multidimensional arrays would be a problem, but for 1D arrays it would be nice if it cycled through the elements.
For array constant block diagram elements, no scroll action works regardless of what is active. Again it should allow the user to cycle through elements for 1D arrays simply by hovering over the item and Ctrl + scroll wheel.
Resizing the front panel so it is correct when running the VI is still very tedious and can easily mess up during editing. The problem is even more severe for Xcontrols, because their runtime size is often very small so there is not even enough room to e.g. display all the tools in the tool bar during editing. Once the runtime size is correctly set, all it needs is a double-click on a terminal that has its FP item hidden outside the visible area and everything on the FP shifts and messes up.
We need three things:
An "edit time" FP size that is "comfortably big" so we can see the entire toolbar and possibly also helper controls and even maybe some comment text intended for the programmer that are outside the operator area and only used for debugging and such.
A "run time" FP size that matches exactly what the operator sees during running.
A special decoration or other visual cue during editing that indicates the FP area that will be visible at runtime.
We already have the crosshair in the upper left corner when showing the grid, so that could be defined as the upper left corner at runtime by default. All we need is define the upper left and lower right corner and the runtime FP area is uniquely defined. As a visual cue, everything outside the runtime area could be a shade darker or tinted differently than normal to indicate that fact. Running the VI would snap the FP boundaries to the bright area.
Then we also need handles to move any of the boundaries at single pixel increments. A control that scales with the front panel would simply scale to the bright area instead. Of course a legacy mode for older VIs that did not have this feature during their creation needs also to be supported.
The example image shows a reddish transparent area (just to throw out another idea, maybe a slightly darker grey would be better). This is one of my own subVIs that demonstrates the problem at hand. At runtime, only the progress bar should be visible, while at edit time, I want to see all controls, because I might need them e.g. to wire the connectors. It is not easy to switch between the two sizes.
(Of course we can currently program around all that by setting windows parameters via property nodes, but it is ugly, inefficient, and tedious.)
It would be great if the right-click context menu on a case structure had small glyphs to the left of the text (think similar to the TortoiseSVN context menu for those that know what I am talking about).
The reason behind my request is that it often takes me quite a while (a few seconds really, but it slows me down), to figure out which menu item will duplicate a case and which will delete a case. For some reason my brain interprets duplicate and delete as the same and I always have to think about it.
A simple "+" glyph next to add, a "-" next to delete etc would go a long way to making those menu choices a lot simpler.
See attached pic for an mock up.
There are probably lots of menus that could benefit from something like this.
LabVIEW has a somewhat hidden feature built into the variant attributes functionality that easily allows the implementation of high performance associative arrays. As discussed elsewhere, it is implemented as a red-black tree.
I wonder if this functionality could be exposed with a more intuitive set of tools that does not require dummy variants and somewhat obscure VIs hidden deeply in the variant palette (who would ever look there!).
Also, the key is currently restricted to strings (Of course we can flatten anything to strings to make a "name" for a more generalized use of all this).
I imagine a set of associative array tools:
Create associative array (key datatype, element datatype)
insert key/element pair (replace if key exists)
lookup key (index key) to get element
read all keys
delete all keys/elements
dump associative array to disk
restore associative array from disk
destroy associative array
... (I probably forgot a few more)
I am currently writing such a tool set as a high performance cache to avoid duplicate expensive calculations during fitting (Key: flattened input parameters, element: calculated array).
However, I cannot easily write it in a truly generalized way, just as a version targeted for my specific datatype. I've done some casual testing and the variant attribute implementation is crazy fast for lookup and insertion. Somebody at NI really did a fantastic job and it would be great to get more exposure for it.
Example performance: (Key size: 1200bytes, element size 4096: bytes, 10000 elements)
insert: ~60 microseconds
random lookup: ~12 microseconds
(compare with a random lookup using linear search (search array): 10ms average. 1000x slower!)
I'd like to suggest that the error ring dialog ("Select Error") have an entry for a search expression.
For instance, I'm looking for an error code for an index out of range. I might enter, "index" or "range" as the search term, and browse the resulting error codes whose descriptions include that text.
While I don't find myself using the error ring itself very often, I do use the resulting dialog quite a bit to browse for appropriate error codes. The trouble is that there are a lot of error codes and you could be staring at them for quite a while looking for the right code.
Labview 2013 has a great new documentation feature called Bookmark Manager. It even has a nice feature that lets you click on the listed bookmark and takes you to that point in the code. However, I was surprised that I could not print or otherwise "export" the list. It would be nice if the Bookmark Manager output list savable, copyable and printable or perhaps even exportable in text, spreadsheet or other format. This would allow the information to be merged with external project management schedules, ToDo List etc. Thanks for any comments and/or Kudos!!
A pretty common use case of LVCompare in my workflow is to use it as a diff tool in SVN to compare different versions of a VI. When I do that, the previous version is downloaded into a temp directory, and then there is a decent amount of load time because dependency paths have to be resolved differently for the version in the temp directory and some recompiling happens. For top-level VIs in large applications, it seems like the whole dependency tree is getting loaded, which takes a long time. But really, for comparing VIs, there's no need to load the contents of lower level subVIs (and their dependencies, and dependencies of dependencies, etc.) As long as the connector pane, typedefs on the connector pane, and the icon of a subVI are loaded, that should be enough information for a visual diff of the top level VI.
Remote front panels are easy to get working and do a great job of viewing and controlling front panels for existing LabVIEW programs. It is not the best approach for providing LabVIEW functionality in a web page, but can be up and running quickly. The problem is that there is very little security built into the LabVIEW Web Server. Years ago, when it was using the G Web Server, you could use simple HTTP authentication via htaccess.txt files. That feature is no longer supported. You can embed the control in a web page hosted by another web server and have the control point to the LabVIEW web server. This provides an outer shell of authentication and security, but still exposes the vulnerable LabVIEW Web Server to potentially malicious actors. The existing locks on IP address do nothing to protect against other users behind the same firewall.
So, my request is to simply provide better security and authentication features for the LabVIEW Web Server that is serving up remote front panels. Just re-implementing basic HTTP authentication and restricting access to folders via htaccess would go a long way with (I presume) not much effort. NI could even switch to an open source web server with existing authentication capabilities and customize it to serve front panels. Or provide a custom module/handler/action for Apache (or similar for IIS) to serve front panels.
For a feature that has been around for so long, I am surprised that security and authentication functionality has not been improved or updated.
The length of the right click context menue (mainly in the block diagram) increases in each new LabVIEW version. So the handling becomes more and more uncomfortable - especially because there is no eye-catcher for the different entries.
There es one program who is doing it much better: MS-Word 2013. There are much more functions in the right click menu in comparison to the LabVIEW menue but it is more comfortable and the items are easier to find because of the icons => Have a look to the picuture.
I'd like to suggest to implement a context sensitive right click menue in the style of MS Office to re-align the existing items and beeing ready for further extensions of the menue. Beside giving the current menue entries a new style also some of the properties of the structures which are selected could be moved to this new menue (e.g. text styles, number formats, basic alignment, grouping, ...).
During LabVIEW Development was a PXI Real-Time System connected (LAN) next to my Laptop and process Build/Deployment was no problem.
Now the RT has been shipped far away to customer site and i have no longer access to that network.
So I need an other way to distribute and
here is my IDEA #1: (below is another IDEA #2)
FACT : Most of all customers have no knowledge about "How to find the Real-Time System and update the Application on it".
So the new item will built an "Offline Installer.exe" and will run on any customer PC to a full automated update job automatically.
- create a detailed installation report which can be stored and send back to the developer.
- In case of the Real-Time System isn't connected to any LAN, the customer could use the "Offline Installer.exe" to prepare an USB-Stick which has to be plugged into the Real-Time System. Then a reboot will launch the full automated application update process. (the "RT LEDs" will give feedback when the process is finished)
I tried also another way but without success:
Step 1: Add a ZIP File into the Project Explorer : "My Zip File"
Step 2 : Configure the "My Zip File" => Add "My Real-Time Application"
Step 3 : Build "My Zip File"...but the Result was bad :
But anyway, if the would be successful there are a lot of more steps needed:
- sending the ZIP to the customer
- unpack ZIP
- find Real-Time System at customers network
- a FTP tool is needed to update the system.
- There is no way to stop the running Application (from a PC without NI-Software)
The update with "ZIP" is far away from a comfortable solution.
If the Real-Time System has a running webserver (the thing which is using Silverlight),
then the application could be updated by using a webbrowser.
So, first we have to update the webserver on the Real-Time System (as difficult as updating the application)
I would love to be able to show a ruler on the front panel....when turned on it should float above the objects on the panel...not unlike a cursor with lines in both planes if the panel was a graph. Unlike the grid this would make it simple to align e.g. columns when you have multiple tables underneath eachother. You could of course have this on the diagram as well, but the main use for such accuracy is on the front panel.