Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

missing something obvious

I am using nigpib version 6 with RedHat Linux 6.2. I am having problems talking to my instruments. Two devices a Keithley Multimeter 2001 and an IO TECH dac488hr refuse to communicate. Their remote lights go on but I get an EBUS error when doing ibwrt to either. Two other devices an SRS850 lockin amplifier, and an ESI model 73 precision transformer respond to commands well enough but I get an EAB0 error returned. I recognize the problems have to do with timeout. I have changed ibtmo to various settings but continue to get errors. I have tried to be careful setting the EOS and EOI attributes for each device but clearly I am missing something. Any suggestions?

In the past I used the LLP gpib driver and don't recall gett
ing these kinds of problems. I was going to port over my old code to talk with the instruments but I see that there is some rather sigificant differences in the way you do business. For one under LLP Clausi set up a /dev/gpib0/master device through which commands were passed. In addition he had a /etc/gpib.conf file and loaded his module via insmod in rc.d. You, on the other hand, set up /dev/gpib, /dev/gpib0, /dev/gpib1/, /dev/gpib2, /dev/gpib3, /dev/gpibdebug and /dev/dev0 /dev/dev1 etc (where dev# is a device configured with ibconf). What are the relationships between your strategies? What must I do to port my old software to my newer linux OS and use your drivers rather than those from LLP?

I could really use some insights. Any comments (sans flaming 😉 would be welcome.
0 Kudos
Message 1 of 3
(3,879 Views)
The EBUS error typically means something is wrong with the cabling. Here's a few things to check:
-Be sure the instrument is powered on and online.
-Be sure the cable is connected tight and screwed on.
-Try switching cables. Shorter cables are preferred.
-Try communicating to one instrument at a time.
-See page 730 of our 2001 catalog for the specs of GPIB cable length.

Randy Solomonson
Applications Engineer
National Instruments
0 Kudos
Message 2 of 3
(3,879 Views)
I tried this but with no success. I called the help line and spoke with Ben P. and Armando V. they walked me through the ibic and ibconf tools, again, with no success.

I spoke with the vendors of the instruments which are giving the EBUS error. They walked me through the setups (especially wrt to EOS and EOI). They were confused as to why the instruments failed to respond.

With my last call to NI (SR#345883) the engineers suggested that I respond to this email and ask for further support. They requested/suggested I supply the following 3 pieces of information:

1) revision of boards and part nos.

2 ATGPIB-TNT boards vintage 1993
assy 181830-01 REV. D

1 ATGPIB-TNT PNP vintage 1995
assy 182885E-01

The implication was that NI might be able to provide an upgrade to the firmware if that was at fault.

2) Capture of errors in ibic
basically following your webpage for ibic works upto communicating with devices. Sample output follows:

: ibfind gpib0
id = 0

gpib0: ibpad 0
[0100] ( cmpl )
previous value: 0

gpib0: ibfind keithley
id = 1002

keithley: ibwrt "*IDN?\xA"
[8100] ( err cmpl )
<< the="" keithley="" goes="" into="" rem="" lstn="" mode="">>
error: EBUS
count: 0

keithley: ibrd 100
[8100] ( err cmpl )
error: EBUS
count: 0

<>

keithley: ibfind ratio
id = 1003

ratio: ibwrt "Ratio 0.1234567\xA"
[c100] ( err timo cmpl )
error: EAB0
count: 16

<< the="" instrument="" responds="" by="" correctly="" setting="">
the ratio, as verified by the display >>

ratio: ibrd 100
[e100] (err timo end cmpl )
error: EAB0
count: 17
52 61 74 69 6f 20 30 2e Ratio 0.
31 32 33 34 35 36 37 30 12345670
0a .

using the SRS850 Lockin Amplifier has an added advantage. It will show the input and output queues on the screen. When I command this instrument I can watch as it receives its instructions. The commands are going through correctly (NOTE: this device also gives an EAB0 error).

I have tried different cables, different machines, different DMA settings, different interrupts, different instruments, different ibtmo values, different cards, single devices on short cables, but keep getting errors.

I have used the ibic webpage (setting ibsre 1, etc) and these work fine but the devices still complain.

3) Give the version of Linux I am using...

We are running Redhat 6.2, kernel version 2.2. We have older versions of the Linux OS which are running the LLP gpib driver for the SAME devices and it works fine. I would rather not go back to older versions if possible, besides since NI has done the Linux gpib driver, it appears that LLP has dropped support. In particular, I cannot get their drivers to compile in Redhat 6.2 and get no response from my emails. I would be willing to move to newer versions of Linux if that would solve the problem.

I have confirmed the following:

The ibtsta program says the driver is installed correctly (run without the gpib cable attached.)

Interrupts, dma, iports are unique and without contention.

The gpib card responds to commands (eg using ibic.)

Some devices respond in a fashion, others fail. But all seem to receive signals from the computer.

The instruments and cables attached to the system are sound.

The gpib card, cables, and devices respond correctly from a dual boot machine running WinNT and Linux (i.e. no movement of cables, devices, or cards). On the WinNT side the recently downloaded NI drivers work and I can communicate (with the Keithley 2001) flawlessly.

I am must now ask whether the driver is at fault. I understand the drivers are beta, but these appear to be the only workable drivers out there. ANY HELP WOULD BE APPRECIATED!
0 Kudos
Message 3 of 3
(3,879 Views)