libftdi
12 years agoC++ wrapper: Reset internal USB device pointer on Context::close()
Thomas Jarosch [Mon, 16 Jan 2012 14:44:31 +0000]
C++ wrapper: Reset internal USB device pointer on Context::close()

12 years agoExample code: Fix compile warnings about unused variables
Thomas Jarosch [Mon, 16 Jan 2012 14:42:31 +0000]
Example code: Fix compile warnings about unused variables

12 years agocpp-wrapper: when using get-string-and-reopen method without having set up the usb...
Peter Schneider [Tue, 10 Jan 2012 10:09:11 +0000]
cpp-wrapper: when using get-string-and-reopen method without having set up the usb-device the currently opened usb-device is retreived from the usb-device-handle used in the ftdi context. this fixes the open methods of the cpp wrapper that do not get an usb-device by parameter.

12 years agoRemove duplicated udev rule.
Thomas Jarosch [Mon, 16 Jan 2012 14:24:35 +0000]
Remove duplicated udev rule.

Spotted by Rogier Wolff. Thanks.

12 years agoFix build on Mac OS X
Michel Zou [Mon, 9 Jan 2012 15:43:54 +0000]
Fix build on Mac OS X

12 years agoAdd missing malloc in ftdi_eeprom
Andreas Helmcke [Mon, 12 Dec 2011 14:54:00 +0000]
Add missing malloc in ftdi_eeprom

12 years agoFix boost include directory in unit test
Xiaofan Chen [Mon, 5 Dec 2011 11:44:53 +0000]
Fix boost include directory in unit test

12 years agoUpdate udev rule syntax for newer kernels
Thomas Jarosch [Tue, 29 Nov 2011 08:39:01 +0000]
Update udev rule syntax for newer kernels

Credit goes to Lucian Langa <cooly@gnome.eu.org>:

------------------------
SUBSYSTEM=="usb_device" syntax is old usb sysfs (usbfs)
support (kernel <2.6.22)

Correct syntax now should be:
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device"
------------------------

One clarification for the previous commit:

Additional udev rules credit goes to
Canyon Bliss <canyon.bliss+redhat@gmail.com>

12 years agoudev rules: Support all FTDI chip types
Lucian Langa [Mon, 28 Nov 2011 15:27:32 +0000]
udev rules: Support all FTDI chip types

12 years agoPython wrapper update
Michel Zou [Fri, 21 Oct 2011 12:21:52 +0000]
Python wrapper update

- wrapped ftdi_get_eeprom_buf
- use of ftdi_usb_find_all is easier
- useless usb_get_strings size args
- fixed possible memory leak from wrapping ftdi_new

12 years agoDrop 64bit lib suffix on debian systems
Michel Zou [Fri, 21 Oct 2011 12:17:49 +0000]
Drop 64bit lib suffix on debian systems

12 years agoEnhance python wrapper
Michel Zou [Mon, 17 Oct 2011 16:10:09 +0000]
Enhance python wrapper

- Updated functions prototypes in regard to the lib
- Made OUTPUT* typemaps active as they were misplaced regarding headers order
- Allowed use of ftdi_usb_get_strings
- Added an advanced example script (examples/python/complete.py)
- Stripped the 'ftdi_' suffix to avoid to write "ftdi.ftdi_usb_open(...)"; it becomes just "ftdi.usb_open(...)"
- Removed useless pointer functions since valid OUTPUT typemaps are there
- Some cleanup

12 years agoFix installaton of python wrapper
Michel Zou [Tue, 11 Oct 2011 08:44:26 +0000]
Fix installaton of python wrapper

--------------------------------------------
The python wrapper installation path is not correct:
-- Building python bindings via swig. Will be installed under /usr/site-packages

In fact it doesn't even rely on CMAKE_INSTALL_PREFIX because of this:
GET_FILENAME_COMPONENT(SITEPACKAGE ${PYTHON_LIB_INSTALL}/../site-packages ABSOLUTE)

