Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Installing NI-VISA and NI-488.2 on Mac

Solved!
Go to solution

I have a new Mac on which I'm trying to install the NI instrumentation drivers (both VISA and GPIB), and things aren't working so some advice would be appreciated. I downloaded the most recent versions of both (14.0 for VISA and 3.0.1 for GPIB), ran the installers (restarting between the two installs), and then tried to run the VISA configuration utility and the GPIB configuration utility to check that the drivers were ok (at this point, no measurement hardware is attached to the machine; ultimately, the hardware will be a USB->GPIB adapter and a USB->RS-232 adapter). 

 

Both configuration utilities crashed on running. The GPIB config got as far as putting up its window and then crashed a couple of seconds later; NI-VISA never even managed to finish displaying its splash screen. 

 

Looking at the crash reports, the crashes appear to be in the low-level NI-PAL driver. The report says

/Library/Frameworks/nipalu.framework/Versions/1/nipalu

abort() called

 

Poking around the list of files mentioned in the NI-PAL uninstall guide, it appears that the kernel extension nipalk.kekt wasn't actually installed properly (it is missing from both /Library/Extensions and /System/Library/Extensions, and according to the uninstall file, it should be present in both. I tried copying the kext over from a machine which does have a functioning VISA/GPIB install, but OSX refused to load it as it wasn't actually installed.

 

My tentative plan right now is to follow the uninstall instructions for VISA, GPIB, and NI-PAL and then try rerunning the installers, but I'm afraid that I'll end up in the same place. Is there some special trick or something needed to get these drivers to install properly (i.e. should things be installed in a specific order, should I try installing VISA 5.4 and then do an upgrade install to 14, try sacrificing a goat, stuff like that)?

 

Hardware is a Mac Mini running OSX 10.9.5.

 

Thanks for any help.

0 Kudos
Message 1 of 21
(13,158 Views)

Hi dmsilev,

 

Go ahead and try to do a re-install. It could be that the first installation was corrupted or ran into another low-level issue. It's worth noting that the 3.0.1 GPIB drivers do not support OS X 10.9.5. That could potentially cause some of the issues. I would try to just install NI VISA first and see if that works before moving on to the GPIB drivers. Unfortunately, goat sacrifices became defunct after Apple switched away from naming their releases after Big Cats. 

0 Kudos
Message 2 of 21
(13,124 Views)

Hi Kyle,

 

Thanks for the advice. I cleaned out the old installs and reinstalled VISA 14.0, and checked that VISA was functional. I then went to install GPIB 3.0.1, after which VISA stopped working; it appears that the GPIB installer overwrites some of the low-level driver files with older versions, which VISA was unsurprisingly unhappy about. Installing VISA 14.0 a second time (without uninstalling anything) cleared that up, and the system can now talk to GPIB devices.

 

And yes, I know that 10.9.x isn't supported by the GPIB drivers, but unfortunately the last update of those drivers was 3 years ago and I didn't really have much choice in the matter. At least I bought the machine two weeks ago rather than today, or I'd be asking about 10.10.x compatibility...

0 Kudos
Message 3 of 21
(13,118 Views)
Solution
Accepted by dmsilev

And just to follow up with a bit of additional detail, I went through the same procedure on a second Mac that was fresh out of the box. When the installer for NI-488 was run, one of the elements it tried to install was an 'Update' to the NI Core Driver Services subsystem. This was despite the fact that the VISA install had put in place a much newer version of the core drivers. 

 

So, it seems that the issue is that the NI-488 installer is not doing a proper version check before overwriting the driver subsystem. It obviously checked to see that the driver was installed, since the action was listed as 'update' rather than 'install'.  At least in principle, running the NI-488 installer first and then the VISA installer should work, but for whatever reason the one time I tried that in my testing, it didn't work. Perhaps I hadn't done a complete job of cleaning up from one of the other failed attempts. Just for the record, the sequence that appears to work is 

 

(0) Remove all traces of any prior failed install. Follow the steps in the uninstall.txt files for NI-488.2, NI-VISA, and NI-PAL. The uninstall guide for the latter is located in /Library/Application Support/National Instruments/NI-PAL

(1) Run a standard install of NI-VISA 14.0. Restart the machine. Check that VISA works (just run the config utility)

