FT60X Software Examples

This page contains examples specific to the FT600/FT601 SuperSpeed USB3.0 Series.

Please refer to the two documents below which help demonstrate how to program the FPGAs.

  1. AN_376 Xilinx FPGA FIFO master Programming Guide
  2. AN_377 Altera FPGA FIFO Master Programming Guide

D3XX DLL

The examples on this page rely on our D3XX driver and associated DLL. The DLL may be downloaded here.

A full programming reference manual for the DLL is also available for download here.

SuperSpeed C# Examples

The data loopback example project is one written in C sharp that will read and write data looped through an FPGA. The code will demonstrate the basic D3XX calls made via a .NET wrapper to open and close a device handle and transfer data in and out on one or multiple channels of the FT60X. The Data Loopback example may be run in conjunction with the same firmware designed to function in an ALTERA or XILINX FPGA or through your own designs which will read and write data to the FIFO interface of the FT600/601. The example source and executable may be downloaded here and is explained in detail in AN_375.

The Data Streamer C Sharp application is a simple Windows application written in C#. It demonstrates FT600/601 performance in transferring data from the host application to the FIFO master and vice versa. Note that FTDI provides two categories of demo applications – data loopback and data streaming. Ensure that the data streaming FPGA image is used when using this data streaming application. The example source and executable may be downloaded here and is explained in detail in AN_386 and and AN_387.

The API Usage demo written in C Sharp is designed to demonstrate the basic D3XX function calls to open and close a device handle and transfer data in and out on one or multiple channels of the FT600/601. It also demonstrates how to get device descriptors and use notification calls. The example may be run in conjunction with loopback firmware designed for the loopback application above.The API Usage demo source and executable may be downloaded here.

For ALTERA Data Loopback firmware click here. For XILINX Data Loopback firmware click here.

SuperSpeed FTD3xx NET Example

The D3XX .NET library is a .NET class library for the D3XX interface which is a proprietary interface specifically for FTDI SuperSpeed USB devices (FT600/601 series). It allows application developers to write C# applications for the FT600/601 ICs. The FTD3XX Net demo source and executable may be downloaded here.

SuperSpeed C++ Examples

The Data Loopback, Data Streamer and API Usage examples are designed to demonstrate the basic D3XX function calls to open and close a device handle and transfer data in and out on one or multiple channels of the FT600/601.

The Data Loopback example may be run in conjunction with the same firmware designed to function in an ALTERA or XILINX FPGA or through your own designs which will read and write data to the FIFO interface of the FT600/601. Example source and executable may be downloaded here and is explained in detail in AN_375.

The Data Streamer Demo Application is a simple multi-threaded Windows MFC-based application written in C++. It demonstrates FT600/601 performance in transferring data from the host application to the FIFO master and vice versa. Note that FTDI provides two categories of demo applications – data loopback and data streaming. Ensure that the data streaming FPGA image is used when using this data streaming application.The Data Streamer example source and executable may be downloaded here and is explained in detail in AN_386 and and AN_387.

The API Usage demo is designed to demonstrate the basic D3XX function calls to open and close a device handle and transfer data in and out on one or multiple channels of the FT600/601. It also demonstrates how to get device descriptors and use notification calls. The example may be run in conjunction with loopback firmware designed for the loopback application above.The API Usage demo source and executable may be downloaded here.

Product Xilinx Altera Remarks App Note
FT600 Spartan 16 Cyclone 16 FIFO 16 For FPGA configuration, refer to AN_421 FIFO Bus Master for FT60x
FT601 Spartan 32 Cyclone 32 FIFO 32 For FPGA configuration, refer to AN_421 FIFO Bus Master for FT60x

SuperSpeed Python Example

Python is an increasingly popular scripting language to develop application programs. To ensure the FT60X Series of susperspeed USB devices can be adopted as efficiently as possibly FTDI have provided a python wrapper for the D3XX driver and example code to demonstrate how the devices may be utilized via a python script. The examples may be downloaded here