How to Install FTDI Drivers


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

There are a few different flavors of the FTDI Basic:

Arduino Pro 328 - 5V/16MHz

Arduino Pro 328 — 5V/16MHz

It’s blue! It’s skinny! It’s the Arduino Pro! SparkFun’s minimal design approach to Arduino. This is a 5V Arduino running the

LilyPad MP3

LilyPad MP3

The LilyPad MP3 Player is your all-in-one audio solution, containing an Arduino-compatible microcontroller, MP3 (and many oth

SparkFun FT231X Breakout

SparkFun FT231X Breakout

Introducing the SparkFun FT231X Breakout board, complete with the full UART hardware handshake feature! The pin-out of this b

Alchitry Ft Element Board

Alchitry Ft Element Board

The Alchitry Ft Element Board adds USB 3.0 200MB/s high speed interface to your Alchitry board stack via the USB-C connector.

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

This is the SparkFun USB to Serial Breakout for the FT232RL, a small board with a built in USB to serial UART interface. Thi

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

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

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

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

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

Choose ‘Extract’ and continue through the installation until it finishes.

Extract Files

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

Finish Installation

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!


Windows — In Depth

Plug in your FTDI using a USB cable. Windows doesn’t have the correct drivers, so let’s find them!

No Drivers

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

FTDI site

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

Open the start menu, right-click on ‘Computer,’ and left-click on ‘Properties’.

Computer Properties

Look under ‘System type,’ to see which version you have.

OS Type

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

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

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

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

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

Right-click on ‘FT232R USB UART,’ and left-click ‘Update Driver Software. ‘

Update Driver Software

Now choose ‘Browse my computer for driver software’.

Browse Computer

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

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

Include Subfolders

After a moment, you will see a success message! Left-click ‘Close’.

Success #1

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

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

Success #2

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!


Note: If you have more than one FTDI device plugged in to your computer at the same time, all of the devices will show up in the Arduino IDE’s Serial Port menu and device manager. To figure out which device is which, look under the Arduino IDE’s ‘Serial Port’ menu. Take note of the names of each device. Then unplug the device you want to use. Go back to the ‘Serial Port’ menu. The device you unplugged should no longer be listed. That is the device you want. Plug it back in, and select the device that has now reappeared.

You can determine what COM port an FTDI device enumerated to by opening the device manager and browsing the "Ports (COM & LPT)" tree.

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

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

Continue through the installation, and wait for it to finish. Then click ‘Close.’

Continue Through Installation

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


Note: If you have more than one FTDI device plugged in to your computer at the same time, all of the devices will show up in the Arduino IDE’s Serial Port menu and device manager. To figure out which device is which, look under the Arduino IDE’s ‘Serial Port’ menu. Take note of the names of each device. Then unplug the device you want to use. Go back to the ‘Serial Port’ menu. The device you unplugged should no longer be listed. That is the device you want. Plug it back in, and select the device that has now reappeared.

You can determine what COM port an FTDI device enumerated to by opening the Mac OS X’s "System Information" in Lion or later (or "System Profiler" in Snow Leopard and earlier versions of Mac OS). This is similar to the device manager used on Windows OS. Browse the Hardware > USB tree to determine what COM port the FTDI enumerated on.

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 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:

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


Plug in the FTDI device to a USB cable.

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

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:

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.

Arduino should open, and this time the ‘Serial Port’ menu is available.

Easy Peasy

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!