How to Install FTDI Drivers

Pages
Contributors: Paul Smith
Favorited Favorite 12

Introduction

In this tutorial, we'll show you how to install FTDI drivers on multiple operating systems. Although this tutorial was written using Windows 7, Mac OS X 10.6, and Ubuntu 13.04, the process should be very similar, if not exactly the same, for other versions/variations of these operating systems.

FTDI Closeup

Suggested Reading

Before you begin this tutorial, you should have the Arduino IDE installed on your computer. Check out our Installing Arduino tutorial for a step by step guide.

Here are some other tutorials and concepts you may want to familiarize yourself with before reading this tutorial:

Alright, let's get to work! You can visit the next section to learn more about the FTDI Basic and why you need the FTDI drivers, or you can skip straight to the operating system of your choice!

Meet the FT232RL

The FT232RL is one of the more commonly used ICs used to convert USB signals to UART signals. This process is very handy in that it allows you communicate with and upload code to an Arduino or other microcontroller without the need for an external programmer. SparkFun carries a board called the FTDI Basic that conveniently breaks out the necessary pins on the FT232RL to perform these actions.

SparkFun FTDI

SparkFun's 5V FTDI Basic. Notice the IC--FT232RL.

There are a few different flavors of the FTDI Basic:

SparkFun IR Thermometer Evaluation Board - MLX90614

SparkFun IR Thermometer Evaluation Board - MLX90614

SEN-10740
$32.95
1
Arduino Pro 328 - 3.3V/8MHz

Arduino Pro 328 - 3.3V/8MHz

DEV-10914
$18.50
1
FTDI to USB-C Cable - 5V VCC-3.3V I/O

FTDI to USB-C Cable - 5V VCC-3.3V I/O

CAB-14909
$14.95
SparkFun FT231X Breakout Kit

SparkFun FT231X Breakout Kit

KIT-18291
$17.50

If you are using a 5 volt device, you will need the 5 volt FTDI. If you have a 3.3 volt device, you guessed it, use a 3.3 volt FTDI. LilyPad boards all operate on 3.3V.

We also carry a complete breakout board for the FT232RL should you need access to more pins than the FTDI Basic provides.

SparkFun USB to Serial Breakout - FT232RL

SparkFun USB to Serial Breakout - FT232RL

BOB-12731
$17.50
25

Here is a list of some SparkFun products that require the use of an FTDI Basic, come with an FTDI Basic, or have an FT232RL chip on board:

There are also some legacy Arduino boards that use the FT232RL. The Arduino Diecimila and Duemilanove main boards along with the original Arduino Mega all use the FT232RL IC. If you have one of these older versions, you'll want to use the FDTI drivers as well. For a complete list of all Arduino boards, check out this page. Newer versions of Arduino boards, such as the Uno, use a different communication IC, and they will not be covered in this tutorial.

Now that you know why the FTDI Basic is important and what products it is used for, let's learn how to install the drivers.

Windows - Quick and Easy

Note: The screen shots in this tutorial are from Windows 7. The process should be very similar for other versions of Windows. For most late versions of windows, such as 8.1 through Windows 10, the hardware may work fine without any driver install. If you can't locate a COM port for your hardware, then the set of instructions below is the possible fix. The exception to this is Windows 8. For instructions on how to disable device driver signatures, [please visit this tutorial](https://learn.sparkfun.com/tutorials/disabling-driver-signature-on-windows-8).
Note for Educators: You will most likely need to obtain administrative privileges from your network or IT administrator in order to install these drivers.
  1. By default, windows does not have FTDI drivers installed. If you plug in your FTDI, open the Arduino IDE, go to 'Tools -> Serial Ports', and see nothing, you need the drivers! Let's go get them!

    No Serial Ports

  2. Download a copy of the v2.12.28 FTDI VCP Driver Executable here:

    Windows FTDI VCP Driver Executable - v2.12.28 (CDM21228_Setup.exe)

    Otherwise, visit FTDI's VCP Drivers page for the latest download of the Windows FTDI Driver executable and clicking on the Window's "Available as a setup executable" link. Make sure to unzip the executable before proceeding to the next step.

    Download Windows Executable Executable

  3. Choose 'Run' once it is has finished downloading, or find the file you just downloaded "CDM21228_Setup.exe" and double-click it to run it.

    Choose The Run Option

    Note: At the time of this tutorial, the images were referencing the old “v2.12.00” FTDI VCP driver executable. The installation process will be the same regardless of the version number.
  4. Choose 'Extract' and continue through the installation until it finishes.

    Extract Files

  5. If everything was successful, you should see some nice green check marks, indicating success!

    Finish Installation

    Note: You may need administrator privileges on your machine in order for this to run properly. If things didn't work out, try the next section of this tutorial: Windows - In Depth.
  6. Open up the Arduino IDE, and go to 'Tools -> Serial Port'. If you now have a COM port, congratulations! Again, if something went wrong, either retry this tutorial or give Windows - In Depth a try!

