FTDI Community

Please login or register.

Login with username, password and session length.
Advanced Search  

News:

Welcome to the FTDI Community!

Please read our Welcome Note

Technical Support enquires
please contact the team
@ FTDI Support


New Bridgetek Community is now open

Please note that we have created the Bridgetek Community to discuss all Bridgetek products e.g. EVE, MCU.

Please follow this link and create a new user account to get started.

Bridgetek Community

Author Topic: FT2232H used in CPU-style FIFO mode - port setup ?  (Read 519 times)

yaab

  • Newbie
  • *
  • Posts: 1
    • View Profile
FT2232H used in CPU-style FIFO mode - port setup ?
« on: April 26, 2021, 11:50:45 PM »

I am playing with a FT2232H on a Windows 10 Pro PC.  I am using the latest version of TeraTerm to connect to the device.   I have a C8051F340 connected to the device and am sending data to the device in the CPU-style FIFO mode.

I set the A0 & CS# lines low, then write 8 bit data to the device, strobing WR# after each byte.  Once the string is fully sent, I return A0 & CS# hi.  I'm currently not using any other pins.

I see data appear in TeraTerm fine when I send shorter strings, after a certain length the data transfer has troubles.
 
Eventually I wish to use this as a sort of high speed data logger to assist me in troubleshooting code that simply cant run with printfs to a com port.   I'd likely be sending a few hundred to several thoughsand bytes, 1 to 3 bytes at a time, with a few micro-seconds in between. 
 
I've been reading about USB, packet sizes & latency and am sure that's where my problem is.  So, trying to understand all of this.

A few questions ...

1) Given my use case, am I using the most appropriate mode ?

2) In changing the port settings for the VCP in Windows 10 Device manager - Port settings - Advanced settings, do I really need to reboot for settiing to take effect ?
   
3) Is it true that the baud rate setting here is ignored ?

4) What exactly do the "Minimum Read/Write Timeout (msec)" settings control ?

Logged

FTDI Community

  • Administrator
  • Hero Member
  • *****
  • Posts: 645
    • View Profile
Re: FT2232H used in CPU-style FIFO mode - port setup ?
« Reply #1 on: April 27, 2021, 03:11:21 PM »

Hello,

Thank you for your question.

1) Given my use case, am I using the most appropriate mode ?

Yes, give your use case I believe that the CPU-style FIFO interface would be the most appropriate.


2) In changing the port settings for the VCP in Windows 10 Device manager - Port settings - Advanced settings, do I really need to reboot for settiing to take effect ?

No, a reboot is not required, these setting should take effect immediately. But please, close any open VCP connections before altering these settings.
   
3) Is it true that the baud rate setting here is ignored ?

In FIFO modes yes this is correct the baud rate setting is ignored.

4) What exactly do the "Minimum Read/Write Timeout (msec)" settings control ?

These settings control the read and write timeouts for the IC, but for the best performance I would leave these at the default 0msec.

I would suggest alerting the latency timer value. The latency timer can only be set to 1ms minimum for our High Speed USB products and nothing less.
In bulk mode there will usually be no transfer of data until the packet size threshold (64/512) has been reached. However there are conditions where you may never reach this amount of data and you need to transfer a “short” packet. The mechanism to achieve this is called a latency timer timeout. This is simply a mechanism to flush the buffer of the device back to the PC after a pre-set time delay.

Sometimes the inherent behaviour of USB can be a problem and applications cannot be guaranteed throughput.
If there is more USB traffic then the OS and USB have to schedule the communication with each of the USB devices.
It’s highly dependent on the OS and USB Host and is out with our control.

Best Regards,
FTDI Community
« Last Edit: April 27, 2021, 03:22:58 PM by FTDI Community »
Logged