Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Regularly seeing EABO error

I have the following environment:

 

NI-488DDK driver version 1.1

PCI-GPIB (PMC) board type

VxWorks 6.2 on a Motorola MVMVE6100 PPC processor

 

I'm trying to validate the GPIB driver configuration using the ibchat utility included in the software. I'm using two PCI-GPIB boards on two different MVME6100 processors. Processor 1 runs ibchat started as CIC. Processor 2 runs ibchat started as a slave. Processor 2 always times out first with EABO (Processor 1 times out because 2 timed out earlier).

 

I tried lengthennig the timeout to 100s using ibtmo. It made a difference, in that ibchat runs longer on both processors, but Processor 2 still times out.

 

I tried using a fixed amount of time between calls. This had little affect.

 

I also tried setting GPIB_DEBUG in ib.c. This enables pretty verbose debug diagnostics. In this configuration, ibchat seems to be happy to run forever, although much slower because of the IO.

 

It appears as if Processor 2 is running faster than Processor 1. At least the debug statements seem to indicate that becuase I can see Processor 2 is in a loop waiting, while Processor 1 is doing other stuff. As soon as Processor 1 starts writing, Processor 2 exits the loop and continues.

 

Any ideas what I may have missed in the configuration? Any ideas how I can fix the timing problem?

 

Mike

0 Kudos
Message 1 of 4
(2,855 Views)

Hi Mike,

 

What sort of functions are you using in ibchat?  Depending on the function used, there are different reasons that the EABO error could be thrown.  In looking at the manual for NI-488DDK, which I have linked below, it looks like this could be thrown with the ibcmd, ibrd, and ibwrt functions.  Also, depending on the amount of data your are trying to communicate, you would want to make sure that you have a delay between functions to ensure that the data is all communicated before the next function is called.  I hope this helps, Mike!

 

NI-488DDK Software Reference Manual

Taylor G.
Product Support Engineer
National Instruments
www.ni.com/support
0 Kudos
Message 2 of 4
(2,844 Views)

Hi Taylor,

 

The ibchat program is using ibcmd, ibrd, and ibwrt. I see timeouts for each of those commands on different runs. I tried lengthening the time between commands. The program ran longer but one of the commands eventually timed out.

 

I think I may have found the source of the timeout. I wrote a small version of the ibchat utility. It uses ibtmo() to set the timeout to 100 seconds. I purposefully let a command timeout. I noticed the timeouts really happened at around 50 seconds. So, it appears the timeouts are lasting about half of the expected time. Have you ever encoutered this before?

 

Mike

0 Kudos
Message 3 of 4
(2,836 Views)

Hi usrlocal,

 

Which command eventually timed out?  Also, did the others execute without the EABO error?  Did you see this error at all after adding in the delays between commands?

 

Also, how long are your GPIB cables?  You want to make sure they are an acceptable length for communication.  I have attached a KnowledgeBase article below that explains the proper lengths for cables.  Thanks!

 

GPIB Cabling Requirements and Limitations

Taylor G.
Product Support Engineer
National Instruments
www.ni.com/support
0 Kudos
Message 4 of 4
(2,821 Views)