Hi,
I finally got the FanControl application working under linux using wine. (Anyone interested in this
).
I had to make some patches to the wine code as well as to the FTDI linux driver. I am now trying to sort out why they are needed.
Can anyone at innovatek tell me if FanControl calls
SetCommState() with the following dcb fields:
fOutX=0 and
fInX=1.
If so, why is the fInX set to 1? I would say that because the communication is binary both ways there should not be any flow control (with ^S/^Q) in either way.
The problem is that the wine code (erroneously) translates this fInX to the linux IXON tty state. This will eat the ^S and ^Q characters coming from the FOM-PRO. This will results in garbled data and no proper communication. I am currently discussing this with the wine people. The fInX should be translated to IXOFF, which sends ^S/^Q when the input buffer fills up. This is also not suitable for the FOM-PRO, but it will probably not hurt because the buffer never fills up in practice. Still it does not seem to be correct.
Regards,
Tom