LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Modify LabVIEW 2019 program with DAQmx installed on the same computer possible issues.

Solved!
Go to solution

I was originally using LabVIEW 2019 with DAQmx 19 for programming.  I recently had to update to LabVIEW 2023Q3 and DAQmx 2023Q3 and have been using it for new programs and updating older programs.  So, I have LV2019 and LV2023Q3 with DAQmx 2023Q3 installed on the same Win 10 computer.

 

My question is if I open LabVIEW 2019 and make modifications to a 2019 program will it still run on a different computer running LabVIEW 2019?  I do not know if when I save the LV 2019 program if it will modify the existing DAQmx VI’s and update them to DAQmx 2023Q3 and cause issues on a different LV 2019 computer since the installed DAQmx 2023Q3 is not compatible with LV 2019.  The plan is to update everything to LV 2023 so everything will run on Windows 11, but I still have a few test machines running Win 10 and LV 2019.

 

The LV 2019 programs do not get modified very often, so I figured I would ask about this before I have to build a LV2019 specific computer.

0 Kudos
Message 1 of 9
(486 Views)

I am surprised that your DAQmx VI for LabVIEW 2019 was not removed when you installed NI-DAQmx 2023. My recommendation would be to do any modifications with LabVIEW 2023 since it uses a compatible version of the driver. You can always save it as the previous version to use it with LabVIEW 2019.

-------------------------------------------------------
Control Lead | Intelline Inc
Message 2 of 9
(477 Views)

@ZYOng wrote:

I am surprised that your DAQmx VI for LabVIEW 2019 was not removed when you installed NI-DAQmx 2023. My recommendation would be to do any modifications with LabVIEW 2023 since it uses a compatible version of the driver. You can always save it as the previous version to use it with LabVIEW 2019.


I have opened a few LV 2019 programs and the DAQmx VI's still show up instead of missing, but I have not saved anything thinking they might be written over.  If I open the 2019 files in 2023 modify and then save for a previous version, won't that save the DAQmx VI's for 2023 that is not compatible with LV 2019?

 

So you are saying if I write a program in LV 2023 with DAQmx 2023 and save the program for LV2019 it is going to run on a computer that is running LV 2019 and DAQmx 19?  I thought DAQmx 2023 was not backwards compatible with any other versions of LabVIEW and only worked with LV 2023.

 

_Bryan_0-1709853563899.png

 

0 Kudos
Message 3 of 9
(458 Views)

NI has done a pretty good job of maintaining backward compatibility with LabVIEW.  If you have LabVIEW 2019 installed, any LabVIEW Project that you develop with LabVIEW 2019 will run on any other computer that runs LabVIEW 2019.  If you have another computer that runs only LabVIEW 2023, you should be able to run your LabVIEW 2019 Project on the 2023 computer, assuming you have the appropriate 2023 Drivers and additional packages installed.  The "catch" is that on the LabVIEW 2023 machine, if you save the LabVIEW 2019 code, it will be internally changed so that it will no longer be able to be opened on the LabVIEW 2019 machine.

 

If, by "accident", you open a LabVIEW 2019 routine in LabVIEW 2023 and save it (thereby "converting" it to LabVIEW 2023), and realize "Oops, I've just ruined my LabVIEW 2019-compatible VI", all is not lost -- you can go to the File menu and chose "Save for Previous Version", choosing LabVIEW 2019.  If this is a large routine that uses many LabVIEW components (sub-VIs, TypeDefs, packages, etc.), it can get a little messy, as all those components also get "saved for Previous".

 

Bob Schor

Message 4 of 9
(415 Views)

@Bob_Schor wrote:

NI has done a pretty good job of maintaining backward compatibility with LabVIEW.  If you have LabVIEW 2019 installed, any LabVIEW Project that you develop with LabVIEW 2019 will run on any other computer that runs LabVIEW 2019.  If you have another computer that runs only LabVIEW 2023, you should be able to run your LabVIEW 2019 Project on the 2023 computer, assuming you have the appropriate 2023 Drivers and additional packages installed.  The "catch" is that on the LabVIEW 2023 machine, if you save the LabVIEW 2019 code, it will be internally changed so that it will no longer be able to be opened on the LabVIEW 2019 machine.

 

If, by "accident", you open a LabVIEW 2019 routine in LabVIEW 2023 and save it (thereby "converting" it to LabVIEW 2023), and realize "Oops, I've just ruined my LabVIEW 2019-compatible VI", all is not lost -- you can go to the File menu and chose "Save for Previous Version", choosing LabVIEW 2019.  If this is a large routine that uses many LabVIEW components (sub-VIs, TypeDefs, packages, etc.), it can get a little messy, as all those components also get "saved for Previous".

 

