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: FTProg & FT260 - not perfect ?  (Read 145 times)

ffred

  • Newbie
  • *
  • Posts: 15
    • View Profile
FTProg & FT260 - not perfect ?
« on: June 12, 2022, 02:22:18 PM »

Hi,
I want to be able to recognize which FT260 I have connected, so want to set a specific serial number to each FT260 I will use.
I use FTProg to set the EEPROM (actually I'm using UMFT260EV1A boards for my tests) and only want to change the serial number and keep the other parameters as default.

I used USDBview from Nirsoft and also Microsoft USBView I found on FTDI download page to compare how the FT260 enumerate on my computer. (links at the bottom).

here are the two screenshots (before & after FTPROG) from USBDView :



I just changed the serial number for "F0001A" on FTProg. it seems to work because with LibFT260 I can open the device with "FT260_OpenBySerialNumber", but why now the 3 lines for the FT260 doesn't still appear as FT260 in USBDView "device name" column ?

I also save the data from Microsoft USBView, before & after FTPROG. here are the files :
before:
Code: [Select]
Device Descriptor:
bcdUSB:             0x0200
bDeviceClass:         0x00
bDeviceSubClass:      0x00
bDeviceProtocol:      0x00
bMaxPacketSize0:      0x40 (64)
idVendor:           0x0403 (Future Technology Devices International Limited)
idProduct:          0x6030
bcdDevice:          0x2200
iManufacturer:        0x01
0x0409: "FTDI"
iProduct:             0x02
0x0409: "FT260"
iSerialNumber:        0x00
bNumConfigurations:   0x01

ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed:     Full
Device Address:       0x02
Open Pipes:              4

Endpoint Descriptor:
bEndpointAddress:     0x81  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x02  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x83  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x04  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Configuration Descriptor:
wTotalLength:       0x0049
bNumInterfaces:       0x02
bConfigurationValue:  0x01
iConfiguration:       0x00
bmAttributes:         0xA0 (Bus Powered Remote Wakeup)
MaxPower:             0x32 (100 Ma)

Interface Descriptor:
bInterfaceNumber:     0x00
bAlternateSetting:    0x00
bNumEndpoints:        0x02
bInterfaceClass:      0x03 (HID)
bInterfaceSubClass:   0x00
bInterfaceProtocol:   0x00
iInterface:           0x00

HID Descriptor:
bcdHID:             0x0111
bCountryCode:         0x00
bNumDescriptors:      0x01
bDescriptorType:      0x22
wDescriptorLength:  0x0117

Endpoint Descriptor:
bEndpointAddress:     0x81  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x02  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Interface Descriptor:
bInterfaceNumber:     0x01
bAlternateSetting:    0x00
bNumEndpoints:        0x02
bInterfaceClass:      0x03 (HID)
bInterfaceSubClass:   0x00
bInterfaceProtocol:   0x00
iInterface:           0x00

HID Descriptor:
bcdHID:             0x0111
bCountryCode:         0x00
bNumDescriptors:      0x01
bDescriptorType:      0x22
wDescriptorLength:  0x0117

Endpoint Descriptor:
bEndpointAddress:     0x83  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x04  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

after:
Code: [Select]
Device Descriptor:
bcdUSB:             0x0200
bDeviceClass:         0x00
bDeviceSubClass:      0x00
bDeviceProtocol:      0x00
bMaxPacketSize0:      0x40 (64)
idVendor:           0x0403 (Future Technology Devices International Limited)
idProduct:          0x6030
bcdDevice:          0x2200
iManufacturer:        0x01
iProduct:             0x02
iSerialNumber:        0x03
bNumConfigurations:   0x01

ConnectionStatus: DeviceConnected
Current Config Value: 0x01
Device Bus Speed:     Full
Device Address:       0x02
Open Pipes:              4

Endpoint Descriptor:
bEndpointAddress:     0x81  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x02  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x83  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x04  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Configuration Descriptor:
wTotalLength:       0x0049
bNumInterfaces:       0x02
bConfigurationValue:  0x01
iConfiguration:       0x00
bmAttributes:         0xA0 (Bus Powered Remote Wakeup)
MaxPower:             0x32 (100 Ma)

Interface Descriptor:
bInterfaceNumber:     0x00
bAlternateSetting:    0x00
bNumEndpoints:        0x02
bInterfaceClass:      0x03 (HID)
bInterfaceSubClass:   0x00
bInterfaceProtocol:   0x00
iInterface:           0x00

HID Descriptor:
bcdHID:             0x0111
bCountryCode:         0x00
bNumDescriptors:      0x01
bDescriptorType:      0x22
wDescriptorLength:  0x0117

Endpoint Descriptor:
bEndpointAddress:     0x81  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x02  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Interface Descriptor:
bInterfaceNumber:     0x01
bAlternateSetting:    0x00
bNumEndpoints:        0x02
bInterfaceClass:      0x03 (HID)
bInterfaceSubClass:   0x00
bInterfaceProtocol:   0x00
iInterface:           0x00

HID Descriptor:
bcdHID:             0x0111
bCountryCode:         0x00
bNumDescriptors:      0x01
bDescriptorType:      0x22
wDescriptorLength:  0x0117

Endpoint Descriptor:
bEndpointAddress:     0x83  IN
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

Endpoint Descriptor:
bEndpointAddress:     0x04  OUT
Transfer Type:   Interrupt
wMaxPacketSize:     0x0040 (64)
bInterval:            0x01

the only differences seems to be in the first "device descriptor" block.
does this seems normal to you ? why the way it's showing in USBDView doesn't stay the same ?

thanks,
ffred
 

https://www.nirsoft.net/utils/usb_devices_view.html
https://ftdichip.com/utilities/
Logged

FTDI Community

  • Administrator
  • Hero Member
  • *****
  • Posts: 749
    • View Profile
Re: FTProg & FT260 - not perfect ?
« Reply #1 on: June 13, 2022, 04:30:25 PM »

Hello,

Can you please confirm if you re-enumerated the device after making the changes in FT_PROG?

You can do this by unplug / replug or by clicking on 'Cycle Ports' in the FT_PROG programming window.

Can you also try with FTDI's version of Microsoft USBView?

You may also want to email your local support team as it seems you have many issues / questions with FT260:

https://ftdichip.com/technical-support/

Best Regards,
FTDI Community
Logged

ffred

  • Newbie
  • *
  • Posts: 15
    • View Profile
Re: FTProg & FT260 - not perfect ?
« Reply #2 on: June 13, 2022, 05:51:53 PM »

hello,

yes of course I did unplug / replug it between the two results I post. even did it several times and also see that I can recover the original result after erasing the eeprom with FTPROG.
and I got the same thing on Windows 8.1 and Windows 10 (didn't have time to test on Windows 11 right now).

and what I posted in code sections is an extract from the USBview I take on FTDI website (I put the link at the bottom of my original post..).

 was thinking that my questions here (and even more the replies) could benefit to everyone. but I could also ask to the mail support next time if that's the better way for that.
(and there will be more questions coming, because I already found a few more errors and unclear points in the different pdf docs for the FT260; I just don't have enough time to verify everything before asking right now..)

thanks.
ffred
« Last Edit: June 13, 2022, 07:16:33 PM by ffred »
Logged

FTDI Community

  • Administrator
  • Hero Member
  • *****
  • Posts: 749
    • View Profile
Re: FTProg & FT260 - not perfect ?
« Reply #3 on: June 14, 2022, 04:43:44 PM »

Hello,

Thanks for the information.

I will check with our R&D team to see if they can explain the behaviour seen.

Best Regards,
FTDI Community
Logged

FTDI Community

  • Administrator
  • Hero Member
  • *****
  • Posts: 749
    • View Profile
Re: FTProg & FT260 - not perfect ?
« Reply #4 on: June 20, 2022, 04:43:52 PM »

Hello,

We used USBDeview and observe the same behaviour as you.

Then we used a usb analyzer which shows USB enumeration can get the Manufacturer description and Product description.
So we don’t know why USBDeview can not show these two descriptions correctly.

We also used the API “FT260_OpenByProductDescription” to test if we can access the FT260 device after programming the serial number.
The result is OK.

So maybe “USBDeview” has a minor  display error on these two descriptions.

Best Regards,
FTDI Community
Logged

ffred

  • Newbie
  • *
  • Posts: 15
    • View Profile
Re: FTProg & FT260 - not perfect ?
« Reply #5 on: June 21, 2022, 05:47:25 AM »

Ok, thanks very much for watching.
(Had to do a little pause in my development, but hope to get back to it very soon..)
Logged