Hello,
I am using the FT2232H chip in an Android (linux) environment. I am working with the latest libftdi (version 1.2), libusb (version 1.0).
I have built the code as a static library for Android and written an example program. I am using port B on the chip for serial communications. I can set the baud rate, parity, data bits, stop bits and this all works. I can send and receive
test patterns. I am testing this on FT2232H Mini-Module purchased from FTDI.
My problem is in using hardware flow control with RTS and CTS. The RTS output is always high, which prevents data from coming. If I jumper RTS and CTS together, no data flows because of this. If I simply ground CTS, I can send and receive
data in loop back. I have a USBee AX logic analyzer running on a separate laptop to see all the lines and their states.
I have changed the example program many times with several different combinations of API functions, changed order of API functions, etc. Nothing seems to help.
I know my hardware works because I can use the same module on MacBook and Linux using the D2XX library from FTDI and hardware flow control works exactly like it should. I tried to copy exactly the same API functions and order of calling
from D2XX to libftdi but this also has the same problem.
I am using libftdi because it supports current Android software. Current D2XX libraries are not available for Android, so I can’t use a 64-bit environment (a requirement for me).
Please let me know what I should be looking at or what other information you would like me to provide. I don’t know which way to go to solve this.
-dave