libftdi Archives

Subject: How to run both libftdi and libftdi-1.0 under Windows

From: Xiaofan Chen <xiaofanc@xxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Mon, 5 Sep 2011 22:50:44 +0800
Just a mini-howto.

1. Build libftdi-1.0 and libftdi under Windows. You can also use my precompiled
binaries here.
http://code.google.com/p/picusb/downloads/list
a) libftdi1_devkit_MinGW32_31August2011.zip
b) libftdi_0.19git_devkit_mingw32_27August2011.zip

2. Use Zadig to install WinUSB driver (which replaces the FTDI driver so that
you can not use D2XX anymore).

3. Use libusb-win32's GUI Filter Wizard to install libusb-win32 filter on top
of the WinUSB driver.

After that you should be able to use both libftdi and libftdi-1.0 under Windows.

In the future, if libusb0.sys backend for libusb-1.0 Windows is integrated,
then you can skip step 2 and just install libusb-win32 filter on top of the
existing FTDI driver so that you can use D2xx and libftdi/libftdi-1.0 at
the same time. But that is not the case now.

Example run.

D:\work\libftdi\binary\libftdi1_devkit_MinGW32_31August2011\bin>xusb.exe
0403:6001
Using libusb v1.0.8.10341

Opening device...
bus: 1, port path from HCD: 3

Reading device descriptor:
            length: 18
      device class: 0
               S/N: 3
           VID:PID: 0403:6001
         bcdDevice: 0600
   iMan:iProd:iSer: 1:2:3
          nb confs: 1

Reading configuration descriptors:
             nb interfaces: 1
interface[0].altsetting[0]: num endpoints = 2
   Class.SubClass.Protocol: FF.FF.FF
       endpoint[0].address: 81
           max packet size: 0040
          polling interval: 00
       endpoint[1].address: 02
           max packet size: 0040
          polling interval: 00

Claiming interface 0...

Reading string descriptors:
   String (0x01): "FTDI"
   String (0x02): "FT232R USB UART"
   String (0x03): "A8007Ub5"

Releasing interface 0...
Closing device...

D:\work\libftdi\binary\libftdi1_devkit_MinGW32_31August2011\bin>eeprom
Chip type 3 ftdi_eeprom_size: 128
0x000: 00 40 03 04 01 60 00 00  a0 2d 08 00 00 00 98 0a .@...`.. .-......
0x010: a2 20 c2 12 23 10 05 00  0a 03 46 00 54 00 44 00 . ..#... ..F.T.D.
0x020: 49 00 20 03 46 00 54 00  32 00 33 00 32 00 52 00 I. .F.T. 2.3.2.R.
0x030: 20 00 55 00 53 00 42 00  20 00 55 00 41 00 52 00  .U.S.B.  .U.A.R.
0x040: 54 00 12 03 41 00 38 00  30 00 30 00 37 00 55 00 T...A.8. 0.0.7.U.
0x050: 62 00 35 00 c9 bf 1c 80  00 00 00 00 00 00 00 00 b.5..... ........
0x060: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00 ........ ........
0x070: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 0f 23 ........ .......#
0x080: 2c 04 d3 fb 00 00 c9 bf  1c 80 42 00 00 00 00 00 ,....... ..B.....
0x090: 00 00 00 00 00 00 00 00  38 41 32 52 4a 33 47 4f ........ 8A2RJ3GO
VID:     0x0403
PID:     0x6001
Release: 0x0000
Bus Powered:  90 mA USB Remote Wake Up
Manufacturer: FTDI
Product:      FT232R USB UART
Serial:       A8007Ub5
Checksum      : 230f
Internal EEPROM
Enable Remote Wake Up
PNP: 1
Channel A has Mode UART VCP
C0 Function: TXLED
C1 Function: RXLED
C2 Function: TXDEN
C3 Function: PWREN
C4 Function: SLEEP

D:\work\libftdi\binary\libftdi1_devkit_MinGW32_31August2011\bin>simple.exe
ftdi_read_chipid: 0
FTDI chipid: 30B7EF1

D:\work\libftdi\binary\libftdi1_devkit_MinGW32_31August2011\bin>find_all.exe
Number of FTDI devices found: 1
Checking device: 0
Manufacturer: FTDI, Description: FT232R USB UART

D:\work\libftdi\binary\libftdi1_devkit_MinGW32_31August2011\bin>find_all_pp.exe
Found devices ( VID: 0x403, PID: 0x6010 )
------------------------------------------------

D:\work\libftdi\binary\libftdi_0.19git_devkit_mingw32_27August2011\bin>testlibusb.exe
-v

Dev #1: FTDI - FT232R USB UART - Serial Number: A8007Ub5
bLength:             18
bDescriptorType:     01h
bcdUSB:              0200h
bDeviceClass:        00h
bDeviceSubClass:     00h
bDeviceProtocol:     00h
bMaxPacketSize0:     08h
idVendor:            0403h
idProduct:           6001h
bcdDevice:           0600h
iManufacturer:       1
iProduct:            2
iSerialNumber:       3
bNumConfigurations:  1
  wTotalLength:         32
  bNumInterfaces:       1
  bConfigurationValue:  1
  iConfiguration:       0
  bmAttributes:         a0h
  MaxPower:             45
    bInterfaceNumber:   0
    bAlternateSetting:  0
    bNumEndpoints:      2
    bInterfaceClass:    255
    bInterfaceSubClass: 255
    bInterfaceProtocol: 255
    iInterface:         2
      bEndpointAddress: 81h
      bmAttributes:     02h
      wMaxPacketSize:   64
      bInterval:        0
      bRefresh:         0
      bSynchAddress:    0
      bEndpointAddress: 02h
      bmAttributes:     02h
      wMaxPacketSize:   64
      bInterval:        0
      bRefresh:         0
      bSynchAddress:    0

D:\work\libftdi\binary\libftdi_0.19git_devkit_mingw32_27August2011\bin>simple.exe
ftdi_read_chipid: 0
FTDI chipid: 30B7EF1

D:\work\libftdi\binary\libftdi_0.19git_devkit_mingw32_27August2011\bin>find_all.exe
Number of FTDI devices found: 1
Checking device: 0
Manufacturer: FTDI, Description: FT232R USB UART


D:\work\libftdi\binary\libftdi_0.19git_devkit_mingw32_27August2011\bin>find_all_pp.exe
Found devices ( VID: 0x403, PID: 0x6010 )
------------------------------------------------

-- 
Xiaofan

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

Current Thread
  • How to run both libftdi and libftdi-1.0 under Windows, Xiaofan Chen <=