GPIB server

Specifications and requirements Installation instructions
The GPIB server supplied by DTU Energy is intended to handle all communications between user applications and actual GPIB intraface cards and connected devices.
The GPIB server handles request through a tcp-IP socket interface making communication between applications and hardware simple.
Two versions of the gpib server exists. Both are implemented in C and one is to be used if the GPIB driver supplied by National Instruments is to be used. The other version is to be used in combination with the linux_gpib open source GPIB driver distrbuted by
A third option is to use serial communication and use the gpib_serial_emulator_server. In this case no GPIB-card or driver is nescesarry as that server maps gpib comands to serial interfaces. Note however, that this mode of operation requires the program supplied by RFCcontrol or Elchemea Data Aquisition in order to function properly!
Below is a list of requirements (for all three versions)
  • A Linux type operating system. Only tested with CentOS-6 and later, but will likely work on other Linux type system as well.
  • The Perl (R) interpreter version 5.8.8 or later.
  • The Perl IO::Interface::Simple module.
  • Gnu 'make' Other 'make' packages than the one from Gnu may also work, but has not been tested.
  • A GPIB interface card (not required for gpib_serial_emulator_server)
  1. If using the GPIB driver supplied by National instruments, download gpib_socket-2.13.tgz. Please note that this version of the gpibserver is now deprecated and you should consider using the linux_gpib_socket server instead.
    1. If running CentOS 7, download this script and run it to install needed liberaies not automatically included in a default CentOS 7 installation
    2. Install the National Instruments GPIB driver (version ni4882-2.90f0 or later), refer to National Instruments for instructions, may need a system reboot
    3. as root run 'updatedb'
    4. untar gpib_socket_*.tgz and cd into the created gpib_socket_server directory
    5. run ./ followed by make
    6. if make runs without errors, as root run 'make install'
  2. If using the linux_gpib driver from, download linux_gpib_socket-1.3.1.tgz. (earlier versions can be found here)
    1. install the linux_gpib driver and verify that the GPIB card can be accessed (you may need to run ldconfig after driver installation!)
    2. untar linux_gpib_socket_*.tgz and cd into the created linux_gpib_socket_server directory
    3. run make
    4. if make runs without errors, as root run 'make install'
    5. In some cases it may be nescesarry to run the /usr/local/sbin/gpib_config program after each reboot before the linux_gpib driver loads correctly. If so, simply add the folowing line to /usr/local/bin/start_servers before the line starting the gpibserver:
  3. If RS232 communication is to be used with a Keintley 2700 or 2750 scanning multimeter but existing configurations have been set up to use GPIB, the serial_gpib_socket-1.0.0.tgz package can be used. In that case the gpib_serial_emulator_server supplied by this package can be used to transparently map gpib-addresses to serial ports and forward normal gpibserver comands to the respective serial interfaces.
    1. untar serial_gpib_socket_*.tgz and cd into the created gpib_serial_emulator_server directory
    2. run make
    3. if make runs without errors, as root run 'make install'
  4. Make sure that the /usr/local/bin/start_servers script is automatically run upon system reboot.

Copyright © Søren Koch, DTU Energy at Technical University of Denmark