Table des matières
comparatif des chips
http://www.ftdichip.com/Products/ICs.htm
chip à utiliser: http://www.ftdichip.com/Products/ICs/FT2232H.htm
doc
doc avec exemples payants sous windows
D2XX
D2XX distribué sans les sources d'apres le README.dat
http://www.ftdichip.com/Drivers/D2XX.htm
sudo cp ftd2xx.h /usr/include/ sudo cp WinTypes.h /usr/include/
projet Example1 copie dans: /home/shiva/ftdi/app1
g++ -c Example1.cpp g++ -o ex Example1.o -lftd2xx
lib alternative avec les sources
http://www.intra2net.com/en/developer/libftdi/
doc: http://www.intra2net.com/en/developer/libftdi/documentation/
usbview
Sous Mac
interface python: http://pypi.python.org/pypi/ftd2xx/bzr12
doc: http://staton.us/electronics/python/OSX_FTDI_USB.html
Il faut désactiver le module FTDIUSBSerialDriver qui préempte le periph pour faire l'émulation série, quand le ft est branché
sudo kextstat | grep FTDI 151 0 0x57c85000 0x7000 0x6000 com.FTDI.driver.FTDIUSBSerialDriver (2.2.14) <108 39 12> sudo kextunload /System/Library/Extensions/FTDIUSBSerialDriver.kext
pour réactiver le driver USB-série
sudo kextload /System/Library/Extensions/FTDIUSBSerialDriver.kext
Pour le FTDI2232 changer dans les programmes d'exemple de libftdi les identifiants pour qu'ils matchent ceux fournis par UsbProber
if ((ret = ftdi_usb_open(&ftdic, 0x0403, 0x6010)) < 0)
Sous windows
usb-i2C: http://ftdi-guyvo.blogspot.com/
installation pour libftdi sous windows: il faut cygwin, gcc etc: http://plugcomputer.org/plugwiki/index.php/Build_OpenOCD
http://urjtag.org/book/_compilation_and_installation.html
sinon cross compilation pour generer la dll depuis linux: http://developer.intra2net.com/mailarchive/html/libftdi/2010/msg00312.html
version précompilée: http://libftdi.141977.n3.nabble.com/How-to-run-both-libftdi-and-libftdi-1-0-under-Windows-td3311090.html
libusb
il y a besoin d'avoir libusb pour windows:
sources: http://sourceforge.net/apps/trac/libusb-win32/wiki
http://www.libusb.org/wiki/libusb-win32
http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/1.2.6.0/
binaires
binaires que je n'arrive pas à utiliser: http://sourceforge.net/projects/libusb-win32/
ATTENTION IL FAUT copier le fichier lusb0_usb.h en usb.h
Installation drivers FTDI
pour VCP (emulation port série) ou D2XX (fonctions plus avancées)
CDM= Combined Driver Model. Installer CDM20814_WHQL_Certified, permet une installation silencieuse des peripheriques
Désinstallation drivers FTDI pour certains periph
desinstaller avec CDMUninstaller (choisir id puis add puis remove)
redirection vers drivers libusb
lancer \libusb-win32-bin-1.2.6.0\bin\amd64\install-filter-win.exe de libusb choisir install a filter device brancher le periph usb → il doit apparaitre dans la liste cliquer dessus et faire install
pour remettre le driver d'origine, relancer install-filter-win.exe et faire des remove puis réinstaller les drivers d'origine (D2XX OU VCP)
Apparemment avec le driver CDM20814_WHQL_Certified, j'ai toujours accés à l'émulation port série même si le filtre libusb a été activé, donc il n'y a pas forcement intérêt à désactiver le filtre
fichier .pro pour qtcreator
TARGET = test1
TEMPLATE = app SOURCES += main.cpp\ mainwindow.cpp
HEADERS += mainwindow.h FORMS += mainwindow.ui HEADERS += "C:\Documents and Settings\MAC\Bureau\ftdiwin\libftdi-0.19_mingw32\include\ftdi.h" INCLUDEPATH += "C:\Documents and Settings\MAC\Bureau\ftdiwin\libftdi-0.19_mingw32\include" INCLUDEPATH += "C:\Documents and Settings\MAC\Bureau\ftdiwin\libusb-win32-bin-1.2.6.0\include" LIBS += "C:\Documents and Settings\MAC\Bureau\ftdiwin\libftdi-0.19_mingw32\lib\libftdi.a" LIBS += "C:\Documents and Settings\MAC\Bureau\ftdiwin\libftdi-0.19_mingw32\lib\libftdi.dll.a" LIBS += "C:\Documents and Settings\MAC\Bureau\ftdiwin\libusb-win32-bin-1.2.6.0\lib\gcc\libusb.a"
Utilisation en emulation port série sous windows
ATTENTION AVEC LES ADAPTATEURS USB SERIE, les numéros de ports grands tels que COM15 ne peuvent pas être utilisés par toutes les applis (hyperterminal fonctionne….). Il faut donc reconfigurer le numero de port com associés dans panneau de configuration→Avancé
linux
configuration EEPROM FT2232H
FTDI configuration eeprom
utiliser l'outils FT_Prog.exe
Onglet EEPROM: Device->Scan & Parse FT EEPROM->USB String Descriptor->Production Description: rentrer une chaine qui indique qu'on a désactivé le vcp Hardware Specific->Port A-> Driver-> D2XX Hardware Specific->Port A-> Hardware-> FT245 FIFO Hardware Specific->Port B-> Driver-> D2XX Hardware Specific->Port B-> Hardware-> FT245 FIFO USB Device Descriptor->idProduct->Custom VID/PID-> cocher Custom PID USB Device Descriptor->idProduct->Product ID: entrer 1234
c'est les 2 dernières étapes qui ont empéché OSX de prendre la main en émulation Port série