Supported Hardware

Supported Hardware Matrix

Table 2. Linux-GPIB Supported Hardware Matrix

makemodelkernel driver moduleboard_type (for /etc/gpib.conf)
Agilent (HP)82341Chp_82341.kohp_82341
Agilent (HP)82341Dhp_82341.kohp_82341
Agilent (HP)82350Aagilent_82350b.koagilent_82350b
Agilent82350Bagilent_82350b.koagilent_82350b
Agilent82351Aagilent_82350b.koagilent_82350b
Agilent82357Aagilent_82357a.koagilent_82357a
Agilent82357Bagilent_82357a.koagilent_82357a
Beiming TechnologiesF82357agilent_82357a.koagilent_82357a
Beiming TechnologiesS82357agilent_82357a.koagilent_82357a
Capital Equipment CorporationPC-488pc2_gpib.kopcII
Capital Equipment CorporationPCI-488cec_gpib.kocec_pci
Capital Equipment CorporationCEC-488tnt4882.koni_pci
CONTECGP-IB(PC)pc2_gpib.kopcIIa
HamegHO80pc2_gpib.kopcII
HamegHO80-2ines_gpib.koines_isa
Hewlett PackardHP82335hp82335.kohp82335
Hewlett PackardHP27209hp82335.kohp82335
InesGPIB-HS-NTines_gpib.koines_isa
InesGPIB for Compact PCIines_gpib.koines_pci, ines_pci_unaccel
InesGPIB for PCIines_gpib.koines_pci, ines_pci_unaccel
InesGPIB for PCMCIAines_gpib.koines_pcmcia, ines_pcmcia_unaccel
InesGPIB PC/104ines_gpib.koines_isa
IotechGP488Bpc2_gpib.kopcIIa
KeithleyKPCI-488cec_gpib.kocec_pci
KeithleyKUSB-488ni_usb_gpib.koni_usb_b
KeithleyKUSB-488Ani_usb_gpib.koni_usb_b
KeithleyMBC-488pc2_gpib.kopcII
Keysight (Agilent)82350B PCIagilent_82350b.koagilent_82350b
Keysight (Agilent)82351A PCIeagilent_82350b.koagilent_82350b
Keysight (Agilent)82357B USBagilent_82357a.koagilent_82357a
Measurement Computing (Computer Boards)CPCI-GPIBcb7210.kocbi_pci, cbi_pci_unaccel
Measurement Computing (Computer Boards)ISA-GPIBcb7210.kocbi_isa, cbi_isa_unaccel
Measurement Computing (Computer Boards)ISA-GPIB/LCcb7210.kocbi_isa_unaccel
Measurement Computing (Computer Boards)ISA-GPIB-PC2Apc2_gpib.kopcIIa (nec7210 chip), pcIIa_cb7210 (cb7210 chip)
Measurement Computing (Computer Boards)PCI-GPIB/1Mcb7210.kocbi_pci, cbi_pci_unaccel
Measurement Computing (Computer Boards)PCI-GPIB/300Kcb7210.kocbi_pci_unaccel
Measurement Computing (Computer Boards)PCMCIA-GPIBcb7210.kocbi_pcmcia, cbi_pcmcia_unaccel
Measurement Computing (Computer Boards)USB-488ni_usb_gpib.koni_usb_b
National InstrumentsAT-GPIB (with NAT4882 chip)tnt4882.koni_nat4882_isa, ni_nat4882_isa_accel
National InstrumentsAT-GPIB (with NEC7210 chip)tnt4882.koni_nec_isa, ni_nec_isa_accel
National InstrumentsAT-GPIB/TNTtnt4882.koni_isa, ni_isa_accel
National InstrumentsGPIB-USB-Bni_usb_gpib.koni_usb_b
National InstrumentsGPIB-USB-HSni_usb_gpib.koni_usb_b
National InstrumentsPCI-GPIBtnt4882.koni_pci
National InstrumentsPCI-GPIB+tnt4882.koni_pci
National InstrumentsPCM-GPIBtnt4882.koni_pci
National InstrumentsPXI-GPIBtnt4882.koni_pci
National InstrumentsPCIIpc2_gpib.kopcII
National InstrumentsPCIIapc2_gpib.kopcIIa
National InstrumentsPCII/IIapc2_gpib.kopcII or pcII_IIa (depending on board switch)
National InstrumentsPCMCIA-GPIBtnt4882.koni_pcmcia, ni_pcmcia_accel
self-made (see note)http://lpvo.fe.uni-lj.si/gpiblpvo_usb_gpib.kolpvo_usb_gpib
QuancomPCIGPIB-1ines_gpib.ko (Ines iGPIB 72010 chip) or cb7210.ko (Measurement Computing cb7210 chip)ines_pci or ines_pci_unaccel (Ines iGPIB 72010 chip), cbi_pci_unaccel (Measurement Computing cb7210 chip)

