libFTDI - FTDI USB driver with bitbang mode

libFTDI is an open source library to talk to FTDI chips: FT232BM, FT245BM, FT2232C, FT2232D and FT245R, including the popular bitbang mode. The library is linked with your program in userspace, no kernel driver required.

libFTDI works perfectly with Linux, Windows, MacOS X and BSD variants thanks to libusb.


News

2010-06-25: Version 0.18 of libftdi released

  • Add ftdi_eeprom_free() to free allocated memory in eeprom
  • More generic error message for the FTDI kernel driver
  • Honor CPPFLAGS in python wrapper build
  • cmake: Fix package creation on 32-bit machines
  • Fix swig argument constraints
  • Don't segfault if device is closed or ftdi context is invalid
  • Ability to disable build of examples / documentation
  • Fix typo in python wrapper build
  • Autoconf build system improvements
2009-12-19: Version 0.17 of libftdi released
  • C++ wrapper: Reduced code duplication and small other changes
  • Deprecated old ftdi_enable_bitbang() function
  • New ftdi_usb_open_desc_index() function
  • Added baud rate test example code
  • New serial input example code
  • Fix modem status byte filtering for USB high speed chips
  • Add bitmode for synchronous fifo in FT2232H
  • Fix usb_set_configuration() call on Windows 64
  • Fix usb index in ftdi_convert_baudrate() for FT2232H/FT4232H chips
  • Set initial baudrate on correct interface instead of always the first one
  • Call usb_set_configuration() on Windows only
  • 64 bit and other buildsystem fixes
  • Don't build --with-async-mode w/ libusb-compat-0.1
  • Functions for read/write of a single eeprom location
  • Protect against double close of usb device
  • Fix out-of-tree-build in python wrapper
  • Autoconf and doxygen cleanup
2009-05-08: Version 0.16 of libftdi released
  • C++ wrapper: Reopen the device after calling get_strings() in Context::open()
  • C++ wrapper: Fixed an inheritance problem
  • C++ wrapper: Relicensed under GPLv2 + linking exception
  • Support for FT2232H and FT4232H
  • Support for mingw cross compile
  • Python bindings and minor autoconf cleanup
  • Code cleanup in various places
  • Fixed ftdi_read_chipid in some cases
  • eeprom decode function and small cleanups
  • cmake system improvements
  • Fix compilation in -ansi -pedantic mode


License

The library itself is licensed under LGPL 2.1 (not any later),
the EEPROM programmer is licensed under GPL 2 (not any later)

© Intra2net AG 2010
Contact