Un-brick FTDI 232R USB serial converter or Fixing Fake FTDIs
Oder wie man einen FTDI USB Serieladapter wieder repariert, nachdem er durch einen FTDI Treiberupdate auf Version 2.11.0 unbrauchbar gemacht wurde.
Hintergrund
FTDI kämpft mit dem Problem dass ihre Produkte in riesigen Mengen gefälscht werden. Deshalb haben sie in dem Windowstreiber ab Version 2.11.0 (ebenfalls in 2.12.0) eine Funktion eingebaut, die die USB PID (Product ID) auf 0000 setzt. Das hat zur Folge, dass der Adapter auf keinem Gerät mehr richtig erkannt wird und so unbrauchbar ist.
Von diesem Problem ist so weit ich weiß nur Windows betroffen.
PID neu setzen
Wohl dem der Linux hat. Es gibt ein kleines Programm, dass zum konfigurieren des FTDI Chips unter Linux verwendet werden kann. Damit lässt sich die PID neu setzen.
- Den unbrauchbaren Adapter in einen USB Port stecken und mit
lsusb
nachschauen ob ein Gerät mit der VID:PID Kombination „0403:0000“ gelistet ist. - Download der Sourcen vom Linux FT232R Project und auspacken. (siehe weblinks)
- Diverse Tools zum kompilieren installieren. Am einfachsten über apt
sudo apt-get install make gcc libftdi-dev
- In der Kommandozeile in den ausgepackten Ordner wechseln und den Sourcecode kompilieren mit
make
- Auf der Kommandozeile
sudo ./ft232r_prog –old-pid 0x0000 –new-pid 0x6001
ausführen. - Adapter herausziehen und erneut einstecken. Mit
lsusb
sollte nun „0403:6001“ gelistet sein.
Unter Windows scheint man die PID auch neu setzen zu können. Laut [http://www.heise.de/newsticker/meldung/Treiber-gegen-gefaelschte-Chips-FTDI-ruft-Fake-Killer-zurueck-2435079.html|heise online] kann man mit einem FTDI-eignen Tool die PID auch zurücksetzen.
Treiber entfernen damit man den alten Treiber wieder installieren kann
Um einen mit dem oben beschrieben Verfahren reparierten Adapter kann auf allen Betriebsystemen wieder genutzt werden. Wer die automatischen Updates von Microsoft verwenden, sollte zwischenzeitlich auch keine Probleme mehr haben. Microsoft hat die Updates wieder auf den alten Treiber 2.10.0 zurückgesetzt.
Wer dem nicht trauen will oder den Treiber manuell installiert hat, sollte den Treiber de-installieren und den älteren 2.10.0 (immer noch auf der FDTI VCP Treiber Seite erhältlich) installieren.
- Dazu den Gerätemanager öffnen und nicht den Adapter einstecken.
- Im Menü den Punkt „Treiber von zur Zeit nicht verwendeter Geräte anzeigen“ (oder sinngemäß) aktivieren.
- Das Gerät aus der Liste wählen und rechte Maustaste drücken → entfernen.
- Im folgenden Dialog das Häkchen bei Treiber löschen setzten.
- Im Ordern
C:\Windows\System32\DriverStore\FileRepository
die zwei Ordnerftdibus
undftdiport
löschen. - Jetzt kann man einen alten Treiber installieren.