After we updated software on our cRIO-9030, one of our USB-serial devices is having communication issues.
From a LabVIEW program we are seeing write timeouts even though the data is written, and reading works fine.
After further investigation, we're seeing weirdness even when trying to communicate with our device from the Linux command line, suggesting a problem deeper than NI-VISA:
"echo [query] > /dev/ttyUSB0" evokes a response quickly and reliably when run from other computers, but from the cRIO the response is often delayed, sometimes doesn't come at all, and sometimes only comes when we query a second time, at which point the first answer and second answer come through at once.
It sounds like some sort of buffer or interrupt issue, maybe with the kernel driver module NI is shipping?
cp210x converter now attached to ttyUSB0
dwc3-pci 0000:00:16.0: cannot find GPIO chip INT33FC:00, deferring
The device is a LakeShore 336 Temperature Monitor with a built in USB to serial converter, and I had the same behavior on two different units.
I've played around with stty settings and made sure they were the same between the cRIO and the normal PC through which this is working fine.
The upgraded Linux version is now 5.10.115-rt67
I've been looking around the web for other people having this sort of issue on Linux in general, but it's a lot of noise to sort through.
Suggestions for troubleshooting or fixes welcome, but I at least wanted to document this issue here.
Solved! Go to Solution.
We downgraded the Linux distribution on the cRIO-9030 and it worked, so I believe this is an issue with the kernel serial drivers NI is shipping, with a regression sometime after 2021.
uname says the following.
linux poltardcrio 5.10.115-rt67 #1 smp preempt_rt sun jun 19 05:01:56 utc 2022 x86_64 x86_64 x86_64 gnu/linux
Linux poltardcrio 4.14.146-rt67-cg-8.7.0f0-x64-60 #1 SMP PREEMPT RT Tue Mar 30 16:04:57 UTC 2021 x86_64 GNU/Linux
Thanks for the follow-up post. I have let the NI Linux RT developers know about this issue.