Ftdi Driver Mac Os X
Technical Note TN2315
- Ftdi Driver Installation Mac Os X
- Arduino Ftdi Driver Mac Os X
- Ftdi Chipset Driver
- Ftdi Driver Mac Os X 10.11
OS X 10.9 (Mavericks) or above:Download this driver. Locate the file FTDIUSBSerialDriverv24.2.dmgfile that was downloaded to your computer, and double click on it to open run it. You may need to visit FTDI’s VCP Driverspage for the latest download of the Mac OS X FTDI Driver.
With the release of OS X Mavericks, the AppleUSBFTDI kernel driver is included. This driver will affect existing applications that under OS X 10.8 and earlier, use the Future Technology Devices International (FTDI) D2XX libraries to communicate with hardware devices that are based on the FTDI USB-to-serial chipset. This Technical Note discusses the new Apple driver, how it affects these FTDI D2XX based applications and what alternatives such applications can implement as solutions for OS X Mavericks and beyond.
The AppleUSBFTDI kernel extension is provided with OS X Mavericks to formally support application communications with hardware using the Future Technology Devices International (FTDI) chipset. Prior to OS X Mavericks, as OS X was updated, compatibility issues occurred as a result of issues between the FTDIUSBSerialDriver.kext and OS X updates. Earlier versions of Mac OS X did not support FTDI drivers, so users would have to install third-party FTDI drivers. Somewhere around the release of macOS 10.12 Sierra (and maybe earlier), native support for FTDI drivers was included.
The AppleUSBFTDI kernel extension is provided with OS X Mavericks to formally support application communications with hardware using the Future Technology Devices International (FTDI) chipset. Prior to OS X Mavericks, as OS X was updated, compatibility issues occurred as a result of issues between the FTDIUSBSerialDriver.kext and OS X updates. To eliminate these compatibility issues, Apple has implemented the AppleUSBFTDI for applications to use for communication with FTDI chipset based hardware accessories.
There are two categories of FTDI applications that are affected by the presence of the AppleUSBFTDI kernel extension. This Technical Note discusses these types of applications, how they are affected and the compatability solutions available for OS X Mavericks.
FTDI Applications Requiring the FTDI Kext
One group of applications that communicate with FTDI based hardware requires the presence of the FTDI kernel extension. FTDI chipset based hardware presents itself as a USB Composite class device with a vendor specific interface. The interface is matched to the FTDI kext, that in turn creates a BSD serial port for use at the application layer. The application opens the serial port to communicate with the hardware.
Under OS X Mavericks, the AppleUSBFTDI kext will perform the same function as does the FTDI kext. When the hardware is attached, the AppleUSBFTDI kext is matched, and it will create a BSD serial port for applications to open. The Apple kext provides a BSD device name similar to the name provided by the FTDI driver. However, device name differences may occur and functionality may be slightly different. If the application fails to work with the hardware using the Apple driver, the preferred solution is update the application to work with the Apple driver. An application should use the IOKit framework APIs to detect the presence of the attached hardware and to identify the device name as demonstrated in the SerialSample code. If after opening the serial port there are driver options that fail with the Apple driver, please submit a bug report.
An alternative solution is for the original FTDI driver to be installed. Both drivers define vendor specific USB Interface match criteria, however, the Apple driver intentionally sets a lesser probe score match to ensure that the FTDI Interface driver matches, when present. It is important to verify the compatibility of the FTDI driver with OS X Mavericks as kernel panics have been observed.
FTDI Applications That Implement a User Client Driver (D2XX Driver)
The second group of applications that are affected by the presence of the AppleUSBFTDI kext, are those applications that implement user client drivers to communicate directly with the device from user space. Such applications will fail to open a connection with the hardware, because IOKit will already have matched the AppleUSBFTDI driver to the device. The application will see the exclusive access error 0xE00002C5 when attempting to open a connection with the device.
The recommended long term solution is to modify the application to open the BSD layer serial port for communication with the FTDI hardware. A short term solution is to implement a codeless kext, that will have a higher match priority than the AppleUSBFTDI kext to prevent IOKit from matching the AppleUSBFTDI kernel level driver to the hardware. An important ramification of the codeless kext solution is that an Installer process will be required to install the codeless kext. Under OS X Mavericks, the codeless kext must be signed.
Enclosed is a sample codeless kext project. The project includes a readme file describing the steps to modify that sample to match to your device. There are also instructions for installing the codeless kext to the
/System/Library/Extensions/ folder for test purposes only. Under OS X Mavericks, the official location for third party Extension files, is in
/Library/Extensions/. OS X Mavericks requires that the kext be signed using a special Developer ID. See the readme file for instructions on requesting this special Developer ID.
- Sample USB FTDI Codeless Kext project (‘tn2315_SampleUSBFTDICodelessKext.zip’, 55.4K)
Document Revision History
New document that discusses the AppleUSBFTDI driver in OS X Mavericks and the compatibility issues which arise with applications communicating with FTDI D2XX based hardware.
Ftdi Driver Installation Mac Os X
PLEASE NOTE — When updating drivers, refer to the following document: AN_107 — Advanced Driver Options
New drivers are now available to support the FT4222H — for D2XX drivers please click here.
Drivers are available which allow FTDI devices to work with the following operating systems:Windows CertifiedOthersLegacyWindows 10 (32/64)LinuxWindows Vista (32/64)Windows 8.1 (32/64)MAC OSXWindows XP (32/64)Windows 8 (32/64)Windows CE (Version 4.2 and greater)Windows 2000Windows 7 (32/64)Windows RTWindows MEWindows Server 2016AndroidWindows 98Windows Server 2012 R2 x64MAC OS9Windows Server 2008 R2 x64MAC OS8
Support for WinCE
FTDI drivers are available for Windows CE 4.2–5.2, 6.0/7.0 and 2013.
Support for older versions of Windows Desktop
NOTE: Microsoft have ended support for certifying XP and VISTA through their WHCK test program. From revision 2.12.24 with Device Guard Support, the driver will not load on XP or VISTA.
Differences in Driver API
For most of these operating systems two types of driver are available: Virtual COM Port (VCP) drivers and direct (D2XX) drivers. The VCP driver emulates a standard PC serial port such that the USB device may be communicated with as a standard RS232 device. The D2XX driver allows direct access to a USB device via a DLL interface.
To locate the drivers you want to install for a device, select which of the driver types you wish to use (VCPor D2XX) and then locate the appropriate operating systems. With the exception of Windows 98 and Windows ME, all devices are supported in each driver package.
If a VCP driver is required for Android please refer to the following application note: TN 132 Adding FTDI Devices VCP Driver Support to Android
D3XX drivers are only suitable for FTDI’s Superspeed USB bridge services (e.g. FT60x series).
Contacting Technical Support
Arduino Ftdi Driver Mac Os X
For technical queries relating to drivers or any of our other products or services, please send an email to our Customer Engineering Support team in your region:
Ftdi Chipset Driver
EMEAAmericasAsia Pacific (Taiwan office)Asia Pacific (China office)
Ftdi Driver Mac Os X 10.11
Alternatively, please click here to access the list of regional office telephone numbers if you wish to call one of the regional support teams directly.