Re: Problem with getting GPIB card to work

dave penkler <[email protected]>
Newsgroups gmane.linux.hardware.gpib.general
Message-ID <CAL=kjP3dfVydSjcSNWg2-KVhE5QgxGvGZMXKfDEKKhr1Shw-JA@mail.gmail.com>
Hi Søren,
Sorry for the late reply.
Could you try with ibterm :
$ ibterm -m <minor> -d <pad>
where <minor> is the minor of the new board and <pad> is the primary  gpib
address of the device.
Then just enter
*IDN?
and send me the invocation of the program and resulting output with the
error message.
Also please send your gpib.conf
thanks,
-Dave


On Thu, 6 Aug 2026 at 19:15, Søren Koch <[email protected]> wrote:

> Hi Dave.
>
> Thank you for your effort in solving this issue.
>
> I have now tried the fix, and now the driver loads.
>
> 03:00.0 Communication controller: National Instruments PCIe-GPIB+
> Subsystem: National Instruments PCIe-GPIB+
> Flags: bus master, medium devsel, latency 64, IRQ 16, IOMMU group 11
> Memory at 90004000 (32-bit, non-prefetchable) [size=4K]
> Memory at 90000000 (32-bit, non-prefetchable) [size=16K]
> Capabilities: [f0] MSI: Enable- Count=1/1 Maskable- 64bit+
> Kernel driver in use: tnt4882
> Kernel modules: tnt4882
>
> However I think the GPIB+ card handles comms differently, because now I
> get this error when I try to read from the GPIB:
>
> InternalReceiveSetup: command failed
>
> Also I have noticed that the physical layout of the 'normal' and the '+'
> card are different (Also when I have investigated, the '+' card cost almost
> 1.5 times the normal card on National instruments webshop)
>
>
> I have never seen that error before and the error does not come from 'my'
> software as it have never shown up for the 'normal' cards.
>
> I can write to the gpib with no error (for instance I can send a *idn?
> with no problem, but when I try to read the response, I get the error.
>
>
> The code that reads is this one:
>             case 'R':
>
>               memset (readstring, 0, bufsize);
>               ibrd (gpibid[iaddr], readstring, bufsize);
>               n = write (newsockfd, readstring, strlen (readstring));
>               break;
>
> The way I see it the error has to come from the call to ibrd()
>
> Do you have any ideas?
>
>
> Best regards
> Søren
>
> ------------------------------
> *From:* dave penkler <[email protected]>
> *Sent:* Wednesday, August 5, 2026 5:21 PM
> *To:* Søren Koch <[email protected]>
> *Cc:* Linux-gpib-general <[email protected]>
> *Subject:* Re: [Linux-gpib-general] Problem with getting GPIB card to work
>
> OK I have pushed the changes
> <https://sourceforge.net/p/linux-gpib/git/ci/2b764a39bae4778b3fa7bcf8a0b38b0f642fead0/>
> to the sourceforge git repo,
> Let me know if this works for you.
> Thanks,
> -Dave
>
> On Wed, 5 Aug 2026 at 10:52, Søren Koch <[email protected]> wrote:
>
> Hi Dave.
>
> Thanks for the fast reply 🙂
>
> lspci -v gives :
> 03:00.0 Communication controller: National Instruments PCIe-GPIB+
> Subsystem: National Instruments PCIe-GPIB+
> Flags: medium devsel, IRQ 255, IOMMU group 11
> Memory at 90004000 (32-bit, non-prefetchable) [disabled] [size=4K]
> Memory at 90000000 (32-bit, non-prefetchable) [disabled] [size=16K]
> Capabilities: [f0] MSI: Enable- Count=1/1 Maskable- 64bit+
>
>
> lspci -n gives:
> root@impedan-trol-47:~# lspci -n
> 00:00.0 0600: 8086:7d1b (rev 01)
> 00:01.0 0604: 8086:7ecc (rev 10)
> 00:02.0 0300: 8086:7d67 (rev 06)
> 00:04.0 1180: 8086:ad03 (rev 01)
> 00:06.0 0604: 8086:ae4d (rev 10)
> 00:0a.0 1180: 8086:ad0d (rev 01)
> 00:0b.0 1200: 8086:ad1d (rev 01)
> 00:0d.0 0c03: 8086:7ec0 (rev 02)
> 00:14.0 0500: 8086:ae7f (rev 10)
> 00:1f.0 0601: 8086:ae0d (rev 10)
> 00:1f.5 0c80: 8086:ae23 (rev 10)
> 01:00.0 0108: 144d:a80d
> 02:00.0 0604: 104c:8231 (rev 03)
> 03:00.0 0780: 1093:7414
> 80:14.0 0c03: 8086:7f6e (rev 10)
> 80:14.5 0000: 8086:7f2f (rev 10)
> 80:16.0 0780: 8086:7f68 (rev 10)
> 80:16.3 0700: 8086:7f6b (rev 10)
> 80:17.0 0106: 8086:7f62 (rev 10)
> 80:1c.0 0604: 8086:7f38 (rev 10)
> 80:1f.0 0601: 8086:7f03 (rev 10)
> 80:1f.3 0403: 8086:7f50 (rev 10)
> 80:1f.4 0c05: 8086:7f23 (rev 10)
> 80:1f.5 0c80: 8086:7f24 (rev 10)
> 80:1f.6 0200: 8086:550c (rev 10)
> 81:00.0 0280: 8086:272b (rev 1a)
> root@impedan-trol-47:~#
>
> I think the line you ask for is this one:
> 03:00.0 0780: 1093:7414
>
>
>
> I moved the card to another computer to verify that the problem was
> particular to that specific computer and it appears to be this card / model
> that causes the issue.
>
>
> Best regards
>
> Søren Koch
>
> ------------------------------
> *From:* dave penkler <[email protected]>
> *Sent:* Tuesday, August 4, 2026 5:48 PM
> *To:* Søren Koch <[email protected]>
> *Cc:* Linux-gpib-general <[email protected]>
> *Subject:* Re: [Linux-gpib-general] Problem with getting GPIB card to work
>
> Hi Søren,
> What does lspci -n come up with for vendor id 0x1093 ?. Perhaps the PCIe
> board has a different device id from those that are recognised by the
> driver.
> cheers,
> -Dave
>
> On Tue, 4 Aug 2026, 15:27 Søren Koch via Linux-gpib-general, <
> [email protected]> wrote:
>
> He all.
>
>
> I have just installed a new Ubuntu system:
>
> Distributor ID:    Ubuntu
> Description:    Ubuntu 26.04 LTS
> Release:    26.04
> Codename:    resolute
>
>
> I have installed the GPIB driver with no problems as usual.
>
>
> lspvi -v finds the  card:
>
>
> 03:00.0 Communication controller: National Instruments PCIe-GPIB+
>      Subsystem: National Instruments PCIe-GPIB+
>      Flags: medium devsel, IRQ 255, IOMMU group 10
>      Memory at e1004000 (32-bit, non-prefetchable) [disabled] [size=4K]
>      Memory at e1000000 (32-bit, non-prefetchable) [disabled] [size=16K]
>      Capabilities: [f0] MSI: Enable- Count=1/1 Maskable- 64bit+
>
> modprobe tnt4882 does not give any errors and
>
> modinfo detects the tnt4882 driver:
>
> root@impedan-trol-45:~# modinfo tnt4882
> filename:  /lib/modules/7.0.0-22-generic/gpib/tnt4882/tnt4882.ko
> description:    GPIB driver for National Instruments boards using
> tnt4882 or compatible chips
> license:        GPL
> srcversion:     63E352E1BFB666D31E833AD
> alias:          pci:v00001093d00007258sv*sd*bc*sc*i*
> alias:          pci:v00001093d00007259sv*sd*bc*sc*i*
> alias:          pci:v00001093d0000710Esv*sd*bc*sc*i*
> alias:          pci:v00001093d000070CFsv*sd*bc*sc*i*
> alias:          pci:v00001093d0000C831sv*sd*bc*sc*i*
> alias:          pci:v00001093d0000C821sv*sd*bc*sc*i*
> alias:          pci:v00001093d000071ADsv*sd*bc*sc*i*
> alias:          pci:v00001093d0000C811sv*sd*bc*sc*i*
> alias:          pci:v00001093d0000C801sv*sd*bc*sc*i*
> depends:        nec7210,gpib_common
> name:           tnt4882
> retpoline:      Y
> vermagic:       7.0.0-22-generic SMP preempt mod_unload modversions
> root@impedan-trol-45:~#
>
> but when I try to run gpib_config i get this:
>
> root@impedan-trol-45:~# gpib_config
> failed to bring board online
> failed to configure board
> main: No such device
> root@impedan-trol-45:~#
>
> and the driver does not load
>
>
>
> On an other (older) system running Ubuntu 24.04.03 it works and I get
> this when running lspci -v:
>
>
> 04:00.0 Communication controller: National Instruments PCIe-GPIB (rev 02)
>      Subsystem: National Instruments PCIe-GPIB
>      Flags: bus master, medium devsel, latency 64, IRQ 16, IOMMU group 13
>      Memory at 80804000 (32-bit, non-prefetchable) [size=2K]
>      Memory at 80800000 (32-bit, non-prefetchable) [size=16K]
>      Kernel driver in use: tnt4882
>      Kernel modules: tnt4882
>
> (Note that here the driver is loaded and in use)
>
>
> The only difference is that the board with problems is a PCIe-GPIB+
> whereas the one that works is a  PCIe-GPIB (rev 02)
>
>
> Does anyone have any ideas?
>
>
> Best regards
>
>
> --
> Søren Koch
> Senior Development Engineer
> Mob: +45 21325247
> [email protected]
> Fysikvej
> Building 310
> 2800 Kgs. Lyngby
>
>
>
> _______________________________________________
> Linux-gpib-general mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/linux-gpib-general
>
>

_______________________________________________
Linux-gpib-general mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-gpib-general
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.