NI Linux Real-Time Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

cRIO-9034 : Force serial baud rate at 12M

Solved!
Go to solution

Hi,

 

I've got a cRIO-9034 with the following spec:

 

NI Linux Real-Time intel x64 based

Firmware : 5.0.0f1

Kernel : 4.6.7-rtl14-5.0.0.0f0

LabVIEW Real-Time : 16.0.0

NI CompactRIO : 17.0

 

FTDI device : FT2232H

 

Within the latest kernel, the ftdi-sio driver seems support a baud rate at 12M. Unfortunately the "VISA Configure Serial Port" returns an issue when I try to set it (-1073807330 : Property Node (arg 2) in VISA Configure Serial Port (Instr)). I read NI-VISA (or serial) doesn't support this rate, but why as now lots of devices support this baud rate ?

Previously I installed the libftd2xx.so from FTDI website, but when I send a flow of data, all is ok at the beginning, but after few minutes, the flow rate is "broken" and the rate slows down gradually.

So I suppose the ftdi-sio driver should have better performance, but does anyone know how can I 'force' the NI-VISA to accept the 12Mbaud, or how can I set (or integrate) it directly from my LabVIEW code ?

Unfortunately, the 12M is absolutely needed by my system Smiley Sad 

 

Thank you ! Smiley Happy

0 Kudos
Message 1 of 3
(3,035 Views)

Hi jmoti,

 

As we'd discussed in your previous post, there is likely some limit in the web interface code. I am following up on that, but regardless, if you're using some library to directly call the ioctls needed to set the baud rate and you're still seeing issues, I'm fairly confident that simply enabling you to set the baud from the web UI is not going to result in anything different, result-wise.

 

What is the nature of the issue that you see when you used the libftd2xx.so library? You state that

 

all is ok at the beginning, but after a few minutes, the flow rate is 'broken' and the rate slows down gradually

 When you say that the flow control is broken, how did you come to this observation? Are you using HW flow control? Is the receiving end holding off the transmission of further data? From a quick reading of the libftd2xx.so programming guide and what I know of serial communication, it's not going to be the case that the baud rate is automatically lowered (there's no notion of expressing this change to the other participant), so you've already "forced" 12M baud.

0 Kudos
Message 2 of 3
(2,985 Views)
Solution
Accepted by jmoti

Hi BradM,

 

I think I have solved my issue with libftd2xx.so library by setting priorities on VIs calling functions from this lib.

I had also into my code an infinite array into an infinite loop, so memory issue occurs.

 

Thank you !

0 Kudos
Message 3 of 3
(2,974 Views)