DVV,
Through testing out the equipment here at NI, we were able to find the following information:
Facts:
We set up a 1002B USB Tek scope with a system running RedHat Linux 4. Initially, VISAIC would open a session to the Tek scope, but we would always get the timeout error when trying to Write. We tried on RedHat 5 and got the same result.
We set up the CATC analyzer with the USB Tek scope and the system running RedHat Linux 4. We narrowed it down to an issue between the Linux kernel and the Tek scope. It actually has nothing to do with VISA. When using the analyzer, if we turn trace recording on before the device is plugged in and turn it off after it's plugged in, the device is then able to receive a Write and seems to work fine with the Linux kernel. If tracing is not on during that time, the Linux kernel will not send data (Bulk transfers) to the device for some reason. So since Linux won't interact with the device further than getting info about it (Control transfers), VISA Writes timeout.
Thoughts:
When we used the hardware analyzer, it must have minimally slowed down the USB communication between the Linux machine and the scope to make this change in behavior. When the initial plugging in of the Tek scope happens, RedHat 4's USB response speed could be too fast for the Tek scope. Slowing the initial connection down makes things work between the kernel and scope, so it could be the fault of either. It may be a race condition in the RedHat kernel.
The Tek scope was probably tested with Windows but not Linux. It's probably too old and slow to work with some Linux kernels.
Potential theoretical workarounds:
Using a slower computer or installing debug version of the Linux kernel could slow that connecting down enough to work for a device this slow. They could also try with newer Tek scopes.
Thanks
Sarah S.
Applications Engineering
National Instruments