Table 2. Linux-GPIB Supported Hardware Matrix
make | model | kernel driver module | board_type (for /etc/gpib.conf) |
---|---|---|---|
Agilent (HP) | 82341C | hp_82341.ko | hp_82341 |
Agilent (HP) | 82341D | hp_82341.ko | hp_82341 |
Agilent (HP) | 82350A | agilent_82350b.ko | agilent_82350b |
Agilent | 82350B | agilent_82350b.ko | agilent_82350b |
Agilent | 82357A | agilent_82357a.ko | agilent_82357a |
Agilent | 82357B | agilent_82357a.ko | agilent_82357a |
Capital Equipment Corporation | PC-488 | pc2_gpib.ko | pcII |
Capital Equipment Corporation | PCI-488 | cec_gpib.ko | cec_pci |
CONTEC | GP-IB(PC) | pc2_gpib.ko | pcIIa |
Hameg | HO80 | pc2_gpib.ko | pcII |
Hameg | HO80-2 | ines_gpib.ko | ines_isa |
Hewlett Packard | HP82335 | hp82335.ko | hp82335 |
Hewlett Packard | HP27209 | hp82335.ko | hp82335 |
Ines | GPIB-HS-NT | ines_gpib.ko | ines_isa |
Ines | GPIB for Compact PCI | ines_gpib.ko | ines_pci, ines_pci_unaccel |
Ines | GPIB for PCI | ines_gpib.ko | ines_pci, ines_pci_unaccel |
Ines | GPIB for PCMCIA | ines_gpib.ko | ines_pcmcia, ines_pcmcia_unaccel |
Ines | GPIB PC/104 | ines_gpib.ko | ines_isa |
Iotech | GP488B | pc2_gpib.ko | pcIIa |
Keithley | KPCI-488 | cec_gpib.ko | cec_pci |
Keithley | MBC-488 | pc2_gpib.ko | pcII |
Measurement Computing (Computer Boards) | CPCI-GPIB | cb7210.ko | cbi_pci, cbi_pci_unaccel |
Measurement Computing (Computer Boards) | ISA-GPIB | cb7210.ko | cbi_isa, cbi_isa_unaccel |
Measurement Computing (Computer Boards) | ISA-GPIB/LC | cb7210.ko | cbi_isa_unaccel |
Measurement Computing (Computer Boards) | ISA-GPIB-PC2A | pc2_gpib.ko | pcIIa (nec7210 chip), pcIIa_cb7210 (cb7210 chip) |
Measurement Computing (Computer Boards) | PCI-GPIB/1M | cb7210.ko | cbi_pci, cbi_pci_unaccel |
Measurement Computing (Computer Boards) | PCI-GPIB/300K | cb7210.ko | cbi_pci_unaccel |
Measurement Computing (Computer Boards) | PCMCIA-GPIB | cb7210.ko | cbi_pcmcia, cbi_pcmcia_unaccel |
National Instruments | AT-GPIB (with NAT4882 chip) | tnt4882.ko | ni_nat4882_isa, ni_nat4882_isa_accel |
National Instruments | AT-GPIB (with NEC7210 chip) | tnt4882.ko | ni_nec_isa, ni_nec_isa_accel |
National Instruments | AT-GPIB/TNT | tnt4882.ko | ni_isa, ni_isa_accel |
National Instruments | GPIB-USB-B | ni_usb_gpib.ko | ni_usb_b |
National Instruments | GPIB-USB-HS | ni_usb_gpib.ko | ni_usb_b |
National Instruments | PCI-GPIB | tnt4882.ko | ni_pci |
National Instruments | PCI-GPIB+ | tnt4882.ko | ni_pci |
National Instruments | PCM-GPIB | tnt4882.ko | ni_pci |
National Instruments | PXI-GPIB | tnt4882.ko | ni_pci |
National Instruments | PCII | pc2_gpib.ko | pcII |
National Instruments | PCIIa | pc2_gpib.ko | pcIIa |
National Instruments | PCII/IIa | pc2_gpib.ko | pcII or pcII_IIa (depending on board switch) |
National Instruments | PCMCIA-GPIB | tnt4882.ko | ni_pcmcia, ni_pcmcia_accel |
Quancom | PCIGPIB-1 | ines_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) |
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).
The Agilent 82350A and 82350B 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 does not require a firmware upload.
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).
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.
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.