Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Will NI-VISA work with Scientific Linux 5.0 on a 64 bit machine?

I installed NI-VISA 5.0, apparently without errors using the install script.  However, when I run VISA Configuration, the instrument I've connected to via USB doesn't appear.  The README is a little ambiguous saying "...only 32-bit applications are supported on the x86-64 architecture."  I'm not sure what that means.

 

Thanks for the help.

0 Kudos
Message 1 of 6
(3,713 Views)

Hi there,

 

What we mean on the ReadMe file is that you must run VISA 5.0 on a 32 bit environment  So if you have a 64 bit architecture for your machine you can either install an 32 bit OS or you can just emulate a 32 bit application from a 64 bit OS.

Regards,
Efrain G.
National Instruments
Visit http://www.ni.com/gettingstarted/ for step-by-step help in setting up your system.
0 Kudos
Message 2 of 6
(3,688 Views)

So on 64bit Linux, I should be able to build my c++ application using /opt/vxipnp/linux/bin/libvisa.so using the -m32 option at compile?

0 Kudos
Message 3 of 6
(3,472 Views)

Hi Micho,

 

The answer is yes, you should be able to build your application using the -m32 option at compile. Using -m32 will allow you to compile in 32 bit mode.

Regards,
Efrain G.
National Instruments
Visit http://www.ni.com/gettingstarted/ for step-by-step help in setting up your system.
0 Kudos
Message 4 of 6
(3,460 Views)

Thanks for the reply. I am running into some trouble with a custom library on the Linux side. I am using redhat 5 and I have my Enet device (E5810A LAN-GPIB gateway)on eth1 but can't find it using ethernetconfig. I can open Visa Interactive Control and manually connect to my GPIB device using Resource "TCPIP0::192.168.0.103::gpib0,6::INSTR" and successfully get gpib queries.

 

But when I try to access my GPIB device using a c++ program I can't connect and get an error: "bfff0011: Insufficient GPIB card location information or the device or resource is not present in the system." This same program works fine under Windows. Is this due to not having my enet device defined using ethernetconfig? I dont' have root access so I need to coordinate system time to run any additional configuration.

 

Thanks.

0 Kudos
Message 5 of 6
(3,451 Views)

Okay, this is good ... I solved my own problem!

 

looking at the NISPY logs for both manually connecting to the E5810 and thru my c++ program I noticed the access mode is set differently.

 

Thru manually connecting, the NiVisa interactive control passed in a 4 (LOAD_VI_CONFIG) for the accessMode to viOpen. Thru the c++ program it was hardcoded to VI_NULL which passes a zero for accessMode. Even though the documentation states that LOAD_VI_CONFIG is only supported on Serial INSTR it did seem to fix my issue with TCPIP INSTR.

0 Kudos
Message 6 of 6
(3,445 Views)