Showing results for 
Search instead for 
Did you mean: 

Is Flexlogger the appropriate tool for this?

I have a CompactRIO based control and acquisition system which is hosting a number of network shared variables, and this system is to be rented to a client who is currently using (the now deprecated) SignalExpress for data acquisition and logging from other instrumentation.  I gather that I am unable to access these network shared variables directly through SignalExpress owing to unsupported data types in my implementation, so I need to find the best solution to get the data from my cRIO system into the client's files.  Combining individual TDMS files in post-processing is an obvious solution, but I'm looking for something more elegant.  I gather I can write a LabVIEW VI that can be run within SignalExpress, and this might be able to handle the network communication to the shared variables and convert that to an appropriate data stream, but I wonder about encouraging the client to upgrade to either DAQExpress or FlexLogger - assuming that these products have inherent functionality that will allow pulling the data from the network shared variables that are hosted on the cRIO.  Thoughts?

0 Kudos
Message 1 of 4

FlexLogger is not supported on any cRIO or remote system at the moment, regardless of if it supports DAQmx (cRIO-904x and cRIO 905x is what davidraj was referring to below). The readme lists the devices that FlexLogger support (cDAQ chassis and modules, and FieldDAQ devices). DAQExpress also does not support cRIO.

Briana P.
Sr SW Engineering Manager | NI R&D
0 Kudos
Message 2 of 4

I think you misunderstand.  The cRIO is running an existing application, written in RT/FPGA.  I have network shared variables which are hosted on the cRIO containing the data acquired by that unit.  Writing a VI (or compiled executable) to access those NSVs is trivial.  The problem I have is finding a way to merge that data with other data that the customer is presently acquiring from other instruments.  I was hoping to incorporate the two data streams into a single TDMS file for logging, for example, as opposed to appending these channels together in post-processing.  Whatever the solution, it needs to be with tools that they are either familiar with or which will suit their purpose without a huge learning curve. I think they're using SignalExpress on their lab floor, and I was hoping it would be a simple matter of reading from the NSVs into additional acquisition channels in their SignalExpress setup, but it doesn't look like it's going to be that simple.  They are not going to develop LabVIEW capability, and I'm not going to create custom tools for every acquisition task they want to do.  Independent logging may be the best way forward.

Message 3 of 4

Sorry about the confusion on this thread.


FlexLogger is an appropriate tool for your application. The workflow you are describing of having FlexLogger integrate with an existing control system and read additional measurements is one that NI is prioritizing very highly in FlexLogger.


Today you can solve this by building a simple LabVIEW application to serve as a bridge between Network Shared Variables and Skyline Tags, which FlexLogger can read and write. This would be relatively simple to set up, due to the ease of use for both shared variables and Skyline Tags in LabVIEW.


We are also working on more native and integrated extensibility solutions to better support this workflow in the near future that would allow you to directly access other data sources in FlexLogger without a separate LabVIEW application.

Jarrod S.
National Instruments
Message 4 of 4