FTDI Logo
www.ftdichip.com

Table of Contents
Keyword Index


Welcome to the FTDI Knowledgebase
Documentation
Application Notes
ANVNC1L-01 Vinculum VNC1L Bootloader
Vinculum VNC1L Bootloader
VNC1L Bootloader Commands
Set Data Variables
Read Flash Block
Write Flash Block
Echo
VNC1L Bootloader Pseudo Code
VNC1L Bootloader Hardware Interface
VNC1L Programming Over USB
VNC1L Programming From a COM Port
VNC1L Programming From an MCU
Revision History
Contact
Disclaimer
AN232R-01 Bit Bang Modes for the FT232R and FT245R
Bit Bang Modes for the FT232R and FT245R
Overview
Asynchronous Bit Bang Mode
Synchronous Bit Bang Mode
CBUS Bit Bang Mode
References
History, Disclaimer, Contact
Document Revision History
Disclaimer
Contact Information
AN232R-02 FTDIChip-ID for the FT232R and FT245R
FTDIChip-ID for the FT232R and FT245R
Overview
Using the FTDIChip-ID
Considerations
FT232R/FT245R Web Registration Example
References
History, Disclaimer, Contact
Document Revision History
Disclaimer
Contact Information
AN232R-03 FTDI Windows Driver Pre-Installation
FTDI Windows Driver Pre-Installation
Overview
DIFx Driver Package Requirements
Sample DPInst.xml File
Uninstalling Drivers
References
History, Disclaimer, Contact
Document Revision History
Disclaimer
Contact Information
AN232R-04 Windows Combined Driver Model
Introduction
Background
Architecture
Advantages
Document Revision History
Disclaimer
Contact Information
AN2232C-01 Command Processor for MPSSE and MCU Host Bus Emualtion Modes
Command Processor for MPSSE and MCU Host Bus Emulation
Overview
Data and Clock Definition
Data Bit Defintion
Clock Operation
Command Definitions
Bad Commands
Data Shifting Command Overview
MSB First
Clock Data Bytes Out on +ve Clock Edge MSB First (no Read)
Clock Data Bytes Out on -ve Clock Edge MSB First (no read)
Clock Data Bits Out on +ve Clock Edge MSB First (no Read)
Clock Data Bits Out on -ve Clock Edge MSB First (no Read)
Clock Data Bytes In on +ve Clock Edge MSB First (no Write)
Clock Data Bytes In on -ve Clock Edge MSB First (no Write)
Clock Data Bits In on +ve Clock Edge MSB First (no Write)
Clock Data Bits In on -ve Clock Edge MSB First (no Write)
Clock Data Bytes In and Out MSB First
Clock Data Bits In and Out MSB First
LSB First
Clock Data Bytes Out on +ve Clock Edge LSB First (no Read)
Clock Data Bytes Out on -ve Clock Edge LSB First (no Read)
Clock Data Bits Out on +ve Clock Edge LSB First (no Read)
Clock Data Bits Out on -ve Clock Edge LSB First (no Read)
Clock Data Bytes In on +ve Clock Edge LSB First (no Write)
Clock Data Bytes In on -ve Clock Edge LSB First (no Write)
Clock Data Bits In on +ve Clock Edge LSB First (no Write)
Clock Data Bits In on -ve Clock Edge LSB First (no Write)
Clock Data Bytes In and Out LSB First
Clock Data Bits In and Out LSB First
TMS Commands
Clock Data to TMS/CS Pin (no Read)
Clock Data to TMS/CS Pin with Read
Set / Read Data Bits High / Low Bytes
Set Data Bits Low Byte
Set Data Bits High Byte
Read Data Bits Low Byte
Read Data Bits High Byte
Loopback Commands
Connect TDI/DO to TDO/DI for Loopback
Disconnect TDI/DO to TDO/DI for Loopback
Clock Divisor
Set TCK/SK Divisor
Instructions for MCU Host Bus Emulation Mode
Overview
MCU Host Emulation Mode Read Short Address
MCU Host Emulation Mode Read Extended Address
MCU Host Emulation Mode Write Short Address
MCU Host Emulation Mode Write Extended Address
Instructions for use in both MPSSE and MCU Host Emulation Modes
Send Immediate
Wait On I/O High
Wait On I/O Low
History, Disclaimer, Contact Information
Document Revision History
Disclaimer
Contact Information
AN2232C-02 Bit Mode Functions for the FT2232C
Bit Mode Functions For the FT2232
Overview
FT_SetBitMode
FT_SetBitMode Example
FT_GetBitMode
FT_GetBitMode Example
References
History, Disclaimer, Contact
Document Revision History
Disclaimer
Contact Information
AN232B-03 Optimizing D2XX Data Throughput
D2XX Applications - Optimizing Data Throughput Over USB
Introduction
Transfer Sizes
Driver Operation
Optimizing Performance
Revision History, Disclaimer, and Contact Information
Document Revision History
Disclaimer
Contact Information
AN232B-04 Data Throughput, Latency and Handshaking
Data Throughput, Latency and Handshaking
Background
Data Transfer
The Need For Handshaking
Data Transfer Comparison
Continuous Data - Smoothing the Lumps
Buffers and the Latency Timer
Small Amounts of Data and End of Buffer Conditions
Adjusting the Receive Buffer Latency Timer
Effect of USB Buffer Size and the Latency Timer on Data Throughput
Adjusting the USB Transfer Size
Events and Flow Control
Event Characters
Flushing the Receive Buffer Using the Modem Status Lines
Flow Control
History, Disclaimer, Contact Information
Document Revision History
Disclaimer
Contact Information
AN232B-05 Configuring FT232R, FT2232C and FT232BM Baud Rates
Setting Baud Rates for FT232R, FT2232 and FT232BM Devices
Introduction
Setting the Baud Rate
Baud Rate Calculation
Aliasing Baud Rates
Aliasing
Aliasing Using the Original Sub-Integer Divisors
Aliasing Using the Additional FT232B Sub-Integer Divisors
Revision History, Disclaimer, Contact Information
Document Revision History
Disclaimer
Contact Information
AN232B-07 Configuring FTDI's VCP Drivers to use Location IDs
How To Configure VCP to Use a Specific COM Port
Introduction
Location IDs
Implementation
USBView
Limitations
Requirements
History, Disclaimer, and Contact Information
Document Revision History
Disclaimer
Contact Information
AN232B-10 Advanced Driver Options
Introduction
CDM USB Serial Converter Properties Page
CDM COM Port Advanced Properties Page
Modification of INF Files for Non-Default VID and PID Values
FTDIBUS.INF
FTDIPORT.INF
FTDIBUS.INF Options
Adjusting the Reset Pipe Retry Count
Using Location IDs
Limiting the Number of COM Ports That Can Be Installed
Override EEPROM Driver Setting
Power Management Options
USB Timeout
Disable EEPROM Writes
FTDIPORT.INF Options
Aliasing Baud Rates
Changing the Default USB Transfer Size
Setting a Custom Default Latency Timer Value
Enabling Modem Emulation Mode
Buffered Writes
Miscellaneous Options
Timeouts
Serial Enumerator
Serial Printer
Cancel If Power Off
Event On Surprise Removal
Set RTS On Close
Disable Modem Ctrl At Startup
System Options
Ignore Hardware Serial Number
Phantom Devices
Foreign Language Support
Co-Installer
Renaming Driver Files
Driver Pre-Installation
DPInst Packages
Uninstalling Drivers
Revision History
Disclaimer
Contact Information
Appendix
FTDIBUS.INF
FTDIPORT.INF
Data Sheets
Installation Guides
Mac OS X Installation Guide
Welcome to the Mac OS X Installation Guide
VCP Drivers
Installing VCP Drivers
Uninstalling VCP Drivers
D2XX Drivers
Installing D2XX Drivers
Uninstalling D2XX Drivers
Multiple VIDs/PIDs
Configuration Settings
VCP Troubleshooting
How do I know what my deviceID is?
The device does not appear in the /dev directory or the text "New Port Detected" is not displayed in SystemPreferences-Network
The device cannot be accessed even though the deviceID is supported in FTDIUSBSerialDriver
How do I open a Terminal window?
D2XX Troubleshooting
I can't open a port even though the installation has been successful
After running an application two or three times, communication stops
Problems upgrading to the latest D2XX driver
Revision History
Windows CE Installation Guide
Welcome to the Windows CE Installation Guide
Installing FT2232C, FT232BM, FT245BM, FT8U232AM and FT8U245AM Devices
Installing D2XX Drivers
Installing VCP Drivers
Troubleshooting
"Unidentified USB Device" dialog is not displayed when device is connected for the first time
"Error installing USB driver ftdi_d2xx.dll" message
"Error installing USB driver ftdi_ser.dll" message
"Unidentified USB Device" appears each time the driver name is entered
Device can write but cannot read
Bytes missing or data corrupt
Driver isn't sending or receiving any data
Revision History
Windows XP Installation Guide
Welcome to the Windows XP Installation Guide
Installing FTDI Device Drivers
Installing CDM Drivers
Uninstalling FTDI Devices
Uninstalling CDM Drivers
Troubleshooting
Windows XP cannot find drivers for my device
Windows XP forces a reboot after installing a device
Driver installation fails and Windows XP gives error code 10
FT232BM or FT245BM device hangs randomly during operation under Windows XP
Windows XP displays an error and then terminates installation
Revision History
Contact Information
Disclaimer
Windows 2000 Installation Guide
Welcome to the Windows 2000 Installation Guide
Installing FTDI Device Drivers
Installing CDM Drivers via the Found New Hardware Wizard
Uninstalling FTDI Devices
Uninstalling CDM Drivers
Troubleshooting
Windows 2000 cannot find drivers for my device
Windows 2000 forces a reboot after installing a device
Driver installation fails and Windows 2000 gives error code 10
FT232BM or FT245BM device hangs randomly during operation under Windows 2000
Revision History
Contact Information
Disclaimer
Windows 98 Installation Guide
Welcome to the Windows 98 Installation Guide
Installing FT232BM, FT245BM, FT8U232AM and FT8U245AM Devices
Installing D2XX Drivers
Installing VCP Drivers
Installing FT2232C Devices
Installing D2XX Drivers
Installing VCP Drivers
Uninstalling FT232BM, FT245BM, FT8U232AM and FT8U245AM Devices
Uninstalling D2XX Drivers
Uninstalling VCP Drivers
Uninstalling FT2232C Devices
Uninstalling D2XX Drivers
Uninstalling VCP Drivers
Troubleshooting
Windows 98 cannot find drivers for my device
Windows 98 forces a reboot after installing a device
Driver installation fails and Windows 98 gives error code 10
FT232BM or FT245BM device hangs randomly during operation under Windows 98
Windows 98 complains about missing .CAT files
Windows 98 complains about missing ftccomms.vxd file
Windows 98 installs FT2232C device as VCP even though D2XX drivers are selected in the EEPROM
Revision History
Programming Guides
D2XX Programmer's Guide
Welcome to the FTD2XX Programmer's Guide
Classic Interface Functions
FT_SetVIDPID
FT_GetVIDPID
FT_ListDevices
FT_Open
FT_OpenEx
FT_Close
FT_Read
FT_Write
FT_ResetDevice
FT_SetBaudRate
FT_SetDivisor
FT_SetDataCharacteristics
FT_SetFlowControl
FT_SetDtr
FT_ClrDtr
FT_SetRts
FT_ClrRts
FT_GetModemStatus
FT_SetChars
FT_Purge
FT_SetTimeouts
FT_GetQueueStatus
FT_SetBreakOn
FT_SetBreakOff
FT_GetStatus
FT_SetEventNotification
FT_IoCtl
FT_SetWaitMask
FT_WaitOnMask
FT_GetDeviceInfo
FT_SetResetPipeRetryCount
FT_StopInTask
FT_RestartInTask
FT_ResetPort
FT_CyclePort
FT_CreateDeviceInfoList
FT_GetDeviceInfoList
FT_GetDeviceInfoDetail
FT_GetDriverVersion
FT_GetLibraryVersion
FT_SetDeadmanTimeout
EEPROM Programming Interface Functions
FT_ReadEE
FT_WriteEE
FT_EraseEE
FT_EE_Read
FT_EE_ReadEx
FT_EE_Program
FT_EE_ProgramEx
FT_EE_UARead
FT_EE_UAWrite
FT_EE_UASize
Extended API Functions
FT_GetLatencyTimer
FT_SetLatencyTimer
FT_GetBitMode
FT_SetBitMode
FT_SetUSBParameters
FT-Win32 API Functions
FT_W32_CreateFile
FT_W32_CloseHandle
FT_W32_ReadFile
FT_W32_WriteFile
FT_W32_GetLastError
FT_W32_GetOverlappedResult
FT_W32_ClearCommBreak
FT_W32_ClearCommError
FT_W32_EscapeCommFunction
FT_W32_GetCommModemStatus
FT_W32_GetCommState
FT_W32_GetCommTimeouts
FT_W32_PurgeComm
FT_W32_SetCommBreak
FT_W32_SetCommMask
FT_W32_SetCommState
FT_W32_SetCommTimeouts
FT_W32_SetupComm
FT_W32_WaitCommEvent
Appendix
Type Definitions
FTD2XX.H
FTCI2C Programmer's Guide
Welcome to the FTCI2C Programmer's Guide
I2C Interface Functions
I2C_GetNumDevices
I2C_GetDeviceNameLocID
I2C_Open
I2C_OpenEx
I2C_Close
I2C_InitDevice
I2C_GetClock
I2C_SetClock
I2C_SetLoopback
I2C_SetMode
I2C_Write
I2C_Read
I2C_GetDllVersion
I2C_GetErrorCodeString
Appendix
Type Definitions
FTCI2C.H
FTCJTAG Programmer's Guide
Welcome to the FTCJTAG Programmer's Guide
JTAG Interface Functions
JTAG_GetNumDevices
JTAG_GetDeviceNameLocID
JTAG_Open
JTAG_OpenEx
JTAG_Close
JTAG_InitDevice
JTAG_GetClock
JTAG_SetClock
JTAG_SetLoopback
JTAG_GetGPIOs
JTAG_SetGPIOs
JTAG_Write
JTAG_Read
JTAG_WriteRead
JTAG_GenerateClockPulses
JTAG_ClearCmdSequence
JTAG_ClearDeviceCmdSequence
JTAG_AddWriteCmd
JTAG_AddDeviceWriteCmd
JTAG_AddReadCmd
JTAG_AddDeviceReadCmd
JTAG_AddWriteReadCmd
JTAG_AddDeviceWriteReadCmd
JTAG_ExecuteCmdSequence
JTAG_GetDllVersion
JTAG_GetErrorCodeString
Appendix
Type Definitions
FTCJTAG.H
FTCSPI Programmer's Guide
Welcome to the FTCSPI Programmer's Guide
SPI Interface Functions
SPI_GetNumDevices
SPI_GetDeviceNameLocID
SPI_Open
SPI_OpenEx
SPI_Close
SPI_InitDevice
SPI_GetClock
SPI_SetClock
SPI_SetLoopback
SPI_GetGPIOs
SPI_SetGPIOs
SPI_Write
SPI_Read
SPI_ClearDeviceCmdSequence
SPI_AddDeviceWriteCmd
SPI_AddDeviceReadCmd
SPI_ExecuteCmdSequence
SPI_GetDllVersion
SPI_GetErrorCodeString
Appendix
Type Definitions
FTCSPI.H
FTChipID Programmer's Guide
Welcome to the FTChipID Programmer's Guide
FTChipID Functions
FTID_GetNumDevices
FTID_GetDeviceSerialNumber
FTID_GetDeviceDescription
FTID_GetDeviceLocationID
FTID_GetDeviceChipID
FTID_GetChipIDFromHandle
FTID_GetDllVersion
FTID_GetErrorCodeString
Appendix
Type Definitions
FTChipID.H
Schematics
Solder Profiles
Utility Manuals
MProg
MProg Introduction
Installing MProg
Installing D2XX (CDM) Drivers
MProg Basics
Modes of Operation
Edit Mode Functions
Create a New EEPROM Template
Modify an Existing EEPROM Template
Device EEPROM Parameters
Basic Details
USB Power Options
USB Serial Number Control
USB Remote Wake Up
Plug & Play (FT232 Series Only)
BM/C Device Specific Options
FT2232C Device Options
FT232R Device Options
FT245R Device Options
FT2232D Device Options
Product and Manufacturer Descriptor Strings
Programming Options
Program Mode Functions
Scan for Devices
Erase All Existing Devices
Program All Existing Devices
Cycle Device
Read Devices
Read and Parse Devices
Appendix
Customising FTDI's CDM Drivers
Changing the FTDIBUS.INF File
Changing the FTDIPORT.INF File
Changing the CDM Uninstaller INI Files
Uninstalling MProg
VPROG
VPROG VNC1L Reflasher
VPROG VNC1L Reflasher Application
VPROG VNC1L Reflasher Hardware Considerations
Revision History
Contact
Disclaimer
VPLAY
VPLAY Application for VMUSIC
VPLAY Application
VPLAY Hardware Requirements
Revision History
Contact
Disclaimer
Drivers
FT232R
FT245R
FT2232C
FT232BM
FT245BM
FT8U232AM
FT8U245AM
FT8U100AX
Technical Support
General
Is the FT2232C a replacement for the FT232BM and the FT245BM?
Are lead free versions of FTDI devices available?
Application Software
General
Why is my device not detected by FT_ListDevices when a device is connected?
Is there a VCP Programmer's Guide?
How do I open COM10 or higher under Windows XP?
How can I open a port on the FT2232C using D2XX drivers?
C++ Builder
Why do I get a linker error?
LabVIEW
Why can't I run the FTDI LabVIEW examples?
LabWindows/CVI
Why doesn't my LabWindows/CVI project compile?
Utilities
MProg
Why does MProg not detect my device?
Where can I get MProg?
Drivers
General
Can I use FTDI's VID for my own product?
If I use FTDI's VID, will customers think my device is an FTDI device?
Are there drivers for MS-DOS available?
Are there drivers for Windows NT available?
Why do I get a 30 second delay when booting with FT232/FT245 devices attached?
Where can I find ports in the registry?
Do FTDI distribute driver source code?
Can I make FTDI devices appear as a different device class?
How do I enable asynchronous vendor commands?
How is the automatic serial number generated?
What Baud rates are achieveable?
Can I install VCP and D2XX drivers at the same time?
Why does my mouse not work when I connect my FTDI based GPS unit?
FT2232C
Can I set individual descriptors for each channel?
Can I use one port in VCP mode and the other in D2XX mode?
Why can't I install VCP drivers for my FT2232C?
Why can't I install D2XX drivers for my FT2232C?
FT232BM
Why can't I install D2XX drivers for my FT232BM under Windows XP?
FT245BM
Why can't I install D2XX drivers for my FT245BM under Windows XP?
Hardware
General
PCB Layout
How far can the USB connector be from the FTDI device?
Can FTDI devices be powered in a "mixed" mode?
What are the trace geometry requirements?
Should the 27Ohm series resistors be located next to the IC or the USB connector?
How long can my USB cable be?
What does the 1.5kOhm resistor on the USB DP line do?
Which oscillators/resonators are compatible with the reference designs?
Why doesn't my crystal oscillate?
Why doesn't my FT232BM/FT245BM work when connected to a USB 2.0 host controller or USB 2.0 hub?
Why do I get repeated data when I read from the FT245BM?
How can I tell if there is data available to read in the FT245BM?
Which EEPROM should I choose for my design?
How is the EEPROM data organised?
When do FTDI devices read the EEPROM?
Is there an IBIS model for FTDI devices?
What are the packing, handling and storage instructions for FTDI devices?
What is the material content of FTDI devices?
Modules
Why doesn't my DLP board power-up?
The LEDs don't flash on my US232B cable. Is it broken?

© Future Technology Devices International Ltd. 2006