ef9611b1a8f0fdf27a60589c046cdc29f4a9375c
[libftdi] / ChangeLog
1 New in 1.4rcX - 2017-07-XX
2 -----------------------
3 * New ftdi_usb_open_bus_addr() open function
4 * Use BM/R series baud rate computation for FT230X
5 * ftdi_get_error_string() now returns const char*
6 * C++ API: Ability to open devices with empty descriptor strings
7 * C++ API: Fix enumerations for buffer purge and modem controls
8 * small build fixes and improvements in the python examples
9 * ftdi_eeprom / eeprom handling:
10   * New API function: ftdi_eeprom_get_strings()
11   * Fix USE_SERIAL handling for 230X type chips
12   * Make ftdi_read_eeprom_location() endianness independent
13   * Fix flashing of FT245R
14
15 New in 1.3 - 2016-05-20
16 -----------------------
17 * Added ftdi_usb_get_strings2() to prevent automatic device close (Fahrzin Hemmati)
18 * Added ftdi_transfer_data_cancel() for cancellation of a submitted transfer,
19   avoided resubmittion of a canceled transfer in the callbacks,
20   replaced calls to libusb_handle_events with
21   libusb_handle_events_timeout_completed (Eugene Hutorny)
22 * ftdi_eeprom / eeprom handling:
23   * Add support for arbitrary user data (Salvador Eduardo Tropea)
24   * Add --build-eeprom support (Salvador Eduardo Tropea)
25   * Fix use_usb_version config file option (Thilo Schulz)
26   * Ability to include other config files in EEPROM config file (Thilo Schulz)
27   * Add external oscillator enable bit (Raphael Assenat)
28   * Support channel configuration (Stephan Linz)
29   * Added --device option to ftdi_eeprom to specify FTDI device (Robin Haberkorn)
30   * Fixed EEPROM user-area space checks for FT232R and FT245R chips (Robin Haberkorn)
31 * Various improvements to CBUS handling, including the EEPROM (Robin Haberkorn)
32 * swig wrapper: Fix handling of binary strings in ftdi_write_data()
33   for python 3 (xantares09)
34 * cbus python example code (Rodney Sinclair)
35 * ftdi_stream: fix timeout setting (Ларионов Даниил)
36 * Fixed typo in CBUS defines: CBUSG_DRIVE1 -> CBUSH_DRIVE1
37
38 New in 1.2 - 2014-11-21
39 -----------------------
40 * Support for FT230X devices (Uwe Bonnes)
41 * ftdi_usb_get_strings(): Don't try to open an already open device (Denis Sirotkin)
42 * Support for finding devices bricked by the Windows driver (Forest Crossman)
43 * cmake build system: New LibFTDI1ConfigVersion.cmake file (xantares09)
44 * Fix a typo in the MPSSE command CLK_BYTES_OR_LOW (Benjamin Vanheuverzwijn)
45 * Minor fixes for MSVC++ (Andrei Errapart)
46 * Various small code improvements (Florian Preinstorfer, Jochen Sprickerhof, xantares09)
47
48 New in 1.1 - 2014-02-05
49 -----------------------
50 * Fix FT232H eeprom suspend pulldown setting (Davide Michelizza)
51 * Fix FT232H eeprom user area size (Davide Michelizza)
52 * Improved mingw build (Paul Fertser and Michel Zou)
53 * C++ wrapper: Get/set functions for USB timeouts (Jochen Sprickerhof)
54 * Partial support for FT230X (Nathael Pajani)
55 * New API function: ftdi_eeprom_set_strings() (Nathael Pajani)
56 * Prevent possible segfault in ftdi_eeprom_decode() (Nathael Pajani)
57 * Save device release number in eeprom (Jarkko Sonninen)
58 * Fix "self powered" eeprom flag (Jarkko Sonninen)
59 * Improved python wrapper (Michel Zou)
60 * Many buildsystem improvements (Michel Zou and Mike Frysinger)
61 * See the git history for more changes and fixes
62
63 New in 1.0 - 2013-01-29
64 -----------------------
65 * Ported to libusb 1.x (initial work by Jie Zhang)
66 * Many eeprom handling improvements (Uwe Bonnes, Anders Larsen)
67 * Renamed pkconfig, library .so etc. files to "libftdi1" (Intra2net)
68 * ftdi_eeprom is part of libftdi now (Intra2net)
69
70 * New baudrate calculation code + unit tests (Uwe Bonnes and Intra2net)
71 * Improved python bindings including python3 support (Michel Zou)
72 * Switched completely to cmake build system (Intra2net)
73 * cmake: Easy libftdi discovery via find_package() (Michel Zou)
74 * eeprom handling now done via get()/set() functions (Uwe Bonnes)
75 * C++ wrapper: Fixed use-after-free in List::find_all() (Intra2net)
76 * Documentation updates (Xiaofan Chen)
77 * See the git history for more changes and fixes
78
79 New in 0.20 - 2012-03-19
80 ------------------------
81 * Support for FT232H (Uwe Bonnes)
82 * Fixed install location of header files (Uwe Bonnes and Intra2net)
83 * Backported serial_test tool from libftdi 1.x (Uwe Bonnes)
84
85 New in 0.19 - 2011-05-23
86 ------------------------
87 * Make kernel driver detach configurable (Thomas Klose)
88 * Correct ftdi_poll_modem_status() result code (Tom Saunders)
89 * cmake build system improvements (Evgeny Sinelnikov)
90 * Fix uninitialized memory access in async mode (Intra2net)
91 * Support for FT232R eeprom features (Hermann Kraus)
92 * Fix size returned by ftdi_read_data (Hermann Kraus)
93 * C++ wrapper: Fix infinite recursion in set_bitmode (Intra2net)
94 * Improvements to the python wrapper (Flynn Marquardt and Chris Zeh)
95
96 New in 0.18 - 2010-06-25
97 ------------------------
98 * Add ftdi_eeprom_free() to free allocated memory in eeprom (Wilfried Holzke)
99 * More generic error message for the FTDI kernel driver (Intra2net)
100 * Honor CPPFLAGS in python wrapper build (Alexander Lehmann)
101 * cmake: Fix package creation on 32-bit machines (Uwe Bonnes)
102 * Fix swig argument constraints (Intra2net)
103 * Don't segfault if device is closed or ftdi context is invalid (Intra2net)
104 * Ability to disable build of examples / documentation (Mike Frysinger and Intra2net)
105 * Fix typo in python wrapper build (Mike Frysinger)
106 * Autoconf build system improvements (Mike Frysinger)
107
108 New in 0.17 - 2009-12-19
109 ------------------------
110 * C++ wrapper: Reduced code duplication and small other changes (Intra2net)
111 * Deprecated old ftdi_enable_bitbang() function (Intra2net)
112 * New ftdi_usb_open_desc_index() function (Intra2net)
113 * Added baud rate test example code (Intra2net)
114 * New serial input example code (Jim Paris)
115 * Fix modem status byte filtering for USB high speed chips (Intra2net and Jim Paris)
116 * Add bitmode for synchronous fifo in FT2232H (Uwe Bonnes)
117 * Fix usb_set_configuration() call on Windows 64 (NIL)
118 * Fix usb index in ftdi_convert_baudrate() for FT2232H/FT4232H chips (Thimo Eichstaedt)
119 * Set initial baudrate on correct interface instead of always the first one (Thimo Eichstaedt)
120 * Call usb_set_configuration() on Windows only (Uwe Bonnes)
121 * 64 bit and other buildsystem fixes (Uwe Bonnes)
122 * Don't build --with-async-mode w/ libusb-compat-0.1 (Clifford Wolf)
123 * Functions for read/write of a single eeprom location (Oleg Seiljus)
124 * Protect against double close of usb device (Nathan Fraser)
125 * Fix out-of-tree-build in python wrapper (Aurelien Jarno)
126 * Autoconf and doxygen cleanup (Jim Paris)
127
128 New in 0.16 - 2009-05-08
129 ------------------------
130 * C++ wrapper: Reopen the device after calling get_strings() in Context::open() (Marek Vavruša and Intra2net)
131 * C++ wrapper: Fixed an inheritance problem (Marek Vavruša and Intra2net)
132 * C++ wrapper: Relicensed under GPLv2 + linking exception (Marek Vavruša and Intra2net)
133 * Support for FT2232H and FT4232H (David Challis, Alex Harford and Intra2net)
134 * Support for mingw cross compile (Uwe Bonnes)
135 * Python bindings and minor autoconf cleanup (Tarek Heiland)
136 * Code cleanup in various places (Intra2net)
137 * Fixed ftdi_read_chipid in some cases (Matthias Richter)
138 * eeprom decode function and small cleanups (Marius Kintel)
139 * cmake system improvements (Marius Kintel and Intra2net)
140 * Fix compilation in -ansi -pedantic mode (Matthias Janke)
141
142 New in 0.15 - 2008-12-19
143 ------------------------
144 * Full C++ wrapper. Needs boost (Marek Vavruša and Intra2net)
145 * cmake rules (Marek Vavruša)
146
147 New in 0.14 - 2008-09-09
148 ------------------------
149 * Fixed flow control code for second FT2232 interface (Marek Vavruša)
150 * Ability to set flow control via one USB call (Marek Vavruša)
151 * 64 bit build support in the RPM spec file (Uwe Bonnes)
152 * Small fix to the RPM spec file (Uwe Bonnes)
153 * Ability to set RS232 break type (Intra2net)
154 * Grouped flow control and modem status code together (Intra2net)
155
156 New in 0.13 - 2008-06-13
157 ------------------------
158 * Build .spec file via configure.in (Intra2net)
159 * Fixed "libusb-config --cflags" call (Mike Frysinger and Intra2net)
160 * Always set usb configuration (Mike Frysinger and Intra2net)
161 * Improved libusb-win32 support (Mike Frysinger)
162
163 New in 0.12 - 2008-04-16
164 ------------------------
165 * Fix build of documentation for "out of tree" builds
166 * Fix USB config descriptor in the eeprom (Juergen Beisert)
167 * Ability to purge RX/TX buffers separately (Arnim Läuger)
168 * Setting of event and error character (Arnim Läuger)
169 * Poll modem status function (Arnim Läuger and Intra2net)
170 * Updated documentation and created AUTHORS file
171
172 New in 0.11 - 2008-03-01
173 ------------------------
174 * Vala bindings helper functions (ftdi_new, ftdi_free, ftdi_list_free2) (Even Nermerson)
175 * Support for different EEPROM sizes (Andrew John Rogers, andrew@rogerstech.co.uk)
176 * Async write support. Linux only and no error handling.
177   You have to enable it via --with-async-mode.
178 * Detection of R-type chips
179 * FTDIChip-ID read support (Peter Holik)
180
181 New in 0.10 - 2007-05-08
182 ------------------------
183 * Examples for libftdi_usb_find_all and CBUS mode
184 * Fixed ftdi_list_free
185 * Small cosmetic changes
186
187 New in 0.9 - 2007-02-09
188 -----------------------
189 * Fixed build without doxygen
190 * Correct .so file library version
191
192 New in 0.8 - 2007-02-08
193 -----------------------
194 * Complete doxygen documentation and examples
195 * Extended FT2232C bitbang mode example code (Max)
196 * ftdi_usb_get_strings function to get device ID strings (Matthijs ten Berge)
197 * Fix ftdi_read_pins on PowerPC systems (Thomas Fischl)
198 * Automatically detach ftdi_sio kernel driver (Uwe Bonnes and Intra2net)
199 * Configurable flow control (Lorenz Moesenlechner and Matthias Kranz)
200
201 New in 0.7 - 2005-10-11
202 -----------------------
203 * Baudrate calculation fix for FT2232C (Steven Turner/FTDI)
204 * Find all devices by vendor/product id (Tim Ansell and Intra2net)
205 * Documentation updates (Tim Ansell)
206
207 New in 0.6 - 2005-04-24
208 -----------------------
209 * Set library version on .so file again
210 * Configurable serial line parameters (Alain Abbas)
211 * Improved filtering of status bytes (Evgeny Sinelnikov)
212 * Extended FT2232C support (Uwe Bonnes)
213 * Small improvement to the baudrate calculation code (Emil)
214 * Error handling cleanup (Rogier Wolff and Intra2net)
215
216 New in 0.5 - 2004-09-24
217 -----------------------
218 * New autoconf suite
219 * pkgconfig support
220 * Status byte filtering now works for "big" readbuffer sizes (Thanks Evgeny!)
221 * Open device by description and/or serial (Evgeny Sinelnikov)
222 * Improved error handling (Evgeny Sinelnikov)
223
224 New in 0.4 - 2004-06-15
225 -----------------------
226 * Fixed filtering of status bytes (Readbuffer size is now 64 bytes)
227 * FT2232C support (Steven Turner/FTDI)
228 * New baudrate calculation code (Ian Abbott)
229 * Automatic detection of chip type
230 * Important: ftdi_write_data now returns the bytes written
231 * Fixed defaults values in ftdi_eeprom_initdefaults (Jean-Daniel Merkli)
232 * Reset internal readbuffer offsets for reset()/purge_buffers()
233 * Small typo fixes (Mark Haemmerling)
234
235 New in 0.3 - 2004-03-25
236 -----------------------
237 * Improved read function which takes arbitrary input buffer sizes
238   Attention: Call ftdi_deinit() on exit to free used memory
239 * Vastly increased read/write performance (configurable chunksize, default is 4096)
240 * Set/get latency timer function working (Thanks Steven Turner/FTDI)
241 * Increased library version because the changes require recompilation
242
243 New in 0.2 - 2004-01-03
244 -----------------------
245 * EEPROM build fix by Daniel Kirkham (Melbourne, Australia)
246 * Implemented basic ftdi_read_data() function
247 * EEPROM write fixes
248
249 New in 0.1 - 2003-06-10
250 -----------------------
251 * First public release