Menu

Home

Stephen Davies

yad2xx

Yet Another D2XX Interface. This project is a Java Native Interface (JNI) library that wraps the FTDI D2XX USB driver library. Currently it supports OS X 10.9+ (Mavericks and later) and Windows 7 and 8 64-bit platforms.

The project has two main functional areas:
1. A Java language binding to the FTDI D2XX library functions
2. A high level API for the MPSSE that simplifies SPI, I2C and JTAG interfaces

Getting Started

You must install the correct FTDI D2XX driver for your platform. Follow the FTDI instructions to configure your workstation.

OS X users need to understand their device driver options.

Project configuration and source builds are managed by Apache Maven. Each platform (OS X, Windows) requires two items to be built, a common Java library (.jar) and a platform specific native module (.dll/.jnilib). These are available for download in the files area.

Building from source on Windows, OS X or Linux can be complicated. Inexperienced developers should consider using the prebuilt binaries.

Once you have the sample program ListDevices working you'll want to take your first steps.

Project Status

Project is being developed incrementally on a needs basis. Common D2XX functions have been implemented. The function index has more detail.

Releases occur infrequently mainly due to the fact the current functionality is sufficient for the authors needs. Things tend to get done when people ask questions. Raising a ticket is the preferred way for you to ask a question.

1.0 - July 2018

Production ready code. Precompiled binaries are much easier than build from source, Windows especially.
1. Java 8
2. Support for infrequently called Windows only functions
3. Javadoc cleanup
4. SPI improvements, demo for DotStar LED

0.4 - November 2016

MPSSE support added. Implementation still very much alpha quality code so the binaries were never made available. Must build from source.

0.3 - July 2015

Added:
1. Some missing D2XX functions required for serial port management
2. Several sample programs

0.2 - September 2013

Adds support for serial port operations and EEPROM functions.

0.1 - June 2012

Initial release.

Project Admins:

Related

Wiki: BinaryInstallation
Wiki: BuildOSX
Wiki: BuildWindows
Wiki: FirstSteps
Wiki: Function Index
Wiki: OS X Device Drivers