Additional NI Software Idea Exchange

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

I/O Trace is extremely useful when debugging system-level text-based applications. Error handling for systems involving multiple drivers + software packages (RF toolkits, for example) is very difficult. After recognizing there was an error, we still have to determine which device threw the error and then query the appropriate driver/toolkit with the correct handle to determine what the error was. NI I/O Trace is a great way to quickly determine which device threw an error and at which function call. Unfortunately, the error reporting returned by I/OTrace is pretty limited. For example, consider the I/O Trace shown below of an application synchronizing two waveform generators. A property is not configured correctly for one of the generators. I/O Trace clearly indicates there is an error, however the exact cause of the error is difficult to discern from the message: 

 

Capture.PNG

 

The actual error message is: “The Sample Rate property can not be configured if OSP Enabled is VI_TRUE. “. It would be great if I/O trace could provide the entire error description. Compare this to the LabVIEW error handler:

Capture.PNG

For security reasons, many customers using Volume License Manager to administer licenses to client machines do not authorize users to download and install anything from the web. Therefore, if a critical patch is released, the client machines are unable to download this unless it is distributed by the administrator. It would be useful for the VLM administrator to be able to configure the Update Service such that all Users can run the Update Service but the service has been configured to point to an internal network share rather than an internet location outside the firewall. This way, the administrator could make critical updates and patches available for the client machines and the clients can be notified and install them.

As of today, the newest version of the NI Volume License Manager 3.1.2 supports following OS; Windows 10, Windows 8.1, Windows 7, Windows Server 2012 R2 64-​bit, Windows Server 2008 R2 64-​bit.

It would be more convenient if it supports Windows Server 2016 or Windows Server 2019.

 

When migrating to a new server with an updated license File I loaded a large backup files from a server with a 1000+Computer based licenses. The process of loading the back up took around 1 hour, which got me unsure if the process of restoring the backup was going correctly or not. It doesn't has a loading progression bar to see how much time left is needed for the backup to finish, or even just a progression bar of the percentage left. In the end the process was successful, but very stressing... I think having a progression bar would be an excellent feature to have.

If the License Manager is used to deactivate software, it will leave the prior serial key in the registry. On subsequent activations, the Activation Wizard will automatically populate the serial number field. I assume the same kind of thing will happen with .lic/.lc licenses.

I can see a valid use case for this, but in my scenario, I need to remove development licenses from productions and disallow users to reactivate the software without getting permission (the serial key) from me. Since these keys can be found in the registry, I can write a script to do this; however, it seems like a feature that License Manager should include.

 

PS: I know, I used the wrong idea label. We need more label flexibility to cover other smaller NI software!

Hello,

 

I believe that we should create and API for NI I/O trace so that customers with automated production lines can automate a report logging response to a failure  In the case where a production line experiences a UUT failure, these customers could programmatically rerun the specific test that failed last, open I/O trace, start recording, test communication with a device, stop recording, and log the results when a failure is experienced.  This could even be used with G or CVI code module, not just TestStand.  That way if say the VI experiences a particular error after running subVI "testme", the API could be usted to start recording, re-run "testme", stop recording, and to generate a report.  I understand that certain users only use IO trace occasionally, so an API would not be necessary for them, however, with customers who may have to trouble shoot numerous UUTs off of a production line, this could be a great help.

 

Regards,

 

Shawn

Provide the ability to filter log entries by device descriptor, similar to the “View Only this Process” and “View only this Thread” options.  The new feature could be implemented with another option in the pop-up menu: “View only this Device”.

 

IO Trace selective devices.png

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Or better yet, a way to selectively pick which of several devices to view.  For instance, if 5 devices were present in the log (UD0 - UD4), then I could select to only view UD1 and UD3.

We can currently write data to Ethercat slaves using WriteFoEData and the Industrial Communications for Ethercat driver 20.0. However we cannot read data using FoE. I would like Ni to add this capability.

I had to manually enter the properties of 25 frames and their signals (at an average of ~5 signals per frame). That's not fun, especially since many of them were similar.

 

The process would be a lot faster if I can clone the frames/signals and just edit the fields that differ.

 

xnet_pain.png

 

Hey there,

 

Versioning is often a fairly important matter when it comes to long/large projects. When a new FPGA bitfile is generated in LabVIEW, there's a possibility to change its version (in the build specification). As a result, a parse of the .lvbitx file as text file can be used to decypher the aforementioned version (it's following the <BuildSpecVersion> tag).

 

Though, there's no simple way (aside of making a Custom Device or modifying the accepted tags in the xsd file)) to get this information in Veristand after importing a new FPGA personality. The version may be important, but more information about the bitfile might need to be made public in this window :

FPGA_Info.png

 

In fact, there are a bunch of information that are readable in VeriStand about the model imported (name, version...). Once more, the FPGA needs the same feature 😉

 

Have a great day,

 

 

It would be good if MAX was able to report the serial number of the PXI chassis and PXI controller, if they are applicable.

Provide an option to show more characters in the IO section (in quotes) of the Description field.  Why not use the column separator as a way to expand the viewable characters, instead of just showing more white space?

 

IO Trace expanded Description characters.PNG

 

Posted this in Data Acquisition Ideas as well, but it seems like it would be implemented with something like MAX, so...

 

When dealing with various remotely deployed cRIO hardware configurations, it may be impossible to keep a sample configuration of every type of system we ever sell.  Unfortunately, if upgrades or revisions are made to the base code in our system, remotely deploying to our customers becomes impossible unless we have their exact configuration on-hand for the programmers to compile.  Remote connection to the hardware for this type of operation is also not typically possible.

 

