Here’s the page we think you wanted. See search results instead:


Contact an Expert

Problems Using RS-232 on Keysight Instruments with Laptop PCs running any Microsoft OS

Symptoms: Timeouts, corrupt data, missing data, error messages while uploading data

Cause: The RS-232 I/O chip (UART) used on PCs has only a 16-byte buffer. Without real-time flow control, it is possible for buffer overruns to occur, causing a loss of data. If the missing character happens to be a line feed, timeouts can result from the software never seeing the end-of-line terminator. Other missing characters can cause returned data to be wrong.

The Microsoft serial driver does not implement true hardware flow control. It implements all flow control in the software driver. This makes it susceptible to PCI-bus lockouts, higher priority interrupts and interrupt disables. The reason for the software-based flow control is historical, due to the very unreliable early hardware designs: there were a myriad of clones of the 16550 UART, most of them defective. The only solution for Microsoft was to develop a software driver that used as few features as possible, and hardware flow control was therefore done in the driver. Microsoft is unable to change the driver at this point to fix this problem.

The problem has been observed only on laptop PCs, perhaps due to software overhead associated with power management and/or PCMCIA adapters, but theoretically it could occur on desktop PCs too. Faster processors and slower RS-232 baud rates do not help enough to be a satisfactory workaround.

Resolution: Do not use RS-232 for mission critical applications. Instead (1) Consider using 34972A with USB and LAN connectivity built in OR (2) take advantage of the 34970A´s GPIB port.

  1. The 82357A USB / GPIB converter can be connected to a USB port on the portable PC and to the GPIB port on the 34970A. This option will work with laptops that have USB, and Windows 2000, 98 SE, or XP. Windows 3.1, 95 and NT do not support USB.
  2. Use an E5810A LAN to GPIB gateway. The gateway can be connected to the GPIB port on the 34970A then attached to the PC´s LAN (or directly to the PC´s LAN port). The LAN gateway is compatible with Windows® 98 (SE)/Me/NT/2000/XP.
  3. Install a PCMCIA GPIB card. Several vendors supply PCMCIA GPIB cards and typically support Windows® 98 (SE)/Me/NT/2000/XP.
  4. Switch to a desktop PC using a 82350B GPIB card or the 82357A USB-GPIB converter. The 82350A is compatible with Windows® 98 /Me/NT/2000/XP. The RS-232 problem has not been observed on a desktop PC - they use the same hardware and theoretically could have the same problem.

Note: Any of these choices will necessitate changes in your control program. Command strings remain the same, but the communications setups will need to be changed. The instrument mode can be changed programmatically using the SCPI command "SYSTem:INTerface {GPIB | RS232}" or via the front panel. In addition, any code used to initialize RS-232 parameters such as baud rate, parity, and flow control can be removed from the program. Code used to open the RS-232 port needs to be changed such that the GPIB interface is opened instead. This is done from Visual Basic via the commands:

Dim A_34970A As AgtIOServer
Dim iomgr As KeysightIOUtilsLib.AgtIOManager
Set iomgr = New AgtIOManager
Set A_34970A = io_mgr.ConnectToInstrument ("GPIB::9").

If the GPIB address must be changed to something other than the default (9), this can only be done from the front panel. Consult the manual for more information.