(2) Run a standard install of NI-488.2 3.0.1. Restart the machine. Both VISA and GPIB crash when accessed

(2a) (optional) Curse at length

(3) Run a standard install of NI-VISA 14.0. Restart the machine. Both VISA and GPIB should now be functional.

 

Tested on a pair of 'Late 2012' Mac Minis running OSX 10.9.4. One machine had Labview 2014 installed before installing any instrumentation drivers, the other did not have LabView installed.

0 Kudos
Message 4 of 21
(13,105 Views)

Hi,

 

I am facing the same situation here, but for OS X 10.10, as I just updated to this version from 10.9.5.

 

I found out that, NI-Visa configuration crashed because NiViPcik Kext is not loaded, and when NI-Visa configuration tying to load it it does not have the privilige to do so. If you run it in command line with sudo then it can be run without problem.

 

The question here is, I have ni488k.kext, ni488lock, NiViPcik and nipalk in System/Library/Extension foulder, but only nipalk is loaded after booting. Every time I have to use a function related to Visa or GPIB, I have to load other library manually or run as root. For example, if I want to use pyvisa, when i run "import visa", it will tell me I don't have priviledge to load the kext. So I have to load NiViPcik firstly from commandline, or I have to start python with sudo.

 

How could I make all these kexts to be loaded automatically after booting?

0 Kudos
Message 5 of 21
(13,045 Views)

I'm also stuck on 10.10. Running troubleshooting wizard comes back with "ni_488.2 software is not installed correctly". Restart and reinstall is the suggested remedy but obivously that doesn't fix the issue. I guess it's not surprising since the driver is 4 years overdue for updating/64 bit compatibility.

0 Kudos
Message 6 of 21
(13,021 Views)

It looks like nipalk kext is not working properly on 10.10. But, I tried to add all ni kexts, i.e. NiViPciK, ni488k and ni488lock to launchd, and they will be started automatically after booting. Now my old programs could use the service without problem.

0 Kudos
Message 7 of 21
(13,016 Views)

The downgrade issue is apparently a known bug: http://digital.ni.com/public.nsf/allkb/5B6800D05F9B0DA686257CF500691048

 

"Solution: 
This issue has been addressed starting in the following versions:

  • LabVIEW 2014
  • NI-VISA 14.0
  • DAQmx Base 14.0

Note: NI-488.2 has not yet released a fix for this issue. We will update the version of NI-488.2 containing the fix as soon as it is released. 


Upgrading all National Instruments software to the versions listed above should resolve the issue. If you are unable to do so, please contact National Instruments Support to determine what component was unexpectedly downgraded. 

If you suspect that NI-PAL has been downgraded, then reinstalling the driver that provided the most recent version of NI-PAL should resolve the issue. If you do not know which driver to reinstall, please contact National Instruments Support for assistance."

 

Of course, DAQmx Base 14.0 doesn't appear to publically exist either...

0 Kudos
Message 8 of 21
(13,006 Views)

Thank you for the input, however this solution does not work on OS 10.10 Yosemite

I intalled VISA 14 fristly and it ran with no problem, then installed 488.2 after which VISA crashed and indicated the nipal version is not correctly as you pointed out. Then I reintalled VISA 14, but VISA crashed again with error information:

Application Specific Information:
/Library/Frameworks/NI4882.framework/NI4882
abort() called

 

And whenever I ran the troubleshooting wizard of GPIB (between intall VISA, 488.2, reintall VISA), the program always says 488.2 is not correctly installed. I saw someone mentioned the sudo approach above, could you specify what I should do...? Thank you guys.

0 Kudos
Message 9 of 21
(12,987 Views)

HI,

 

You should cd into the application folder your NI-Visa program, something like this:

cd /Applications/National\ Instruments/NI-VISA/NI-VISA\ Configuration.app/Contents/MacOS/

sudo ./NI-VISA\ Configuration

 

I am guessing the problem here is, every time you launch a NI-Visa/488.2 related program, it will try to call ni-palk to launch the related kernel extensions, like NiViPcik.kext. But, as ni-palk is not working properly on 10.10, it will fail to do so. A program in user space has not enough privilege to launch the kext, causing the prgram to crash.

 

But, it is my guessing though 🙂

0 Kudos
Message 10 of 21
(12,957 Views)