To be able to simulate or emulate a full cRIO system (processor & hardware modules), then compile the RT code for deployment on that system as if it is physically connected to our development system would be ideal.  This would allow images to be created, which can be sent to customers for local deployment at their facility.  Dramatic decrease in "hardware library" requirements on the development end, reduction in "on-site upgrade" service trip costs to the customers.  Plus, easier for OEMs like me to justify the move away from PLC types of hardware and towards cRIO, once you take away some of the potentially nightmarish continued support and update issues involved with basing systems on cRIO platforms.

Hi, a few suggestions related to software deployment.

1) Separate out the Volume License Installer from the Volume License Manager. These should be two separate programs. Having the VLI separate allows other admins in other departments to create VL installer files for their own area without having to have an agreement file for the volume license server (which would be running on another machine and one which the other admins may not have access to). 

2) Have the NI License Manager client require elevated (i.e. admin) privileges to change the settings. This will prevent unauthorised users from changing the network license server which affects all users of the system. This is necessary in a classroom environment.

3) Have as an option whether things like the Package Manager/Registration wizard/Update service etc get installed.

NOTE: My role is only IT sysadmin support at my university. I'm not familiar with NI's individual products. I help run the servers supporting the NI-VLM and have previously helped package LabVIEW for automated deployment.

 

I know the NI-VLM tracks usage of the individual "paid" software products like LabVIEW/Multisim that are part of software site licenses. I'm trying to determine if the NI-VLM can tell me if a user has used *any* part the NI solution on a client computer--even if it is a "free" product included with it such DAQmx, MAX, ELVISmx Instrument Launcher, etc. I'm trying to determine NI software usage as a whole to gauge whether or not the usage is enough to justify installing this large software suite into specific locations on our campus, to stop installing it into lesser or non-used locations, move the installations elsewhere, etc.

 

thanks!
Scott

 

Please change the NI uninstaller program in Windows to be resizable. You have a tiny list box to list all the MANY little applications that NI installs. It's so small, though, that I have to constantly scroll to read the names. Vertical scrolling only would be tolerable. It's the horizontal scrolling, too, that is most annoying.

Would like XNET session to filter source addresses at the session level based on source address(es) specified in the dbc file.  Currently only way to filter is apparently to specify each individual frame to be filtered.  See screenshots of sample dbc and code required to filter multiple frames below.

Powertrain_0-1617281888294.png

 

Powertrain_1-1617281900942.png

 

Hello,

 

Many times, I find myself wanting to compare different I/O traces side-by-side, but I can only have one instance of I/O Trace in memory and hense can only view one capture at a time.  Would it be possible to view two different captures within one instance of I/O Trace?  I believe a lot of people would appreciate either a split screen option or the ability to open another instance of the I/O Trace application in memory.

 

Cheers!

 

Shawn S.

Many folks have huge trouble with building extra packages for the cRIOs (that are either missing or outdated), not to mention reproducible deployment and configuration management.

 

In industrial environments, we need a very high degree of customizability and reproducability, which the current nilrt distro just cannot provide. Setting up such an environment from scratch is a huge work for users, which usually aren't Linux embedded expert.

 

Therefore I'd suggest an fully automatized deployment of development environments, which are also easily customizable for the user. Major keypoints are:

 

a) development environment setup:

* container-based solution that can put together an environment automatically, using well-proven standard technology (eg. docker, ansible, ...)

* executable documentation: use declarative approaches, that are easy to understand and allow automatic documentation (eg. for verification / validation)

* use a recent, well-maintained standard distro (inside the container), and use off-the-shelf standard tools where possible

* fully tracable source control via git

* easily customizable: the user can fork off his own configuration from the appropriate upstream release, customize to his needs and later rebase to newer upstream releases if wanted

* automatic setup of package mirrors, binary repositories, product specific local deployment and HIL environments, etc.

b) target build environment:

* highly reproducable - even after very long time (eg. also allows automatic source code mirrors, etc)

* executable documentation - the configuration can be easily understood and used for generating documentation

* based on a Linux embedded experts community

* supports building for several (including customer-specific) target platforms

* supports easy configuration / customization of installed packages, as well as features selection and tuning of individual packages

* supports easily adding own software

* supports maintaining customized system configuration with image building

* fully tracable source control via git

--> the natural choice is using PTXDist (fast, reliable, reproducable, excellent expert community)

 

I'd estimate about 6 man-month (for a lone developer) for the initial stable release of the core system, plus another 6 mm for additional tasks like user documentation, examples, target specific configurations, etc.

 

Costs: about 200k $ (including extra buffer)

Equals sales price of about 25..30 avg. cRIO units. (RIO break even likely at about 50 units).

 

Write clean IIO drivers for the NI DAQ cards and bringt them to mainline.

 

Pro:

* full Linux-support via standard APIs out of the box (without extra sw installations)

* very high quality by community driven maintenance

* directly supporting for standard applications by standard APIs, w/o any hw-specific modifications

* easy integration in / customization for complex scenarios

 

* increased sales volume by opening a completely new market (Linux/FOSS world)

 

Costs:

* avg. 4..8 man-weeks per device type

* usually less than 1kLOC per device

 

For example, the - currently completely unsupported NI-600x - can be easily integrated into IIO as well as GPIO and PWM subsystems (driver can provide several interfaces in parallel, so users can pick the appropriate one for their applications).

 

NI could open up a new market - the Linux/FOSS world - which is currently completely unavailable to them right no, due to lack of usable drivers.