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
FtdiMpsseforFt232rbecause 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
SendandSyncforFtdi.
- Updated the edition from 2018 to 2021.
0.32.0 - 2021-11-07
- Added
Dropfor 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-ffidependency from0.8.0to0.8.3.
0.30.0 - 2021-06-12
- Added support for
x86_64-apple-darwin, dynamic linking only.
- Updated
libftd2xx-ffidependency from0.7.0to0.8.0.
0.29.0 - 2021-05-29
- Added a
device_typefunction to work around a bug in the nativedevice_infofunction. - Added
wait_on_io_highandwait_on_io_lowMPSSE commands.
- Changed the
TryFrom<Ftdi>trait implementations to use the newdevice_typefunction 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
Debugfor all FTDI device structures.
- Changed the
with_descriptionargument name fromserial_numbertodescription. - Changed
Ft232handFt4232hTryFromtraits from a borrow to a move.
0.25.1 - 2021-03-13
- Fixed
list_devices_fsreturning anErrwhen FTDI devices with invalid EEPROMs are plugged in.
0.25.0 - 2021-02-28
- Updated
libftd2xx-ffidependency 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
udevrules recommendations. - Improved documentation annotations for platform-specific features.
- Fixed compilation errors for
aarch64-unknown-linuxtargets.
0.24.0 - 2020-12-28
- BREAKING CHANGE
readandwritemethods now returnResult<usize, FtStatus>whereusizeis the the number of bytes read or written. Previousreadandwritefunctionality that returnedResult<(), TimeoutError>is replaced byread_allandwrite_all.
0.23.0 - 2020-10-23
synchronize_mpssewill now timeout if no read data is received and a read timeout has been set.
0.22.0 - 2020-10-15
- Added
list_devices_fsto work around vendor driver bug. - Added
DeviceType::with_pid.
Speed,DeviceType, andDeviceInfoderiveOrdandPartialOrd.- The return vector from
list_devicesis now sorted.
0.21.1 - 2020-10-08
- Expose
ClockBits,ClockBitsIn,ClockBitsOutenums.
0.21.0 - 2020-10-07
- Added methods to
MpsseCmdBuilderfor clocking data bits in and out.
- Modified
clock_data_ininMpsseCmdBuilderto acceptusizeinstead ofu16to allow for the maximum command size (65536) to be used.
0.20.0 - 2020-10-05
- Changed logging in
set_bit_modeto hex.
- Remove unnecessary mutable reference in
MpsseCmdBuilder.
0.19.0 - 2020-09-30
- Changed the arguments of the
clock_data_inmethod inMpsseCmdBuilderto allow take a data length instead of au8buffer.
0.18.0 - 2020-09-26
- Added
MpsseCmdBuilderto enable writing commands in batches.
0.17.0 - 2020-09-13
- Added a changelog.
- Added a
clock_frequencyfield toMpsseSettings.
A changelog was not kept for prior releases.