I think it should more look like this: (here with CMAKE_INSTALL_PREFIX=/home/michel/Download/libftdi-git/build/install)
-- Installing: /home/michel/Download/libftdi-git/build/install/lib64/python2.7/site-packages/_ftdi.so
-- Installing: /home/michel/Download/libftdi-git/build/install/lib64/python2.7/site-packages/ftdi.py
--------------------------------------------

12 years agoIncrease ftdi_eeprom->cbus_function array again
Thomas Jarosch [Mon, 10 Oct 2011 06:19:05 +0000]
Increase ftdi_eeprom->cbus_function array again

12 years agoRemove errorneous ; after if
Thomas Jarosch [Sat, 8 Oct 2011 13:17:13 +0000]
Remove errorneous ; after if

Detected by my upcoming cppcheck check

12 years agoInterface can not be changed on an already open device
Thomas Jarosch [Fri, 7 Oct 2011 13:59:54 +0000]
Interface can not be changed on an already open device

Based upon code from Uwe Bonnes, improved by me.

12 years agoUse ftdi_new and not ftdi_init in the examples
Uwe Bonnes [Tue, 4 Oct 2011 12:57:12 +0000]
Use ftdi_new and not ftdi_init in the examples

At least our examples should use the library allocated buffer
and not a user allocated one.

12 years agoSolved another TODO entry
Thomas Jarosch [Fri, 30 Sep 2011 08:45:37 +0000]
Solved another TODO entry

12 years agoAdd example code demonstrating how to use the python wrapper
Thomas Jarosch [Thu, 29 Sep 2011 20:46:43 +0000]
Add example code demonstrating how to use the python wrapper

12 years agoRemove old ftdi_enable_bitbang() function. It was marked as deprecated for two years
Thomas Jarosch [Thu, 29 Sep 2011 20:09:34 +0000]
Remove old ftdi_enable_bitbang() function. It was marked as deprecated for two years

12 years agoSWIG wrapper: Mark ftdi_version_info.version_str and .snapshot_str read only
Thomas Jarosch [Thu, 29 Sep 2011 20:02:20 +0000]
SWIG wrapper: Mark ftdi_version_info.version_str and .snapshot_str read only

Fixes this warning:
Warning 451: Setting a const char * variable may leak memory.

12 years agoUse a private header for the private EEPROM structures
Uwe Bonnes [Thu, 29 Sep 2011 16:28:25 +0000]
Use a private header for the private EEPROM structures

I added the ftdi_i.h header to bindings/ftdi.i. Noe the bindings compile
again. Other things are untouched.

12 years agoUpgrade doxygen file with 'doxygen -u'
Thomas Jarosch [Thu, 29 Sep 2011 17:38:06 +0000]
Upgrade doxygen file with 'doxygen -u'

12 years agoQuiet normal doxygen output so we only see the useful messages
Thomas Jarosch [Thu, 29 Sep 2011 17:33:37 +0000]
Quiet normal doxygen output so we only see the useful messages

12 years agoSome more steps done towards 1.0
Thomas Jarosch [Thu, 29 Sep 2011 09:13:41 +0000]
Some more steps done towards 1.0

12 years agoMerge remote-tracking branch 'origin/get-library-version'
Thomas Jarosch [Thu, 29 Sep 2011 09:09:35 +0000]
Merge remote-tracking branch 'origin/get-library-version'

12 years agoMerge branch 'autoconf-removal'
Thomas Jarosch [Thu, 29 Sep 2011 09:06:52 +0000]
Merge branch 'autoconf-removal'

12 years agoIncrease library version to 0.99
Thomas Jarosch [Mon, 26 Sep 2011 09:14:22 +0000]
Increase library version to 0.99

12 years agoRemove unused templates directory
Thomas Jarosch [Mon, 26 Sep 2011 09:11:53 +0000]
Remove unused templates directory

It was autocreated by kdevelop back in the days.

12 years agoUpdate release process documentation
Thomas Jarosch [Mon, 26 Sep 2011 09:06:00 +0000]
Update release process documentation

