libftdi Archives

Subject: Re: libftdi-1.0 release

From: Xiaofan Chen <xiaofanc@xxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Wed, 27 Jul 2011 16:54:04 +0800
On Wed, Jul 27, 2011 at 1:43 PM, Jason Hecker <jwhecker@xxxxxxxxx> wrote:
>> And please take note libftdi-1.0 is not formally released. I think
>> the main project using libftdi-1.0's async I/O feature is urjtag.
>
> Oh fair enough.  Well, I continue to use it anyway as I now have my
> device working with AVRDUDE.
>
>> The main difference is the dependency on libusb-1.0. And under
>> Windows, that means using WinUSB driver right now.
>
> Right.  That's not a show stopper but it's a wee hiccough.  Is there
> any reason that libftdi can't use the default FTDI driver that
> Windows7 happened to download when I plugged my device in?

Because libftdi depends on libusb. For Windows, libusb-win32
needs libusb0.sys driver. In the filter driver mode (libusb0.sys
on top of FTDI driver), it is possible to use both FTDI's d2xx
based application and libftdi-0.1x based application.

libusb-1.0 currently needs winusb.sys driver and not work
with FTDI driver.
http://www.libusb.org/wiki/windows_backend

There is a ticket to add libusb0.sys as a backend for libusb-1.0
Windows. There are two implementations now but none of
them has been integrated into the mainline git mainly due to the
slow response from the maintainer.
http://www.libusb.org/ticket/49

IMHO the development process from the current maintainer is really
flawed and that is why many people are not happy, including
the main developer of libusb-1.0 Windows backend.
http://libusb.6.n5.nabble.com/ATTN-Peter-libusb-devel-process-can-we-hear-from-your-position-and-see-if-compromise-can-be-reached-td4622670.html


>> There is a version of libusb-1.0 Windows which will work with
>> libusb0.sys but it is not matured yet and not integrated into the
>> main libusb-1.0 git tree yet.
>
> Ah, OK.  Pardon my ignorance is libusb0.sys a native Windows thing?

libusb0.sys is libusb-win32's kernel driver part. The dll part is
libusb0.dll.

Currently libusb-1.0.dll works on top of winusb.sys, in the
future, it will probably work on top of libusb0.sys or libusbk.sys
(future of libusb-win32).

More info:
http://sourceforge.net/apps/trac/libusb-win32/wiki
http://code.google.com/p/usb-travis/


>> I can make a devkit for MinGW-w64 64bit as well. :-)
>
> I am not sure of the advantage, seeing as the 32bit version works so
> well!  :)  Do make the 64 bit devkit as I will actually get about to
> making a 64 bit version of AVRDUDE for Windows as soon as I finish
> cleaning up my current code base.
>

I do not think there are any advantages to go to 64bit for avrdude.
However, there are applications which want to go for pure 64bit
for whatever reason, then they need to use 64bit of libusb0.dll
and libftdi.dll.


-- 
Xiaofan

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

Current Thread