The HP3456A is a late 1980's / early 1990's product. It still has respectable specifications as a meter, with 6 1/2 digit resolution. The instrument is old enough that the GPIB language is not SCPI, but R2D2. This tool will convert the R2D2 into human readable language. Sending commands and reading data are fairly straight forward, this meter does not support reading all of the configuration data.

Most of the GPIB commands listed in the programming section of the manual are supported. Commands can be supplied to the tool on the shell command line, from a script file, or from an internal shell-like mode. Arbitrary delays between commands can be set. Capturing multiple measurements to a file with a user supplied delay between measurements is also possible.

This tool reuses the architecture of the project #HP3455A Multimeter Command Line Control Tool  . Both tools share a lot of their source code. GPIB interface tasks are handled by the linux-gpib library that is available via Source Forge and other places. Linux-gpib supports many different interface boards and dongles. For questions about which interfaces are supported by linux-gpib, please see their documentation. Development was done under Fedora 41 and tested on several other Fedora versions. You must install the linux-gpib package before building this tool.

Both the linux-gpib library and the National Instruments NI488-2 libraries are compatible with each other with minor exceptions. It is possible to build this package to run under Windows using the NI488-2 library. Instructions to do so can be found in the AA_README file included.

In order to build this project on a Linux machine, you must already have the linux-gpib package installed. There is a .h file needed at compile time and a library that is needed at link time for this package to compile successfully. Create a working directory to build the tool in and copy the .tgz file into it. Un-tar the file and type make:

> mkdir HP3456A_ctl

> cd HP3456A_ctl

> cp wherever/HP3456A_ctl_xx_xx_xxxx.tgz  .

> tar -xzvf HP3456A_ctl_xx_xx_xxxx.tgz

> make

and the software should build with no errors or warning messages. Finally, copy or link the executable program to a convenient directory in your executable path like ~/bin. There should be no need to do any of these tasks as root unless you want to put the executable in a directory off the /usr tree.

The default address for the HP3456A (currently 23) is stored in the file HP3456A.h. If your instrument is not configured for that GPIB address, you can edit the file and re-compile or you can use the -d command line option to supply the correct address.

Typing ./HP3456A_ctl    with no parameters will give you a command listing:

Usage: HP3456A_ctl [-d dev_addr] CMD1 [arg1] [CMD2]...
 where CMDn [argn] is one of:

HELP                       [cmd_name]
READ_CMDFILE     cmdfilename
INTERACTIVE         [TOLERANT]
SLEEP_MS             NmilliSeconds

GET_MEAS            No Parameters

SET_MODE            DC_VOLTS/AC_VOLTS/AC_PLUS_DC_VOLTS/OHMS_2W/OHMS_4W/
                               DC_DC_RATIO/AC_DC_RATIO/OHMS_2W_OC/OHMS4W_OC/VDC/VAC/VACPDC
                               OHMS2/OHMS4/RDCDC/RACDC/VACPDC/OHMS2_OC/OHMS4_OC/TEST

SET_RANGE           0.1/1/10/100/1000/10000/100000/1000000/1K/10K/100K/1M/AUTO...

Read more »