libftdi Archives

Subject: ftdi_eeprom and max packet size

From: Tilmann Hentze <tilmann@xxxxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Mon, 29 Aug 2011 09:53:31 +0000
I tried to change the USB Vendor ID of a FT245r with ftdi_eeprom (version
0.3-2, libftdi version 0.19-3, running on Linux) and it worked, BUT somehow the
max_packet_size of ftdi_context was set to zero. Is this a know feature?

---snip---

Bus 005 Device 011: ID 0403:8738 Future Technology Devices International, Ltd
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x0403 Future Technology Devices International, Ltd
  idProduct          0x8738
  bcdDevice            6.00
  iManufacturer           1 skoe
  iProduct                2 EasyFlash 3
  iSerial                 3 A6008h2r
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower               90mA
    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 EasyFlash 3
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0000  1x 0 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0000
  (Bus Powered)
---snip--

And the eeprom configuration file:
---snip---

filename="ef3.eeprom"   # Filename, leave empty to skip file writing

vendor_id=0x0403        # Vendor ID
product_id=0x8738       # Product ID

max_power=45    # Max. power consumption: value * 2 mA. Use 0 if self_powered = 
true.

###########
# Strings #
########### 
manufacturer="skoe"                     # Manufacturer
product="EasyFlash 3"           # Product
serial="A6008h2r"                               # Serial

###########
# Options #
###########
self_powered=false      # Turn this off for bus powered
remote_wakeup=false     # Turn this on for remote wakeup feature
use_serial=true         # Use the serial number string

# Normally out don't have to change one of these flags
BM_type_chip=true               # Newer chips are all BM type
in_is_isochronous=false         # In Endpoint is Isochronous
out_is_isochronous=false        # Out Endpoint is Isochronous
suspend_pull_downs=false        # Enable suspend pull downs for lower power
change_usb_version=false        # Change USB Version
usb_version=0x0200              # Only used when change_usb_version is enabled

---snip---

Best regards,

Tilmann Hentze.


--
libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx   

Current Thread