An FTDI adapter is the one USB-to-serial cable most benches trust — until Windows 11 hands you a COM port that isn’t there, or Device Manager starts calling your board a “non-genuine device”. This is the whole FT232 driver story in one page: which file you actually need, how to install it cleanly, and what to do when the counterfeit lockout bites.

Which FTDI driver do you actually need?

FTDI publishes what looks like three different drivers. It isn’t three — it’s one package with two personalities. Nearly everyone needs the same file.

Driver What it gives you Use it when
VCP (Virtual COM Port) A normal COM port (COM3, COM7…) Arduino IDE, PuTTY, flashing tools, anything that asks for a COM port. This is the default.
D2XX Direct API access via FTD2XX.dll, no COM port Software that talks to the chip directly — JTAG tools, SPI/I²C bridging, OpenOCD, FT_PROG
CDM (Combined Driver Model) Both of the above in one installer What FTDI actually ships for Windows. Install it and you have both.

So the answer is: download the CDM installer. The current WHQL-certified release is 2.12.36.20 (it replaced 2.12.36.4), and it covers the whole family — FT232R, FT232RN, FT232H, FT2232, FT4232HA, FT234X and friends — on Windows 10, Windows 11 and Windows Server, x64 and ARM64.

⬇ FTDI CDM driver (VCP + D2XX)

Windows 10 / 11 · v2.12.36.20 · WHQL-certified · x64 and ARM64

Get it from FTDI (official)

We link FTDI’s own page instead of re-hosting this one. FTDI signs each build and the exact version matters for the counterfeit issue below — you want the genuine file, straight from the source. The page lists both the executable installer and the “setup executable” ZIP; the ZIP is what you want for the manual install route.

Installing on Windows 11, the clean way

Two routes. Try the first; the second is your fallback when Windows has already made a mess.

  1. Unplug the adapter first. Installing the driver before the device is connected lets Windows bind it correctly on first enumeration;
  2. Run the CDM setup executable from FTDI. It takes a few seconds and shows almost nothing — that’s normal;
  3. Plug the adapter in. Windows enumerates it twice: once as a USB Serial Converter, once as a USB Serial Port;
  4. Open Device ManagerPorts (COM & LPT). You should see USB Serial Port (COMx). Note the number — that’s what you pick in the Arduino IDE or PuTTY.

Manual route (when the installer doesn’t take): download the WHQL ZIP, extract it somewhere permanent, then in Device Manager right-click the problem device → Update driverBrowse my computer → point it at the extracted folder with “Include subfolders” ticked. Do this for both entries if you see two — the converter under USB controllers and the port under Ports.

Installed fine, but there’s no COM port

The most common FTDI complaint, and it’s almost never the driver being missing. Work down this list:

The “non-genuine device” problem

Here’s the one that sends people to forums. Cheap FT232RL boards flooded the market with cloned silicon, and FTDI fought back inside the driver. Depending on the driver year, a counterfeit chip gets one of two treatments:

The tell that you’re looking at a clone rather than a broken board: the device works on an older PC and misbehaves only after a Windows Update. Windows silently pulls the newest FTDI driver from Windows Update and reapplies it after every reset.

What to do about it

  1. Install an older FTDI driver. Version 2.12.28 is the one the repair community settled on — it predates the aggressive check, is still signed, and runs on Windows 10 and 11. Install it through the manual “Browse my computer” route above so Windows doesn’t substitute a newer one;
  2. Block the automatic replacement. Without this, step 1 lasts until the next update cycle. Use Microsoft’s Show or hide updates tool to hide the FTDI driver update, or turn off automatic driver downloads for the device in System Properties → Hardware → Device Installation Settings;
  3. Or rewrite the ID with FT_PROG. FTDI’s own EEPROM utility (D2XX driver required) can set the VID/PID back to 0403:6001 on a chip that got zeroed in 2014. It’s fiddly but it does recover bricked adapters;
  4. Or stop fighting it. A CH340 or CP2102 adapter costs a couple of dollars, and neither WCH nor Silicon Labs plays the lockout game. Keep one known-genuine FTDI cable for the gear that needs it and buy CH340 for everything else.

If this sounds familiar, it should — Prolific runs almost exactly the same playbook, which is why we wrote up the PL2303 “phased out” fix separately. Same disease, different vendor.

Is my FT232RL genuine?

Visual inspection is unreliable — the clones got good. Two checks that actually mean something:

Worth remembering: a clone that works is still a clone. It may fail on a driver update two years from now. For anything you ship or depend on, buy from a distributor who sources from FTDI directly.

Linux and macOS

Both ship the driver already. On Linux, ftdi_sio is in the kernel and your adapter appears as /dev/ttyUSB0 — the only usual hurdle is permissions, fixed by adding yourself to the dialout group. On macOS, Apple’s built-in AppleUSBFTDI handles it and the device shows as /dev/cu.usbserial-*; installing FTDI’s own kext is rarely needed on modern releases and often makes things worse. The counterfeit lockout is a Windows-driver behaviour, so clones frequently work fine on Linux while failing on the same bench’s Windows box.

Common questions

Is the FTDI driver free? Yes. It’s a free download from FTDI, royalty-free for use with FTDI silicon. Any site charging you for it, or wrapping it in a “driver updater”, is selling you something you already own.

Do I need both VCP and D2XX? Install the CDM package and you have both — they coexist without conflict. Only a handful of tools need D2XX, but there’s no cost to having it.

Windows 11 on ARM? Covered. The current release includes ARM64 binaries, which older 2.12.x builds did not.

My board says CH340 / CP2102, not FTDI. Then this driver won’t help — different silicon entirely. Go to the CH340 driver guide or the CP2102 guide.

My programmer uses an FT232H, not a serial port. That’s a D2XX job. Tools like OpenOCD and some SPI flashers want the raw interface, and a few need libusb bound to the device instead — that’s a Zadig task, not an FTDI-driver task. Don’t run Zadig on a plain FT232R you’re using as a COM port; it’ll take the port away.

Can I roll back if the new driver breaks something? Device Manager → the device → Properties → Driver → Roll Back Driver, if a previous version is still cached. Otherwise install the older package manually.

The verdict

For a genuine FTDI chip, this is a two-minute job: install the current CDM package, plug in, read the COM number, get back to work. All the pain in this topic traces back to one thing — counterfeit FT232RL silicon and a driver written to punish it. If your adapter spits NON GENUINE DEVICE FOUND! at you, you have a clone; roll back to 2.12.28, block the auto-update, and it works. Then quietly put a CH340 adapter in the drawer for next time.