12 years agoAdd 'make dist' target
Thomas Jarosch [Mon, 26 Sep 2011 09:05:30 +0000]
Add 'make dist' target

12 years agoRemove autoconf support. Project switched to cmake
Thomas Jarosch [Mon, 26 Sep 2011 09:00:12 +0000]
Remove autoconf support. Project switched to cmake

12 years agoMissing version header template file
Thomas Jarosch [Sun, 25 Sep 2011 10:10:33 +0000]
Missing version header template file

12 years agoAdded API to get libftdi library version.
Thomas Jarosch [Sun, 25 Sep 2011 10:08:55 +0000]
Added API to get libftdi library version.

Supports version number as integer, string
and possible git snapshot revision.

Based upon idea by Martin Zenzes.

12 years agoSilence gcc warnings about possible uninitialized variables
Thomas Jarosch [Sun, 25 Sep 2011 08:28:14 +0000]
Silence gcc warnings about possible uninitialized variables

12 years agoMerge branch 'new-baudrate-code'
Thomas Jarosch [Fri, 9 Sep 2011 09:45:10 +0000]
Merge branch 'new-baudrate-code'

12 years agoAdjust unit test to match baudrate calculation for AM type chips
Thomas Jarosch [Fri, 9 Sep 2011 09:34:02 +0000]
Adjust unit test to match baudrate calculation for AM type chips

12 years agoftdi_eeprom/main.c: Clean up the FTDI structure on exit
Uwe Bonnes [Thu, 8 Sep 2011 08:11:27 +0000]
ftdi_eeprom/main.c: Clean up the FTDI structure on exit

Valgrind still reports an error, but I suspect it is with (my version?)
of confuse.

12 years agoftdi_eeprom/main.c: Malloc the eeprom Buffer with the size exported by the API
Uwe Bonnes [Thu, 8 Sep 2011 08:11:14 +0000]
ftdi_eeprom/main.c: Malloc the eeprom Buffer with the size exported by the API

12 years agoThe BM_type_chip option no longer exists
Uwe Bonnes [Thu, 8 Sep 2011 08:11:00 +0000]
The BM_type_chip option no longer exists

12 years agoDocument what needs to be done for an official 1.0 release - based upon email from...
Thomas Jarosch [Thu, 8 Sep 2011 15:33:29 +0000]
Document what needs to be done for an official 1.0 release - based upon email from Xiaofan Chen

12 years agoUpdate PC-Lint settings file
Thomas Jarosch [Wed, 7 Sep 2011 09:24:18 +0000]
Update PC-Lint settings file

12 years agoFixture base class destructor should be virtual
Thomas Jarosch [Wed, 7 Sep 2011 09:21:13 +0000]
Fixture base class destructor should be virtual

12 years agoCosmetic changes and add Uwe to authors
Thomas Jarosch [Wed, 7 Sep 2011 08:56:01 +0000]
Cosmetic changes and add Uwe to authors

12 years agotest/baudrate.cpp: Add testcases for the rounding border cases
Uwe Bonnes [Tue, 6 Sep 2011 12:10:06 +0000]
test/baudrate.cpp: Add testcases for the rounding border cases

12 years agoRound the returned baudrate in ftdi_to_clkbits and adjust the changed values in test...
Uwe Bonnes [Tue, 6 Sep 2011 12:09:26 +0000]
Round the returned baudrate in ftdi_to_clkbits and adjust the changed values in test/baurate.cpp

12 years agotest/baudrate.cpp: Change the expected results to the present results. AM still has...
Uwe Bonnes [Tue, 6 Sep 2011 12:08:52 +0000]
test/baudrate.cpp: Change the expected results to the present results. AM still has some errors in the cornercase.

12 years ago2232C is a BM type chips for baudrate calculations
Uwe Bonnes [Tue, 6 Sep 2011 12:08:13 +0000]
2232C is a BM type chips for baudrate calculations

