I need some help debugging an ECIC problem with my card

David Gravereaux <[email protected]> Tue, 9 Jun 2026 12:33:21 -0700
Newsgroups gmane.linux.hardware.gpib.general
Message-ID <[email protected]>
Hi,

It's me again.  I an unable to get my National Instruments PCI-GPIB card 
to go into controller mode.

This under a fresh install of Ubuntu 26.04 LTS.  The last time I used 
the card in this mobo was back in February, so I know the hardware and 
the devices on the buss function.

User mode stuff installed by the system with
$ sudo apt-get install gpib-user-tools libgpib-dev

Kernel mode compiled and installed from source and even added in DKMS.

The second card on slot 6 is not installed right now to isolate the issue.

davygrvy@workbench:~$ lspci -kvs "05:05"
05:05.0 Communication controller: National Instruments PCI-GPIB (rev 01)
	Flags: bus master, medium devsel, latency 16, IRQ 20, NUMA node 0
	Memory at fe408000 (32-bit, non-prefetchable) [size=2K]
	Memory at fe404000 (32-bit, non-prefetchable) [size=16K]
	Expansion ROM at fe400000 [disabled] [size=16K]
	Kernel driver in use: tnt4882
	Kernel modules: tnt4882

I have verified these udev rules run on boot.

$ cat /etc/udev/rules.d/99-ni_pci-gpib.rules
#
SUBSYSTEM=="pci", ACTION=="add", KERNELS=="0000:05:05.0",\
RUN+="/usr/sbin/modprobe tnt4882",\
RUN+="/usr/sbin/gpib_config --minor 0 --pci-bus 5 --pci-slot 5"
#
SUBSYSTEM=="pci", ACTION=="add", KERNELS=="0000:05:06.0",\
RUN+="/usr/sbin/modprobe tnt4882",\
RUN+="/usr/sbin/gpib_config --minor 1 --pci-bus 5 --pci-slot 6"

This my config

davygrvy@workbench:~$ cat /etc/gpib.conf
interface {
     minor = 0
     board_type = "ni_pci"
     name = "primary"
     pad = 0
     sad = 0
     timeout = T3s

     eos = 0x0a
     set-reos = yes
     set-bin = no
     set-xeos = no
     set-eot = yes

     pci_bus = 5
     pci_slot = 5

     master = yes
}

interface {
     minor = 1
     board_type = "ni_pci"
     name = "secondary"
     pad = 0
     sad = 0
     timeout = T3s

     eos = 0x0a
     set-reos = yes
     set-bin = no
     set-xeos = no
     set-eot = yes

     pci_bus = 5
     pci_slot = 6

     master = yes
}

The card just won't go into system controller mode.

davygrvy@workbench:~$ ibterm -m 0 -d 25
Attempting to open /dev/gpib0
pad = 25, sad = 0, timeout = 10, send_eoi = 1, eos_mode = 0x0000
ibterm>ID?
ibterm error: Unable to write to device at pad 25

  - ECIC 1: Board not controller in charge
ibterm>
ibterm: Done.

Dave Penkler sent me a test program to try and it fails with ECIC, too

$ ./tibrsc
Initilisation        ibsta 0x1110 lines 0x72ff ibsta 0x1110
Set no ren           ibsta 0x1110 lines 0x62ff ibsta 0x1110
Release control      ibsta 0x1110 lines 0x62ff ibsta 0x1110
Request control      ibsta 0x1110 lines 0x72ff ibsta 0x1110
Send interface clear ibsta 0x1110 lines 0x72ff ibsta 0x1110
error: Assert ATN
  - ECIC 1: Board not controller in charge
error: Go to standby
  - ECIC 1: Board not controller in charge
Release control      ibsta 0x1110 lines 0x62ff ibsta 0x1110
Request control      ibsta 0x1110 lines 0x72ff ibsta 0x1110