07-13-2010 12:55 PM
I have a VXI-11 instrument and I'm able to communicate with it using NI-VISA. I can do viRead, viWrite, viAssetTrigger, viReadSTB and viClear (RPC functions) but I get 0xBFFF0067 (VI_ERROR_NSUP_OPER) when I try to do viGPIBControlREN using VI_GPIB_REN_DEASSERT_GTL or VI_GPIB_REN_ASSERT_ADDRESS_LLO. I want to call into my instrument's "device_remote" and "device local" RPC functions but viGPIBControlREN doesn't even attempt to communicate with my instrument. How do I do this?
Solved! Go to Solution.
07-14-2010 03:43 PM
Hi ppDev-
There are a few articles that discuss using a VXI-11 instrument with NI-VISA. I don't think that GPIB commands are going to work. To call the device remote and device local functions, you are going to need to get some more info from the device manufacturer. They specify the command set for the device. Have a look at these KnowledgeBase articles:
Using Third-Party GPIB Ethernet Devices with Measurement & Automation Explorer
Addressing VXI Devices Using the GPIB/VXI-C
I hope this helps. Best of luck with your application!
07-20-2010 02:19 AM - edited 07-20-2010 02:22 AM
According to VISA specification 4.2 (vpp43.doc), viGPIBControlREN() function is only defined for GPIB and USBTMC. Although the "device_remote" and "device_local" RPCs are defined in VXI-11 spec, VISA specification does not define anything on VXI-11 resources (TCPIP::xxx::INSTR) concerning to these RPCs. So I believe there is no way to invoke these RPCs from VISA. This is also true for VISA COM API, where ITcpipInstr interface lacks ControlREN() method where as IUsb and IGpib have it.
Other way supporting remote/local is that the instrument shall equip SYSTem:LOCal, SYSTem:REMote, and SYSTem:RWLock command on SCPI language.