12 years agotest/baudrate.cpp: Use orthogonal names for the test-targets
Uwe Bonnes [Tue, 6 Sep 2011 12:07:35 +0000]
test/baudrate.cpp: Use orthogonal names for the test-targets

12 years agoExplain the index/value format baudrate setting
Uwe Bonnes [Tue, 6 Sep 2011 12:06:56 +0000]
Explain the index/value format baudrate setting

test/baudrate.cpp: Evaluate according to this explanation

12 years agoUnify baudrate unit test for chips behaving the same
Thomas Jarosch [Tue, 6 Sep 2011 10:24:09 +0000]
Unify baudrate unit test for chips behaving the same

12 years agoUpdate unit test to the new baudrate code
Thomas Jarosch [Mon, 5 Sep 2011 16:46:06 +0000]
Update unit test to the new baudrate code

12 years agoRewrite the baudrate calculation, tested for 232R and 232H
Uwe Bonnes [Tue, 12 Jul 2011 15:49:18 +0000]
Rewrite the baudrate calculation, tested for 232R and 232H

12 years agoUpdate baudrate unit test to show divisor/fractional bits/clock (suggested by Uwe)
Thomas Jarosch [Mon, 5 Sep 2011 16:37:54 +0000]
Update baudrate unit test to show divisor/fractional bits/clock (suggested by Uwe)

12 years agoexamples/serial_test.c: Use smaller buffers for lower baudrates to abort faster on ^C
Uwe Bonnes [Mon, 5 Sep 2011 12:25:41 +0000]
examples/serial_test.c: Use smaller buffers for lower baudrates to abort faster on ^C

12 years agoexamples/serial_test.c: Explicit set the line parameters
Uwe Bonnes [Mon, 5 Sep 2011 09:45:31 +0000]
examples/serial_test.c: Explicit set the line parameters

12 years agoexamples/serial_test.c: Use FTDI vendor ID as default
Uwe Bonnes [Mon, 5 Sep 2011 09:40:07 +0000]
examples/serial_test.c: Use FTDI vendor ID as default

12 years agoexamples/serial_test.c: Don't crash if no pattern on write is given
Uwe Bonnes [Mon, 5 Sep 2011 09:39:30 +0000]
examples/serial_test.c: Don't crash if no pattern on write is given

Exit immediate if invalid write pattern is given

12 years agoFix off-by-one buffer size error (detected by PC-lint)
Thomas Jarosch [Fri, 2 Sep 2011 12:22:40 +0000]
Fix off-by-one buffer size error (detected by PC-lint)

12 years agoUse default vendor/product strings for EEPROM when user doesn't supply some
Uwe Bonnes [Wed, 31 Aug 2011 17:16:52 +0000]
Use default vendor/product strings for EEPROM when user doesn't supply some

12 years agoEEPROM: treat USE_SERIAL as bool, not a flag
Uwe Bonnes [Wed, 31 Aug 2011 16:57:27 +0000]
EEPROM: treat USE_SERIAL as bool, not a flag

12 years agoftdi_eeprom: the chip type is given by the connected device, we may not change it
Uwe Bonnes [Wed, 31 Aug 2011 16:33:06 +0000]
ftdi_eeprom: the chip type is given by the connected device, we may not change it

12 years agoftdi_eeprom: Change sequenc of initialization to get the chip size right
Uwe Bonnes [Wed, 31 Aug 2011 16:31:20 +0000]
ftdi_eeprom: Change sequenc of initialization to get the chip size right

12 years agoftdi_eeprom: If we don't understand the argument, tell the user and abort
Uwe Bonnes [Wed, 31 Aug 2011 16:09:44 +0000]
ftdi_eeprom: If we don't understand the argument, tell the user and abort

12 years agoCosmetic changes to the unit test
Thomas Jarosch [Fri, 2 Sep 2011 11:15:04 +0000]
Cosmetic changes to the unit test

12 years agoAdd unit test for existing baudrate calculcation code
Thomas Jarosch [Fri, 2 Sep 2011 10:59:31 +0000]
Add unit test for existing baudrate calculcation code