Bob Schor


I understand that having multiple versions of LabVIEW on one computer they all stay independent of each other with no issues, I have done this part before.  But they all used the SAME DAQmx version, so I did not have to worry about this.  And when updating the 2019 programs to 2023 I just do like you said and open and then save in LV 2023 and it runs with DAQmx 2023.

 

So as long as I use LV2019 to open and modify the program (but not modify any of the DAQmx VI's) the DAQmx 19 VI's should not be updated or change to the currently installed DAQmx 2023 VI's and still work on a computer running DAQmx 19?

 

My next question is if I wrote a program in LV 2023 with DAQmx 2023 and then saved it as LV 2019,  I could run that program on a computer with LV 2019 and DAQmx 19 the IO would work with no issue?

 

Bryan

0 Kudos
Message 5 of 9
(387 Views)

Thanks for the help, I guess I was just overthinking it.  I got a LV 2019 computer running locally and tried a few tests.

 

I opened the Analog Input - Filter.vi in LV 2023 and ran it with a USB-6009 with no issues and saved it as LV 2019.

I ran the saved as LV 2019 version on the computer that has LV 2019 and LV 2023 with no issues.

I then copied the LV 2019 version to a computer that only has LV 2019 and DAQmx 19 and it ran with no issues as well with the USB-6009.

 

I am glad it works.  But why does NI say DAQmx 2023 is not compatible with LV2019 when in a test case of 1 it works?  Or is it a case of LV2019 has not been certified as compatible, with DAQmx 2023 but work for the most part?

 

Or do the DAQmx vi's adjust internally with whatever DAQmx version is on the computer?

 

I will try to keep everything separate when possible just in case.  I do not want to run into any strange things with DAQmx because I am going between versions.  I guess I will have to try and find out more about DAQmx and versions.....

 

Thanks again. 

 

0 Kudos
Message 6 of 9
(369 Views)

I vaguely remember some mumbling that LabVIEW would be backward-compatible for 5 years, and DAQmx would be backward-compatible for 4 years.  Fortunately, I'm working with LabVIEW 2019 and 2021, which are separated by only 2 years, so there should be no "incompatibility" issues.

 

Once you "jump" the 4 (or 5) year barrier, you may be advised to build a "Clean machine" for the "new" (or for the "old") LabVIEW version(s).  It certainly appears (from your careful testing and posting, thank you for that!) this may be the case for you.

 

Bob Schor

Message 7 of 9
(362 Views)
Solution
Accepted by topic author _Bryan

Normally when you install drivers on a computer it used to install according support VIs in the same LabVIEW version and three prior versions if it could find such earlier LabVIEW installations. All older driver support from older LabVIEW installations it could find were simply removed!

 

Around 2022/2023 they changed that to install the according support VIs not in the LabVIEW folder but in a shared location. Earlier versions of LabVIEW than 2022Q3 I think, still need their version specific support installed in the LabVIEW folder. It looks like they removed the part that removes older VI libraries than what the installer supported. Considering that DAQms is a rather stable API that hasn’t seen many backwards incompatible changes over they ears, it was long overdue to remove that overzealous removal of old VI support libraries from unsupported LabVIEW installations.

 

Your 2019 DAQmx VIs reside in .<LabVIEW>\vi.lib your 2023 DAQmx VIs somewhere in the Shared folder inside the NI folder. They are both separate so loading a 2019 VI in LabVIEW 2023 will reference different DAQmx VIs than your 2019 LabVIEW. The 2019 DAQmx VIs won’t  be overwritten as long as you don’t bork your instillation somehow.

Rolf Kalbermatter
My Blog
Message 8 of 9
(342 Views)

@Bob_Schor wrote:

I vaguely remember some mumbling that LabVIEW would be backward-compatible for 5 years, and DAQmx would be backward-compatible for 4 years.  Fortunately, I'm working with LabVIEW 2019 and 2021, which are separated by only 2 years, so there should be no "incompatibility" issues.

 

Once you "jump" the 4 (or 5) year barrier, you may be advised to build a "Clean machine" for the "new" (or for the "old") LabVIEW version(s).  It certainly appears (from your careful testing and posting, thank you for that!) this may be the case for you.

 

Bob Schor


I know that is usually the case, but looking at the latest compatibility chart I figured that had changed.

 

_Bryan_0-1710167470083.png

 

0 Kudos
Message 9 of 9
(265 Views)