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