[time-nuts] Lady Heather Serial receive Error 0x2

Magnus Danielson magnus at rubidium.dyndns.org
Tue Nov 17 08:57:02 UTC 2009


David,

David Bengtson wrote:
> I based this on some troubleshooting notes on the FDTI web site, and
> they mentioned that devices that send lot's of short messages, as well
> as slow devices, tend to have problems with a 4k buffer. I tried it,
> and it's now working. Not sure I can bring much more to the table on
> this one.

In their Technical Note 103 they write:

2 Bulk Data Transfers
FTDI devices transfer data using USB Bulk transfers. The most efficient 
way to conduct USB bulk transfers is in large chunks. FTDI devices are 
bi-directional and can therefore both send and receive data across a USB 
connection. Sending data and receiving data will be considered as 
separate cases.

2.1 Sending Data
When writing data to an FTDI device, as much data as possible should be 
buffered in the application and written to the device in a single write 
function call (either WriteFile for a VCP application using the Win32
API, FT_Write if using the D2XX classic interface or FT_WriteFile if 
using the D2XX FT_W32 interface).
The result of this is that the data will be written to the device with 
64 bytes per USB packet.
If data were to be written in small amounts or even individual bytes as 
many applications written for legacy serial ports do, the USB bulk 
transfer protocol would only be able to transfer 1 byte per USB
packet. This method is not efficient when employing USB bulk transfers 
and performance will be greatly diminished.

For the receive data (which is more elaborately described) please see 
for yourselves at
http://www.ftdichip.com/Documents/TechnicalNotes/TN_103_FTDI_USB_Data_Transfer_Efficiency%28FT_000097%29.pdf

Cheers,
Magnus



More information about the time-nuts mailing list