Success

Windows - In Depth

Note: The screen shots in this tutorial are from Windows 7. The process should be very similar for other versions of Windows.
Note for Educators: You will most likely need to obtain administrative privileges from your network or IT administrator in order to install these drivers.
  1. Plug in your FTDI using a USB cable. Windows doesn't have the correct drivers, so let’s find them!

    No Drivers

  2. Navigate to the FTDI website, and choose the 'VCP' (Virtual Com Port) option near the bottom.

    FTDI site

  3. Now choose either the 32 bit version or the 64 bit version. Not sure which you have? The next steps will go over how to find that information. If you already know which version you are running, you may skip the next two steps.

    Pick OS Version

  4. Open the start menu, right-click on 'Computer,' and left-click on 'Properties'.

    Computer Properties

  5. Look under 'System type,' to see which version you have.

    OS Type

  6. Now go back to the FTDI site, right-click on the correct version, and save it to your computer. Remember where the files are saved. We'll need them in the next step.

    Save Drivers

  7. Navigate to the folder containing the files. They will be inside of a .zip file, so you'll need to extract them. Right-Click on the .zip file, and choose 'Extract All...' When the next window appears, as shown above, pay attention to where it is extracting the files. Make sure that 'Show extracted files when complete' is checked, and click 'Extract'.

    Extract Drivers

  8. When the extraction is complete, the folder is opened. Again, take note of this folder location. This is the one containing the drivers.

    Note the Folder Location

  9. We're almost there! Open the start menu, right-click on 'Computer', and left-click on 'Manage'. You will need administrator rights to do this. If you aren't an administrator on your computer, talk to the person who is and have them enter their credentials.

    Computer Manager

  10. Left-click on 'Device Manager' in the leftmost column. Here is where we see the offending hardware. It has an exclamation mark next to it.

    Select FTDI

  11. Right-click on 'FT232R USB UART,' and left-click 'Update Driver Software...'

    Update Driver Software

  12. Now choose 'Browse my computer for driver software'.

    Browse Computer

  13. Left-click 'Browse,' and navigate to the location of the extracted files. Choose the extracted folder. There is no need to search any further in the folder. Then left-click 'OK'.

    Choose Driver Folder

  14. Make sure 'Include subfolders' is checked (very important!), and left-click 'Next'.

    Include Subfolders

  15. After a moment, you will see a success message! Left-click 'Close'.

    Success #1

  16. The Device Manager page will refresh and you will see a new item with an exclamation mark named 'USB Serial Port'. You will need to install a second driver for the same device. Follow the steps 1-15, as before, and use the same driver folder too!

    Update Driver Software Again

  17. Once those steps are complete, you will see another success message! Left-click 'Close'.

    Success #2

  18. The Device Manager Page will refresh again and show 'USB Serial Port (COMxx),' where xx = some number. Congratulations, you now have the proper FTDI drivers and can begin to use your device!

    Finished

Mac

Notice: The screen shots in this tutorial are from OS X 10.6. The process should be very similar, if not exactly the same, for other versions of Mac OS X. If you are on OS X 10.10 Yosemite, follow along to install the drivers. If you need to install drivers on Yosemite, please visit the bottom of this section. Most people will be using the VCP drivers and not the D2XX drivers.
Note for Educators: You will most likely need to obtain administrative privileges from your network or IT administrator in order to install these drivers.
  1. Most of the time, when you install Arduino on Mac OS X, the drivers are installed automatically. However, if there was a problem with the installation and you don't see any options that include 'usbserial' under the 'Tools -> Serial Port' menu, then you will need to install the drivers. You may also need to install the full FTDI drivers if you are running OSX 10.10 or later. The factory drivers are not complete.

    No USB devices

  2. a.) OS X 10.9 (Mavericks) or above: Download this driver. Locate the file FTDIUSBSerialDriver_v2_4.2.dmg file that was downloaded to your computer, and double click on it to open \ run it.

    You may need to visit FTDI’s VCP Drivers page for the latest download of the Mac OS X FTDI Driver. Click on the link for the "Mac OS X 10.9 and above" driver's version. The image below shows version 2.4.2 so you would need to click on **2.4.2* to download the latest driver. If there is an update to the drivers by FTDI, the version number will change but it should be in the same location on the table.

    Latest Mac FTDI Driveres

    b.) OS X 10.8 (Mountain Lion) or lower: Download this driver. Locate the file FTDIUSBSerialDriver_v2_2_18.dmg file that was downloaded to your computer, and double click on it to open \ run it.

    If you are using the driver for OS X 10.8 (Mountain Lion) or older, you will see two files. Open up the driver file that corresponds with your operating system. For most users, it will be the second file:

    Choose Correct OS version

  3. Continue through the installation, and wait for it to finish. Then click 'Close.'

    Continue Through Installation

  4. Now open the Arduino IDE. Under 'Tools -> Serial Port' you will now see a 'usbserial' option. Congratulations, you're all set!

