LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Clearing Visa errors

Actually, it's with two other instruments so far. 
  • Agilent 53152A MW Freq Ctr
  • Boonton 4300 Pwr Meter

The error code is the same for both:  1073807339; (Hex 0xBFFF0015) Timeout expired before operation completed. 

It started with the Agilent, and seems to be moving around the other test equip.

The problem is intermittent, which will pose a huge problem since it is part of a test sequence at a remote site.  I won't be around to reset anything, so I have to understand why it is intermittently hanging up and perhaps put some kind of error check/fix in place. 

Thanks. 

 

0 Kudos
Message 11 of 13
(812 Views)

You probably should have started a new question instead of posting to an old thread about different instruments.

In any case, there are a large number of reasons for getting a timeout error with a GPIB instrument. A VISA Read (or GPIB Read) stops when the specified byte count is reached or when the EOI line is asserted. All 488.2 instruments will assert EOI. That is why you can ask for some large number of bytes. You don't have to know exactly how many bytes the instrument has in it's buffer. When you get a timeout, it's because the specified byte count was not read. It is likely that there are 0 bytes in the transmit buffer and with nothing to send, the instrument never asserts EOI either. Figuring out why there is nothing in the buffer is the challenge. Sometimes, it's because the instrument has failed to trigger and take a measurement. For example, the instrument is set to trigger on a certain voltage level but the signal is not high enough. Sometimes, the instrument is in the process of taking a measurement and is simply not ready when you request it. Sometimes, the instrument did not receive the command to perform a measurement. This can happen when an illegal command or a command with a syntax error is issued. Sometimes, you can have a bad GPIB interface on one of the instruments.

I can't find a driver for the counter on NI's site but I hope you are using the driver for the Boonton. Did you write a driver for the counter or are you using the Instrument I/O Assistant? If you wrote your own, you can make use of the SRQ registers in the instrument. After you request a measurement, you poll SRQ. When SRQ is asserted, then you can do the read. You might also want to turn on NI-Spy from MAX. Attaching the results from when a timeout happens an posting your code would help as well.

0 Kudos
Message 12 of 13
(807 Views)
Dennis,
 
        Thanks for your advice.  There is some good stuff in there!  I had the byte count read waaay higher than necessary (4096) to avoid overflow.  Actually 32 is probably way higher than necessary.  I think the 0 bytes and low signal ideas are worth looking into.  I will try using the SRQ to function to induce enough time to read the measurement, just in case.  I am writing all the driver vi's.  None are premade.  Boonton has a set dated back to LabVIEW 3.1, but they are useless to me anyway.   
 
        The reason I did not start a new post thread was that I wanted the original author to reply regarding his recurring problem and let me know if the problem ever came back.  A two year testing period would have been great feedback since I am trying to solve an intermittent problem that might work fine during the acceptance test, but then show back up on the customer site six months from now while they're testing the satellite.  But the author did not reply, perhaps he's out of the loop or area.   
 
        Thanks,
 
                 Mike
0 Kudos
Message 13 of 13
(783 Views)