@stevem181 wrote:
I recently got burned on an update from 2018 to 2021. Should be fine right? It meets the normal requirements.
However, after installing LabVIEW 2021, my 2018 RT projects containing NI-9144 EtherCat chassis are broken.
To clarify, I'm opening LabVIEW 2018 to edit an RT project. Worked before installing 2021 - fails after.
Like Kyle97330 (good advice in his post!) I have been using multiple versions since 2010 so this was unexpected.
The root cause is that the NI-9144 was deprecated after LabVIEW 2018. But IMHO that does not justify breaking 2018.
Not many people use EtherCat, but there are some cRIOs that were also deprecated during this time period.
And possibly other hardware?
You can check your hardware for software support here:
Software Support for CompactRIO, CompactDAQ, Single-Board RIO, R Series, and EtherCAT
The basic support for EtherCAT for that chassis is part of the CompactRIO driver. And since there is only one driver version that can be installed at the same time, you basically removed support for your chassis. It is not enough to check LabVIEW compatibility only for such features but you also need to check driver support. Same about support for Pharlap ETS and VxWorks based cRIOs. This is part of the CompactRIO driver and if you upgrade beyond CompactRIO 17.0 (for the 900x chassis) or 18.5 (for the 901x chassis), even your LabVIEW 2015 won't be able to see those chassis anymore since there is no support for them anymore in the installed CompactRIO driver.
As long as you only work with LabVIEW, things are generally quite well, eventhough you can get the occasional hiccup during upgrades too. If you work with LabVIEW FPGA and Realtime, you need to be a lot more diligent in how far you upgrade. Generally I do use Virtual Machines for this. Installing multiple LabVIEW versions, even in parallel on the same system, is seldom the problem but installing hardware support for realtime chassis is a very delicate matter and seldom will work with different versions out of the box. As long as you isolate one specific version per Virtual Machine it's very manageable but anything else is begging for painful trouble sooner or later.