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