Board-Specific Notes

Agilent (HP) 82341

After power-up, the Agilent 82341 boards require a firmware upload before they can be used. This can be accomplished using the "--init-data" option of gpib_config. The firmware data can be found in the gpib_firmware tarball available from the Linux-GPIB home page. Note the C and D versions use different firmware data.

If you specify a non-zero base address in /etc/gpib.conf, the driver will assume you are trying to configure a 82341C. Otherwise, the driver will use the kernel's ISAPNP support to attempt to configure an 82341D.

The 82341 does not support detection of an end-of-string character in hardware, it only automatically detects the when the EOI line is asserted. Thus if you use the REOS flag for a read, the board's fifos will not be used for the transfer. This will greatly reduce the maximum transfer rate for your board (which may or may not be noticeable depending on the device you are talking to).

Agilent 82350A/B and 82351A

The Agilent 82350A/B and 82351A boards do not support detection of an end-of-string character during reads in hardware, they can only detect assertion of the EOI line. Thus if you use the REOS flag for a read, the boards' fifos will not be used for the transfer. This will greatly reduce the maximum transfer rate for your board (which may or may not be noticeable depending on the device you are talking to).

After power-up, the 82350A boards require a firmware upload before they can be used. This can be accomplished using the "--init-data" option of gpib_config. The firmware data can be found in the gpib_firmware tarball available from the Linux-GPIB home page. The 82350B and 82351A do not require a firmware upload.

Agilent 82357A/B

The Agilent 82357A and 82357B require a firmware upload (before gpib_config is run) to become functional after being plugged in. The linux-gpib tarball contains hotplug scripts for automatically running the fxload program to upload the firmware (and to run gpib_config after the firmware is uploaded). However, the actual firmware data itself must be obtained seperately, as part of the gpib_firmware tarball available from the Linux-GPIB home page.

The 82357A/B have a few limitation due to their firmware code:

  • They cannot be run as a device, but must be the system controller.

  • They cannot be assigned a secondary address.

  • They cannot do 7 bit compares when looking for an end-of-string character (they always compare all 8 bits).

Beiming F/S82357

Linux_gpib support requires a minimum firmware version of 1.10 for the F82357 and version 1.20 for the S82357. These devices have on-board firmware and do not require a firmware upload before becoming functional afer plug-in. The on-board firmware can be re-flashed; contact the manufacturer for firmware and re-flash procedure.

Limitations:

  • These devices can only be used as system controllers.

  • They can only do 8-bit end-of-string (EOS) compares.

Self-made usb-gpib adapter

This usb-gpib adapter can be assembled following the project from the Laboratory of Photovoltaics and Optoelectronics at the Faculty of Electrical Engineering, University of Ljubljana. It is available at http://lpvo.fe.uni-lj.si/gpib . The adapter allows the control of GPIB devices with some limitations: it can only be the system controller; multicontroller and device operations are not supported (as yet). The linux-gpib driver 'lpvo_usb_gpib', written at the Department of Physics of University of Florence (Italy), is currently under development. It offers basic capabilities like ibrd(), ibwrt(), WaitSRQ() and others. Requests for unsupported features are flagged by a diagnostic message to syslog.

The driver assumes by default that the adapter is connected to port ttyUSB0. It is possible to change the 0 into any value n in the range 0-99 with the gpib_config option -b n (or base = n in the configuration file). Currently there is no way for the kernel to know that a gpib adapter of this kind is available, hence the following commands have to be entered manually (as root), before gpib_config (n is the port number as before)

modprobe lpvo_usb_gpib
stty raw -echo -iexten -F /dev/ttyUSBn
gpib_config ...

National Instruments GPIB-USB-B

The USB-B requires a firmware upload (before gpib_config is run) to become functional after being plugged in. The linux-gpib tarball contains hotplug scripts for automatically running the fxload program to upload the firmware (and to run gpib_config after the firmware is uploaded). However, the actual firmware data itself must be obtained seperately, as part of the gpib_firmware tarball available from the Linux-GPIB home page.

National Instruments GPIB-USB-HS

Unlike the USB-B, the USB-HS does not require a firmware upload to become functional after being plugged in. The linux-gpib tarball contains hotplug scripts which will automatically run gpib_config after the device is plugged in.