SparkFun Forums 

Where electronics enthusiasts find answers.

Open source ARM Debugger
By muddejp
#185837
I am using an FT4232 device that I would like to use to program my JTAG chain. I am trying to compile OpenOCD to use the CDM v2.12.06 WHQL Certified driver from FTDI.

I have followed all of the forum post describing building OpenOCD for use with FTDI. HappyJTAG2 and UrJTAG work with my device without having to use the Zadig utility to replace the FTDI driver.

I compile OpenOCD without errors and it seems to see the ftd2xx driver folder properly but when I run the .exe it will not see my device unless I use Zadig to replace the driver with WinUSB. With the WHQL driver I get the following:
Error: libusb_open() failed with LIBUSB_ERROR_NOT_FOUND
Error: no device found
Error: unable to open ftdi device with vid 0403, pid 6011, description '*' and serial '*"

Has anyone compiled OpenOCD with the new --enable-ftdi flag using the FTDI drivers successfully?

I am using MSYS2 64bit on a windows 7 professional 64 bit machine.

Here is my config statement
./configure --enable-maintainer-mode --disable-shared --enable-ftdi --enable-verbose --enable-verbose-jtag-io --with-ftd2xx-win32-zipdir=./ftd2xx

I can send the whole output but first I will just post some excerpts that seem to be relevant.
....
checking whether to build a release... no
configure: Using: ftdichip.com library: /home/First.Lastname/openocd-code/ftd2xx
checking whether to build Doxygen as HTML... yes
checking whether to build Doxygen as PDF... no
checking whether to enable verbose JTAG I/O messages... yes
checking whether to enable verbose USB I/O messages... yes
checking whether to enable verbose USB communication messages... yes
checking whether to enable malloc free space logging... no
checking whether to enable ZY1000 minidriver... no
checking whether to enable dummy minidriver... no
checking whether standard drivers can be built... yes
checking for LIBUSB1... yes
configure: libusb-1.0 header bug workaround: LIBUSB1_CFLAGS changed to "-isystem /mingw64/include/libusb-1.0"
checking for LIBUSB0... yes
checking for HIDAPI... yes
checking for environ in unistd.h and stdlib.h... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
.....
config.status: executing libtool commands
=== configuring in jimtcl (/home/First.Lastname/openocd-code/jimtcl)
configure: running /bin/sh ./configure.gnu --disable-option-checking '--prefix=/usr/local' '--enable-maintainer-mode' '--disable-shared' '--enable-ftdi' '--enable-verbose' '--enable-verbose-jtag-io' '--with-ftd2xx-lib=static' '--with-ftd2xx-win32-zipdir=./ftd2xx' 'PKG_CONFIG_PATH=/mingw64/lib/pkgconfig:/mingw64/share/pkgconfig' --cache-file=/dev/null --srcdir=.
Host System...x86_64-pc-mingw32
Build System...x86_64-pc-mingw32
C compiler... gcc -g -O2
C++ compiler... c++ -g -O2
......
OpenOCD configuration summary
--------------------------------------------------
MPSSE mode of FTDI based devices yes
ST-Link JTAG Programmer yes (auto)
TI ICDI JTAG Programmer yes (auto)
Keil ULINK JTAG Programmer yes (auto)
Altera USB-Blaster II Compatible yes (auto)
Versaloon-Link JTAG Programmer yes (auto)
Segger J-Link JTAG Programmer yes (auto)
OSBDM (JTAG only) Programmer yes (auto)
eStick/opendous JTAG Programmer yes (auto)
Andes JTAG Programmer yes (auto)
USBProg JTAG Programmer yes (auto)
Raisonance RLink JTAG Programmer yes (auto)
Olimex ARM-JTAG-EW Programmer yes (auto)
CMSIS-DAP Compliant Debugger yes (auto)

Then I run make and everything seems fine except that it doesn't work as I would expect.
Let me know if I should post the full outputs of configure and make.
Thanks for any help!