From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW Idea Exchange

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

My tools are technical facing, and I use math.  Instead of ASCII only, a "markdown friendly" version of MathJax, something that allowed me to write clean equations, would be useful.

 

instead of writing

     "sin(x^2) e1 +cosh(1/x) e2"

 

I could enter the text

 "$sin\left(x^2\right)\hat{e}_1 + \cosh \left(\frac{1}{x} \right ) \hat{e}_2$"

which is LaTeX in a wrapper

 

And I would see displayed this:

gif.latex.gif

 

 

LaTeX is deep and wide, developed for decades, nicely licensed, and supported well in academia. 

 

Some linkes:

 

Labview should support inserting a LabView plot object in microsoft powerpoint to allow access to the data and plot features like enable disable in plots that have been shared via powerpoint. Many other applications support embedding their objects in powerpoint.

I would prefer better and much more error messages in the DLL import assistant.

- I had a unknown data type of I64 as "long long". But LabView only knows "__int64".

 

The only message was "could not import function xxx"

I prefer the line of header file, there the import stopps. Two days of searching, and only small hints from the NI support...

 

Peter

Property nodes for LVClasses are a tease, this is what I really want:

 

Invoke nodes that correctly wire call dynamic dispatch by value VIs (this includes the ugly wireing of the "preserve runtime class" inside the in place element structure.  Its ugly, just obfuscate it for me.

 

References to Data value references that correctly respond can use the "to more generic" and "to more specific" class so that I have the DVR to the more specific.generic class REFERENCE.

 

Justification for Invoke nodes:

I work with lots of different Classes, and libraries.  I can quick drop alot, but I do not know all the publicly exposed functions in a give class especially since 90% of the time it is still in development.  Generally a pallete won't see the light of day in internal development (somewhat of a pain to make/maintain, definately not a single click operation), so getting the correct methods involves paging back and forth between the project explorer, this is slow.  I want to code quickly, if I can have the Public api exposed by an invoke node it means I dont' ever have to make a pallete of VIs (we can argue over this all you want, it just isn't simple/fast enough)  and I can access the functions much more easily/quickly.  Even if every class had a pallete, it would still be inferior to the invoke node solution because A.) I have to remember where every pallete is. B.) Sharing/installing pallete changes for other developers is PAINFUL.  I want to give them a zip file that they can chuck anywhere.  I sure do not want to make a scripting function to update there palletes, so it requires file moving/installation/making sure they actually put the class in the right folder (which someone will always do wrong and invariable cause me to right arrow enter 1000 times when I receive their project.)

 

 

It would be nice if you can define a webpage or email address for bug reporting in a VI or library, that you could set under File->VI Properties before you distribute a library/device driver, etc.

 

If this address is set, labview could automatically add a menu entry "Report Bug/Feature Request" in the Help menu that takes you to a webbrowser or a email client with some preforumlated text, e.g. subject: "[Labview Bug Report] <VI name> <VI version>".

 

This way one wouldn't have to start browsing the web frist to figure out where to report problems.

 

It would also be nice, if one could set this once for a complete project and all VI would inherit this from the project they belong to.

 

regards

 

Arun

 

LabVIEW has shipped with an Express VI which supports the ASCII LVM format since version 7.0.  However, there is no other way to access LVM files from LabVIEW, short of burrowing into the Express VI and using the subVIs.  Doing this leads to problems, since the subVIs have changed a few times.  In addition, the Express VI does not support all the features of LVM and makes accessing multiple data segments somewhat nonintuitive.  We need an API for LVM, ideally object based, so features like the special block can be easily extended by users.

Hello,

 

I work as a LabVIEW integrator and for one of my customer I develop application, with maintenance goal for their installation all over the world with RS232 or Bluetooth communication for example, deployed on targets as PDA (PocketPC 2003 & Windows Mobile 6) or Touch Panel (Windows CE 4.2 to 5.0) using LabVIEW 8.6 Mobile Module.

This LabVIEW additonal module works quite well to deploy the same application in this differant targets, but I encountered some problems and I have some suggestions for Mobile Module :

 

1/ MMI (Man Machine Interface)

      -  for graphics indicators (as Gauge or Slide) graphical object ramp or multi Slider is deleted by LabVIEW when you build an EXE => I think that a graphical objets with all its graphical property could be added in Mobile Module (and works on these all targets). See examples in GraphicalObjects.PNG

      - as I say in my introduction my application is deployed all over the world and usually I used "Caption" dynamic modification for multilingual management for all my controls & indicators. But in mobile module we can't do this (but we can modify dynamically boolean text), so I think that it could be possible.

 

2/ VISA (& Bluetooth) Management

      -  I think there is a bug with VISA installation. Indeed with the installer you can choose the installation directory (default directory or specific directory : in non volatil memory) but if you don't install VISA support in default directory it doesn't work (with PocketPC 2003 for example) I think that could be resolved

-  As I said in introduction my application could communicate throught different protocols (RS232, Bluetooth) and with LV 8.6 Mobile Module we can now use VISA : great !!!. But in Windows Mobile 6, VISA does not support bluetooth (it seems to have an incompatibility with virtual aliases in the registry) ; and in PocketPC2003 it works very well. I think that could be resolved

provide a means to see dotnet or externall dll documentation in Labview

 
Ie
        /// <summary>
        /// the file location where the data is to be logged.
        /// </summary>
        private string _path;
        /// <summary>
        /// the file location where the data is to be logged.
        /// </summary>
        public string Path
        {
            set { _path = value; }
        }
 
 
ie to be able to see the following
the file location where the data is to be logged.
when the property node is touched In labview 

 

 

 

I very much like being able to export a labview.vi to a .dll or .net interop library .dll. Our higher level automation is in C# and having access to labview.vi via .net .dll is great. However, the current build capability only allows a single prototype/method to be created. Consequently, I have to provide every input/output when invoking this single method. This can work but it's just inconvenient and not as obvious as being able to create multiple methods smaller things, e.g.

 

write setup values

write DAQ sample rates

start storing samples

stop storing samples

stop DAQs

write summary info

 

When I create a C# class, I can create any number of methods or properties to manipulate class data members. Exported labview.vi files should enable this too. NI AE said I could create parent.vi files (setup.vi, write_DAQ.vi, etc) that all include the actual vi of interest. These various vis could be added to the exported .vi list. And, this would indeed be a work around. But, this is a hack to get around this problem and the AE agreed. Instead, I would like to be able to define multiple methods/prototypes on a single exported .vi.

 

 

I am communicating to parker motor controllers through the Ethernet (parker sample code). Apparently since it is Ethernet based, the code uses socket, where the sockets require admin rights (another discussion about ethernet based and admin rights). In order for my VI to connect to the controller I need to run LabView as an administrator. The problem is I am making this program into an executable for production work.

 

When I create the executable it will not connect to the controller unless I am running the application as an administrator. As this program will be used in production I want it to be as simple as possible to perform. I don't think there is a simple way to change the environment to run without the need to run application as an admin. Are there any ideas to either change the executable to run as an administrator through the application builder? My plan is to create an installer through the application builder.

 

Some ideas that I had is to create an installer file and create the executable. Change the privilege level of the executable (properties>compatibility>privilege level>run this program as an administrator). Use a batch file to install drivers and application, then replace application with the one with the elevated privilege level. Another idea I had is use a batch file to do a runas command to run application as an admin. I cannot get either method to work. Does anyone have ideas?

Greetings,

 

I recently took the NI Instrument Control class and we came to the topic of creating a VI tree.vi.

 

It didn't make sense that we needed to update the VI tree.vi AND the palette when we add or delete a VI.

 

I propose that there should be an option to auto-make a VI tree.vi or just a simple html page with the available VI's in your project/driver.

 

This currently makes sense since all the VIs should already be categorized in the palette.

 

Thanks,

 

-Jose

Many times when wanting to share a VI Snippet on a discussion forum to quickly demonstrate a suggestion, I find it tedious to save the snippet to a temporary location, then go to the webpage, navigate to the location and upload the image to add it to my reply.  I think it would be very helpful to have the ability to configure the VI Snippet to automatically upload to an online image host (imgur.com for example or even an NI solution) and put the link on the clipboard.  Then it's ready to paste into the reply.  Other desktop screenshot applications already have this functionality (see ShareX (formerly ZScreen) ).  The purpose of VI Snippets is largely to facilitate this exchange of small portions of code and this would simplify the process greatly.

Every time when the new Developer Suite arrives, we have to setup our development system from ground up.

This could be simplified by installing OpenG right from the Platform-DVD's.

Also, the risk of missing dependencies between systems will be dramatically decreased.

 

Being able the Dialog "Search Results" from custom tools would be nice.

 

This could be done by providing an API to the real search dialog or by placing a VI for showing a similar looking dialog into vi.lib.

 

The Idea has been mentioned here: https://decibel.ni.com/content/message/15984

Most of the time the only part of a VI that needs protection is the block diagram but there are a few instances of why including the front panel in the password-protection would be needed. Someone can see the front panel of a subVI during run-time even if it is under layers of password-protected subVIs.

 

For instance, an encryption application. Except for the Top Level VI, all other VI's are password-protected.

Diagram.png

During run-time, the Key for the encryption algorithm, which should never be known, is shown on the front panel of the Key Generation VI as well as the Encryption SubVI.

 

Of course one work around for this would be to hide all items on the front panel of each subVI but this will slow down further development in the future. The ability to just type in a password would allow a developer to instantly return to work.

 

Also, an alternative solution would be to allow password-protected Source Distributions.

 

Can anyone else think of an application in which the front panel of a VI should be password-protected?

 

Other Notes:

It is important to mention that it is possible to do things like Remove the Front Panel or Remove the Block Diagram, but this does not allow the VI to be recompiled for different targets. This is why a password-protected Source Distribution would be ideal.

The 'Context Help' window shows the use of each connection for a sub-vi, but in a multi-developer environment, opening a sub-vi is often necessary - especially for math & data analysis.

How about a button (selection like 'lock context help') in Context Help that enables the display of block diagram of the sub-vi below the connector pane?

Also, the author of sub-vi could pre-decide what part to include in this 'Context image' instead of complete diagram, thereby suppressing trivial parts. 

 

 

Hi

 

it would be great if there would be a better platform for 3rd party VIs, for example instrument drivers. Something that allows you to see when the last updates where done, what has been changed (browse the code) and also something that would allow you to branch from the existing code, add changes and sent a pull request back in a way that other people can see that the VI has been branched, so that they don't need to duplicate their effort.Including an issue tracker with this would also be great.

 

This in my view provides faster turnaround for fixing bugs and adding new features. I had to fix a few bugs in some drivers, emailed the VI back to NI and since then nothing has happened to the driver at the least the last few times I checked and there is not a good way of tracking this. The idea is not new and there are lots of platforms like this around in the open source world. Here are some examples:

 

github http://github.com (version controlled history, branching, merging, issue tracker, per project wiki)

bitbucket http://bitbucket.org/ (similar to github)

 

Lots of linux distributions manage their source code this way:

OpenSUSE build server: http://build.opensuse.com (version controlled history, branching, merging)

Launchpad https://launchpad.net/ (version controlled history, branching, merging, issue tracker, code review, translation)

 

and there are plenty of other sites.

 

For Reports it is only possible to set one with for all columns. It would be nice if the polimorphic VI "Append Table to Report.vi" would support column with for multiple columns too. Several VIs would have to be copied and adapted.

 

For a standard report, the VI replacing "Set Table Column With.vi" would look like this:

 

Set Table Column Widths_BD.png

The functionality to adapt to the page with if the column with is too big is lost when different withs are set. But probably NI could fix this too.

 

Greetings,

shb

Locking a library during an automated build seems like a very natural thing to do.  Would be nice to be able to script it.

Create a VI, which allows to get the config file path from the config reference.

 

Regards,

Marc