Implement a table for every chip type
which stores the expected calculated result.

Highest speed currently tested is 921600

12 years agoAdd (optional) unit test infrastructure
Thomas Jarosch [Fri, 2 Sep 2011 09:40:41 +0000]
Add (optional) unit test infrastructure

Requires unit test framework from boost
so we can test the C and C++ code.

Also has automatic test registration
and the ability to run tests individually.

12 years agoFix include directories: Prefer local (probably newer) ftdi.h instead of the already...
Thomas Jarosch [Fri, 2 Sep 2011 09:36:20 +0000]
Fix include directories: Prefer local (probably newer) ftdi.h instead of the already installed one

12 years agoTry to inhibit programming EEPROM with data for a different device and zero EEPROM...
Uwe Bonnes [Sat, 2 Jul 2011 11:34:00 +0000]
Try to inhibit programming EEPROM with data for a different device and zero EEPROM memory image early

12 years agoNext try to get the encoding/decoding for the different FT2232/FT232H chip modes...
Uwe Bonnes [Wed, 20 Jul 2011 16:01:44 +0000]
Next try to get the encoding/decoding for the different FT2232/FT232H chip modes right

Using my EEPROM setting tool for some gadget here shown that I had the
chipmode en-/decoded wrong.

12 years agoSearch for any devices with one of the default VID/PID, if no VID/PID if given
Uwe Bonnes [Wed, 20 Jul 2011 09:12:52 +0000]
Search for any devices with one of the default VID/PID, if no VID/PID if given

12 years agoFix more occurences of serial_read -> serial_test
Thomas Jarosch [Wed, 27 Jul 2011 16:14:12 +0000]
Fix more occurences of serial_read -> serial_test

12 years agoRename serial_read to serial_test, as now write is also possible
Uwe Bonnes [Wed, 20 Jul 2011 09:12:49 +0000]
Rename serial_read to serial_test, as now write is also possible

12 years agoGive usage hints for handling empty EEPROM
Uwe Bonnes [Wed, 20 Jul 2011 09:12:44 +0000]
Give usage hints for handling empty EEPROM

12 years agoFT232H has even more config bytes and less user_area
Uwe Bonnes [Wed, 20 Jul 2011 09:12:42 +0000]
FT232H has even more config bytes and less user_area

12 years agoOnly try ftdi_usb_open_dev if devices found
Uwe Bonnes [Wed, 20 Jul 2011 09:12:39 +0000]
Only try ftdi_usb_open_dev if devices found

12 years agoBaud rate generation is the same as with FT2232H/FT232H
Uwe Bonnes [Wed, 20 Jul 2011 09:12:37 +0000]
Baud rate generation is the same as with FT2232H/FT232H

12 years agoMove opening the device before tampering with the values, move reading the device...
Uwe Bonnes [Wed, 20 Jul 2011 09:12:31 +0000]
Move opening the device before tampering with the values, move reading the device just after opening

12 years agoftdi_eeprom: Change handling the EEPROM size
Uwe Bonnes [Mon, 11 Jul 2011 13:04:39 +0000]
ftdi_eeprom: Change handling the EEPROM size

12 years agoftdi_eeprom: Use exported APIs only
Uwe Bonnes [Mon, 11 Jul 2011 13:03:43 +0000]
ftdi_eeprom: Use exported APIs only

12 years agoexamples/eeprom: With no VID/PID/desc/serial, print eeprom content
Uwe Bonnes [Mon, 11 Jul 2011 13:03:07 +0000]
examples/eeprom: With no VID/PID/desc/serial, print eeprom content

of all FTDI devices found with default VID/PID

12 years agoAdd ftdi_set_eeprom_buf() as proposed in ftdi_eeprom
Uwe Bonnes [Mon, 11 Jul 2011 13:02:23 +0000]
Add ftdi_set_eeprom_buf() as proposed in ftdi_eeprom

