FTDI.FTD2XX_NET
1.3.3
dotnet add package FTDI.FTD2XX_NET --version 1.3.3
NuGet\Install-Package FTDI.FTD2XX_NET -Version 1.3.3
<PackageReference Include="FTDI.FTD2XX_NET" Version="1.3.3" />
<PackageVersion Include="FTDI.FTD2XX_NET" Version="1.3.3" />
<PackageReference Include="FTDI.FTD2XX_NET" />
paket add FTDI.FTD2XX_NET --version 1.3.3
#r "nuget: FTDI.FTD2XX_NET, 1.3.3"
#:package FTDI.FTD2XX_NET@1.3.3
#addin nuget:?package=FTDI.FTD2XX_NET&version=1.3.3
#tool nuget:?package=FTDI.FTD2XX_NET&version=1.3.3
FTD2XX_NET
A .NET wrapper for the FTD2XX DLL for FTDI devices. This package allows you to communicate with FTDI devices from your .NET applications.
Description
This is a .NET wrapper for the FTD2XX.DLL
, which is used to communicate with FTDI's USB to serial converters and other devices. It provides a convenient managed API to access FTDI driver functionality from C# and other .NET languages.
Requires: The FTD2XX.DLL
must be installed on the system. You can download the drivers from the FTDI website.
Requirements
- Operating System: Windows 10 or later (x86 or x64)
- FTDI Drivers:
FTD2XX.DLL
must be installed and registered in System32 or application folder.
Installation
Install via the NuGet Package Manager Console:
Install-Package FTDI.FTD2XX_NET
Or via the .NET CLI:
dotnet add package FTDI.FTD2XX_NET
Quick Start
using System;
using FTD2XX_NET;
class Program
{
static void Main()
{
var ftdi = new FTDI();
uint deviceCount = 0;
var status = ftdi.GetNumberOfDevices(ref deviceCount);
if (status == FTDI.FT_STATUS.FT_OK && deviceCount > 0)
{
Console.WriteLine($"Found {deviceCount} device(s).");
ftdi.OpenByIndex(0);
ftdi.SetBaudRate(115200);
var dataToWrite = System.Text.Encoding.ASCII.GetBytes("Hello FTDI");
uint bytesWritten = 0;
ftdi.Write(dataToWrite, dataToWrite.Length, ref bytesWritten);
var readBuffer = new byte[256];
uint bytesRead = 0;
ftdi.Read(readBuffer, (uint)readBuffer.Length, ref bytesRead);
var response = System.Text.Encoding.ASCII.GetString(readBuffer, 0, (int)bytesRead);
Console.WriteLine($"Received: {response}");
ftdi.Close();
}
else
{
Console.WriteLine("No FTDI devices found or failed to enumerate.");
}
}
}
Features
- Cross-Framework: Targets .NET Standard 2.0, .NET Framework 4.8, and .NET 8.0 (Windows)
- Automatic DLL Loading: Locates
FTD2XX.DLL
in System32 or local directory - Complete FTDI API: Device enumeration, open/close, read/write, purge, GPIO, EEPROM, bit-bang modes
- EEPROM Access: Read/write device EEPROM for FT232B, FT2232C, FT232R, FT2232H, FT4232H, FT232H, and X-Series
- Digital Signing: Binaries are signed with SHA-256 timestamp
Version History
- 1.3.3 — Latest updates and fixes
- 1.1.2 — Added X-Series support, fixed null-string handling in .NET 5
- 1.1.0 — Full 16-character serial support and FT4222 programming board support
- 1.0.16 — Overloaded constructor to allow custom DLL path
- 1.0.14 — X-Series devices support
- 1.0.12 — FT232H support
- 1.0.0 — Initial release
License
See LICENSE for details.
Support
- Visit FTDI Support for questions
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net8.0-windows7.0 is compatible. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 is compatible. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.8
- No dependencies.
-
.NETStandard 2.0
- No dependencies.
-
net8.0-windows7.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.