Success


Troubleshooting: Unidentified Developer Error

On newer versions of OS X, when you double-click the install packages inside the FTDI disk image, you may be presented with a very Windows-esque type error about not being able to open the files because they are not from an identified developers. This is very similar to the unsigned driver issue in Windows 8.

alt text

Quick Fix

To get around this, simply right-click the package you want to install, or press CTRL + click, if you don't have a right-click. Then select open from the menu.

alt text

You will then be given another window asking if you are certain. Click Open, and proceed with the installation as stated above.

alt text

In-Depth Fix

For a more permanent fix, you can follow these instructions. **However, this method is not suggested as it leaves your computer vulnerable. **

Open your System Preferences.

alt text

Once open, click the Security & Privacy icon.

alt text

Under the General tab, you should see a section about allowing the running of downloaded applications from specific sources. In preveious version of OS X, the default was set to Anywhere. However, the defualt setting is now Mac App Store and identified developers.

alt text

To use the FTDI drivers, you'll need to set this back to Anywhere. First, you may need to click on the little lock icon and enter your admin password to make these changes.

Once unlocked, click the Anywhere option. Another obnoxious window may appear asking you if you're sure you want to allow this. Click Allow from Anywhere. Or, you can follow the directions in this window, if you don't want to make your Mac "less secure."

alt text

You should now be able to install the FTDI drivers.

alt text


Troubleshooting: FTDI Drivers and OS X Yosemite

With Mac OS 10.9 (Mavericks) and later, Apple has built their own version of the FTDI VCP driver into the operating system (AN134). However, there seems to be some conflict between drivers from FTDIchip.com and the ones inherent to Apple. Luckily, there is a solution to this problem, and it comes from FTDI directly.

Quick Fix

If you are trying to use the FTDI VCP Driver in your applications, it will not work due to a conflict between the VCP and D2XX drivers. In order to get around this, the Apple supplied Driver must be uninstalled. Plug in the FTDI device in question, and type the following command in a Terminal window:

sudo kextunload –b com.apple.driver.AppleUSBFTDI  <ret>

In-Depth Fix

If the above doesn't work, you may have better luck using this script from FTDI.

Clicking on this file will bring up the Script Editor on all Macs. The script can be run by clicking on the run icon (black triangle). Again, make sure your FTDI device is connected.

You can make this script into a clickable icon by exporting the script as an application. In the Script Editor, select Export… from the File pull down menu:

alt text

In the Export dialog, select Application as the File Format. You can choose any name for the application.

alt text

You should now have an automated Apple Script icon to use on your Mac. With the Apple supplied Drivers uninstalled, you may return to the top of this section and install the FTDI VCP Driver as needed. Repeat this process for any other FTDI devices you are using. You may need to repeat this every time you restart your computer.


Troubleshooting: No FTDI Driver Installed

If you receive this error, it means that the driver has been uninstalled already, and you will need to install the FTDI VCP Driver, as stated above.

alt text

Linux

Note: The screen shot in this tutorial is from Ubuntu 13.04. The process should be very similar, if not exactly the same, for other versions/variations of this operating system.
Note: You will most likely need to obtain administrative privileges from your network or IT administrator in order to install these drivers.
  1. Plug in the FTDI device to a USB cable.

  2. When you download the Arduino IDE in Linux, the download comes with the FTDI drivers bundled with the IDE. However, if you just open Arduino from the desktop, you'll notice that, if you click on 'Tools', the 'Serial Port' option is grayed out.

    Serial Ports grayed out

  3. Linux includes the drivers necessary to use Arduino, and no additional install is needed. However, permissions might need to be configured. For current instructions on how to set up these permissions, visit this page.

    An alternative method is to run Arduino as root in the terminal with the following command:

    sudo arduino
    

    However, this method is encouraged only if you know what you are doing and should only be used as a last resort. You will also need to enter your administrative password to run as root.

  4. Arduino should open, and this time the 'Serial Port' menu is available.

    Easy Peasy

  5. The FTDI device will show up under this menu. It should be named /dev/ttyUSB0. The number may vary depending on how many USB devices you have plugged into your computer. That's all.

Resources and Going Further

Now that you've successfully got your FTDI up and running, it's time to incorporate it into your own project!


For more hardware specifications, check out the resource below:

SparkFun USB to Serial UART Boards Hookup Guide

February 18, 2016

How to use the SparkFun FTDI based boards to program an Arduino and access another serial device over the hardware serial port, without unplugging anything!

For more information about the drivers, check out the resources below:


Check out these tutorials to dive even deeper into the world of microcontrollers!

Or check out this blog post for more ideas.