AnsweredAssumed Answered

VRf - Timing Problems (?) with Bus I/O Monitor and ID

Question asked by VRFuser on Aug 18, 1997

From:    Heiko Degenhardt   (
To:      VRf   (
Subject: VRf - Timing Problems (?) with Bus I/O Monitor and ID
Date:    Mon Aug 18 18:24:16 MET DST 1997

Hi all!

I have written an instrument driver (in the HP Instrument Driver
Language) for a Keithly K2400 Source Measure Unit.
The driver seems to work correctly.

My problem is:
For testing the driver I use a VEE program, that contains a "Bus I/O
Monitor" object, to see what is sent over the HPIB.
With this object I seem to get timing problems. It looks, as if the
communication of the instrument and my driver gets corrupted some how
and characters are lost during data transfer.

As an example:
If I send the command ":SOUR:MODE?" (and the instrument is set up to
perform a "sweep" measurement), then the K2400 answers with "SWE".
But sometimes the BUS I/O MONITOR shows only "SE" or "SW" as the answer
of the instrument, so my driver dosn't understand it.

The same is with data transfer to the instrument.
For instance, if I send ":SOUR:MODE FIXED", then sometimes the Bus I/O
Monitor shows ":SOUR:MDE FIXED" (missing an "O") or ":SOUR:MODE FXED"
(missing an "I"), and the K2400 says "Data corrupted or stale".
Which characters are missed seems to be accidental (and in most cases the
data transfer works fine).

I think that the Monitor object is working correctly and shows what is
"really" sent over the Bus. But how (and why) are some charakters lost
while sending them over the Bus? Can the monitor object cause speed
problems between the instrument and the controller?

With direct I/O (or even if I don't use a Bus I/O Monitor object)
everything seems to work ok.

I don't know how to fix this problem. Should I "slow down" my driver (may
be with an delay after every transmission)?

Has someone else seen such problems?

My platform is:
Computer: Pentium 90
Memory: 32 MB
Software: Win95, HP VEE 3.21
HPIB card: HP 82341

Any help is welcome.
With kind regards.