Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[patch #8967] Change ft2xx library to ftdi_syncbb instead of libusb #706

Closed
avrs-admin opened this issue Dec 13, 2021 · 3 comments
Closed
Labels
enhancement New feature or request

Comments

@avrs-admin
Copy link

Mon 04 Apr 2016 12:15:05 PM UTC

FT2XX is more stable and drivers for windows is signed.
This patch changes libusb to ft2xx to ftdi_syncbb (FT245R and FT232R).

To compile you need:

  1. patch sources
  2. execute aclocal
  3. autoconf
  4. update config.guess to the newest
  5. configure && make

file #36833: avrdude-6.3-diff.tar.gz

This issue was migrated from https://savannah.nongnu.org/patch/?8967

@avrs-admin
Copy link
Author

Joerg Wunsch <joerg_wunsch>
Mon 04 Apr 2016 08:59:27 PM UTC

Well, from a licensing point of view, it's somewhat questionable
whether we'd really like to introduce a dependency on a
closed-source library in code licensed under GPL.  Such
dependencies are always tolerable if the library qualifies
as a "system library" (otherwise, you could not use GPL
software on a closed-source OS), but ftd2xx would certainly
not qualify as such.

Second, there are a number of platforms AVRDUDE supports
where libftd2xx is not available at all (*BSD, Solaris).

I'd like to see the real benefit of such an implementation
before having that in the code.  However, it makes more sense
to discuss that on the mailing list rather than in a patch
tracker.  In particular, your submission suggests the
existing implementation were less stable, so we certainly
ought to fix that.  (OK, the signed driver for Windows is
accepted as a benefit.)

Finally, some stylistic issues:

  • If at all, the use of ftd2xx must be completely optional,so people who cannot or don't want to install it don't lose
    any functionality.  Replacing the existing ft245r.c
    implementation is thus not acceptabel.
#elif defined(HAVE_LIBFTDI)&&(defined(HAVE_USB_H)||defined(HAVE_LUSB0_USB_H))

  • Spaces and braces are welcome. ;-)- If you wrote the file, please add your name in the copyrightheader.

  • In the comment in ftd2xx_initialize, there are non-ASCII,non-ISO8859-1, non-UTF-8 characters. ('\x93', '\x94')

@mariusgreuel
Copy link
Contributor

The new Windows MSVC version uses a modified libftdi library that works with ftd2xx.dll.

@mcuee
Copy link
Collaborator

mcuee commented Jun 12, 2022

Well, from a licensing point of view, it's somewhat questionable
whether we'd really like to introduce a dependency on a
closed-source library in code licensed under GPL.  Such
dependencies are always tolerable if the library qualifies
as a "system library" (otherwise, you could not use GPL
software on a closed-source OS), but ftd2xx would certainly
not qualify as such.

@dl8dtl
So you are also holding a more strict view of the "system libary" definition. In this case, the current official Windows binary's usage of avrdude-libftdi is also a bit questionable. The good thing is that avrdude-libftdi uses dynamic linking to D2XX DLL file, so it is probably still arguable.

Ref: avrdude-libftdi is basically a wrapper of D2XX.
https://github.com/avrdudes/libftdi
avrdudes/libftdi#1

@mcuee mcuee added the enhancement New feature or request label Jun 19, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants