|
From: David G. <dav...@po...> - 2026-06-09 19:33:30
|
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
|