Hello,

I’m in charge of the porting of an application which communicates with a
FTDI_SIO and a FT232BM.

The vendor:product is: 0403:6001

The windows version of this software uses the FTDI serial driver at the
input transfer rate is about 270 Ko/s.

When porting the code under linux, I first try to use libusb 0.1.7. I
was surprised to see that the usb_read_bulk parameters differ depending
on the linux distribution! I first tune the timeout and buffer size
parameter for the dev. platform (Red Hat 8 and Red Hat 9). The transfer
rate is about 130 Ko/s. The same code is not running with other Linux
distributions:

SuSE Linux 8.1 (i386) distribution with a 2.4.19 Kernel
SuSE Linux 8.2 (i586) distribution with 2.4.20 Kernel

I had to change the buffer size to 64 Kb as well as the timer. The
maximum rate reached on these system are about 35 Ko/s.

After that, I tried to use the FTDI_SIO module and worked with the
ttyUSBx serial port. The basic open. Close, read, write command work
perfectly. But the input transfer rate is really bad: 10 Ko/s.

When I try to use advanced serial configuration (set a different
baudrate or any kind of options), there is absolutely no difference in
performance.

Can anybody tell me either
- How to configure usb_read_bulk for an optimal transfer rate
- How to configure the FTDI_SIO for better performances

Thank you in advance

  -- Gaëtan 

Copy of the lsusb command:


...

Bus 001 Device 006: ID 0403:6001 Future Technology Devices 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 Interface
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0403 Future Technology Devices
  idProduct          0x6001 
  bcdDevice            4.00
  iManufacturer           1 VRAI
  iProduct                2 easyTrack v1.0
  iSerial                 3 ET_v0100
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xc0
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              2 easyTrack v1.0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               0
  Language IDs: (length=4)
     0409 English(US)





-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?   SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to