From 11:00 PM CST Friday, May 9th - 3:00 PM CST Saturday, May 10th, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From 11:00 PM CST Friday, May 9th - 3:00 PM CST Saturday, May 10th, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
‎10-04-2011 02:27 AM
Hi,
Help me
I want to use GPIB-USB-HS, ni488.2-2.9.0f0, on Linux.
but, gpibexplorer cannot find, GPIB-USB-HS Device.
ScientificLinux 5.6 - OK(found), GPIB Communitaion Ok.
ScientificLinux 6.1 - NG, cannot find.
openSuse11.3 - NG, cannot find.
What's different? ScientificLinux5.6 vs ScientificLinux6.1 and openSuse11.3 .
Kernel Version?
ScientificLinux5.6 Kernel version is 2.6.18
ScientificLinux6.1 Kernel version is 2.6.32
openSuse Kernel version is 2.6.34
refer, README.
> -------------------------
> Supported GPIB Interfaces
> -------------------------
> PCI-GPIB
> PCI-GPIB/LP
> NI PCIe-GPIB
> PCI-8212
> PCI-8232
> PXI-GPIB
> PXI-8212
> PXI-8232
> GPIB-USB-B (Up to kernel version 2.6.24)
> GPIB-USB-HS (Up to kernel version 2.6.24) <----- Down to ?
> GPIB-ENET/100
> GPIB-ENET/1000 (new)
‎10-04-2011 07:55 AM
The GPIB-USB-HS won't work newer kernels
> GPIB-USB-HS (Up to kernel version 2.6.24) <----- Down to ?
No, up to. With kerneles newer than that version it won't work.
‎10-24-2012 04:26 PM
Why not?
‎10-25-2012 08:46 AM
USB kernel API was marked as EXPORT_SYMBOL_GPL sometime back, and since our modules are not GPL, we can't link to them
This has come up again and again in other threads, for example: https://decibel.ni.com/content/message/24682#24682
Sorry, we can't do anything about that.
‎12-12-2013 08:33 AM
I managed to get it working on CentOS 6.4 using a "license hack". That should be ok as long as you don't distribute it. Also you need to change around line 4085 in nikal.c:
- snprintf(device->nameString, sizeof(device->nameString), "%s", usb_dev->dev.bus_id);
+ snprintf(device->nameString, sizeof(device->nameString), "%s", usb_dev->dev.bus->name);
That's all.
I wonder why NI cannot use libusb...
‎12-12-2013 09:41 AM
We can use libusb, but changing the device access from kernel mode up to user mode while not breaking our software requirements is non-trivial and has lots of challenges (architecture-wise, performance-wise, multi-process-wise, etc).. Sorry .. We are looking into it, but no promises if/when it will happen.
‎04-05-2017 03:10 AM
Just publish the kernel driver source under GPL, and you can use the usb framework again.
Proprietary kernel modules are insane anyways.