All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.33.1 - 2024-11-16
- Fixed a panic when opening a device with strings containing null bytes.
0.33.0 - 2024-09-05
- Added FT240X EEPROM.
- Removed
FtdiMpsse
forFt232r
because it is unsupported.
0.32.5 - 2024-08-19
- Added support for the 4232HA
0.32.4 - 2024-03-04
- Added EEPROM implementations for the 232R.
0.32.3 - 2023-10-19
- Allow a value of 0ms for
set_latency_timer
.
0.32.2 - 2022-12-14
- Fixed a typo where EEPROM drive-current sets schmitt input instead.
0.32.1 - 2022-08-27
- Implement
Send
andSync
forFtdi
.
- Updated the edition from 2018 to 2021.
0.32.0 - 2021-11-07
- Added
Drop
for FTDI types that will callclose
.
- Moved FTDI MPSSE types to a separate crate, ftdi-mpsse. These types are re-exported by this crate to reduce the number of breaking changes.
0.31.0 - 2021-06-30
- Added compile-time MPSSE command construction macros.
- Updated
libftd2xx-ffi
dependency from0.8.0
to0.8.3
.
0.30.0 - 2021-06-12
- Added support for
x86_64-apple-darwin
, dynamic linking only.
- Updated
libftd2xx-ffi
dependency from0.7.0
to0.8.0
.
0.29.0 - 2021-05-29
- Added a
device_type
function to work around a bug in the nativedevice_info
function. - Added
wait_on_io_high
andwait_on_io_low
MPSSE commands.
- Changed the
TryFrom<Ftdi>
trait implementations to use the newdevice_type
function instead ofdevice_info
.
0.28.0 - 2021-04-03
- Added support for the FT2232H.
0.27.0 - 2021-03-27
- Added the static feature flag to enable switching between static and dynamic linking of the vendor library.
- Changed the default linking strategy on Linux targets to dynamic. Note: To retain previous functionality with dynamic linking on Windows and static linking on Linux use cargo's resolver version 2.
0.26.0 - 2021-03-20
- Added
Debug
for all FTDI device structures.
- Changed the
with_description
argument name fromserial_number
todescription
. - Changed
Ft232h
andFt4232h
TryFrom
traits from a borrow to a move.
0.25.1 - 2021-03-13
- Fixed
list_devices_fs
returning anErr
when FTDI devices with invalid EEPROMs are plugged in.
0.25.0 - 2021-02-28
- Updated
libftd2xx-ffi
dependency from 0.5.1 to 0.6.0. This updates the vendor library from 1.4.8 to 1.4.22 for Linux targets.
0.24.1 - 2021-01-30
- Streamlined
udev
rules recommendations. - Improved documentation annotations for platform-specific features.
- Fixed compilation errors for
aarch64-unknown-linux
targets.
0.24.0 - 2020-12-28
- BREAKING CHANGE
read
andwrite
methods now returnResult<usize, FtStatus>
whereusize
is the the number of bytes read or written. Previousread
andwrite
functionality that returnedResult<(), TimeoutError>
is replaced byread_all
andwrite_all
.
0.23.0 - 2020-10-23
synchronize_mpsse
will now timeout if no read data is received and a read timeout has been set.
0.22.0 - 2020-10-15
- Added
list_devices_fs
to work around vendor driver bug. - Added
DeviceType::with_pid
.
Speed
,DeviceType
, andDeviceInfo
deriveOrd
andPartialOrd
.- The return vector from
list_devices
is now sorted.
0.21.1 - 2020-10-08
- Expose
ClockBits
,ClockBitsIn
,ClockBitsOut
enums.
0.21.0 - 2020-10-07
- Added methods to
MpsseCmdBuilder
for clocking data bits in and out.
- Modified
clock_data_in
inMpsseCmdBuilder
to acceptusize
instead ofu16
to allow for the maximum command size (65536) to be used.
0.20.0 - 2020-10-05
- Changed logging in
set_bit_mode
to hex.
- Remove unnecessary mutable reference in
MpsseCmdBuilder
.
0.19.0 - 2020-09-30
- Changed the arguments of the
clock_data_in
method inMpsseCmdBuilder
to allow take a data length instead of au8
buffer.
0.18.0 - 2020-09-26
- Added
MpsseCmdBuilder
to enable writing commands in batches.
0.17.0 - 2020-09-13
- Added a changelog.
- Added a
clock_frequency
field toMpsseSettings
.
A changelog was not kept for prior releases.