12 years agoAdd missing ftdi_get|set_eeprom_value entries
Uwe Bonnes [Mon, 11 Jul 2011 13:01:25 +0000]
Add missing ftdi_get|set_eeprom_value entries

12 years agoexamples/find-all: Use the new "find-all" option
Uwe Bonnes [Tue, 5 Jul 2011 16:03:48 +0000]
examples/find-all: Use the new "find-all" option

12 years agoftdi_usb_find_all: Only search for default devices if both VID AND PID are 0
Uwe Bonnes [Tue, 5 Jul 2011 16:03:26 +0000]
ftdi_usb_find_all: Only search for default devices if both VID AND PID are 0

12 years agoAllow to search for all FTDI standard VID/PID
Uwe Bonnes [Tue, 28 Jun 2011 15:04:43 +0000]
Allow to search for all FTDI standard VID/PID

Allow to search for all FTDI standard VID/PID by passing VID:PID 0:0
to ftdi_usb_find_all

12 years agoIncrement the refcount on devices we return from ftdi_usb_find_all()
Uwe Bonnes [Tue, 28 Jun 2011 14:08:20 +0000]
Increment the refcount on devices we return from ftdi_usb_find_all()

12 years agoDon't return before cleanup
Uwe Bonnes [Tue, 28 Jun 2011 13:12:14 +0000]
Don't return before cleanup

12 years ago1.0/src/ftdi_stream.c: Check for fitting device
Uwe Bonnes [Tue, 21 Jun 2011 14:14:48 +0000]
1.0/src/ftdi_stream.c: Check for fitting device

12 years ago1.0/examples/stream_test: Fix memory leakage pathes
Uwe Bonnes [Tue, 21 Jun 2011 14:14:01 +0000]
1.0/examples/stream_test: Fix memory leakage pathes

12 years agoOnly ftdi_init may call libusb_init, or we leak an USB Context
Uwe Bonnes [Tue, 21 Jun 2011 14:03:28 +0000]
Only ftdi_init may call libusb_init, or we leak an USB Context

12 years agoFix all leak in the examples shown with no device connected
Uwe Bonnes [Tue, 21 Jun 2011 13:15:39 +0000]
Fix all leak in the examples shown with no device connected

12 years agoFix calculation of the Mode Bitfield
Uwe Bonnes [Mon, 20 Jun 2011 13:07:59 +0000]
Fix calculation of the Mode Bitfield

12 years agoHardware mode definitions for EEPROM programming must follow new definition Some...
Uwe Bonnes [Fri, 17 Jun 2011 19:47:50 +0000]
Hardware mode definitions for EEPROM programming must follow new definition Some more FT232H related defines

12 years agoChange how the hardware mode is programmed to inhibit setting invalid bit combinations
Uwe Bonnes [Fri, 17 Jun 2011 19:23:55 +0000]
Change how the hardware mode is programmed to inhibit setting invalid bit combinations

12 years agoHandle the FT232H CBUS Bits, Keep Values list numbered
Uwe Bonnes [Fri, 17 Jun 2011 19:06:22 +0000]
Handle the FT232H CBUS Bits, Keep Values list numbered

12 years agoFT232h: Handle the FT1284 Mode bits
Uwe Bonnes [Fri, 17 Jun 2011 18:11:43 +0000]
FT232h: Handle the FT1284 Mode bits

12 years agoFT232H: Handle the EEPROM Bit for Enter Powerdsave on ACBUS7
Uwe Bonnes [Fri, 17 Jun 2011 17:49:25 +0000]
FT232H: Handle the EEPROM Bit for Enter Powerdsave on ACBUS7

12 years agoAdd FT232H drive/strength/slew/schmitt trigger
Uwe Bonnes [Fri, 17 Jun 2011 17:34:05 +0000]
Add FT232H drive/strength/slew/schmitt trigger

12 years agoAdd FT1284 driver mode and new VCP bit position
Uwe Bonnes [Fri, 17 Jun 2011 17:22:16 +0000]
Add FT1284 driver mode and new VCP bit position