Forum: Mikrocontroller und Digitale Elektronik Problemlösung für USB Baustein FT232B von FTDI


von Tralawatsch (Gast)


Lesenswert?

Hallo

Wir sind ein Industrieunternehmen und haben von FTDI den USB Baustein 
FT232B als virtuellen COM Port im Einsatz. Wie auch schon mehrfach in 
diesem Forum beschrieben, hatten auch wir massive Probleme mit diesem 
Baustein. Manchmal wurde der Baustein von Windows nicht richtig erkannt 
oder die Verbindung ist zwischendurch abgebrochen. Auch war der IC sehr 
anfällig für (EMV) Sttörungen. Interessant war, dass wir bei uns in der 
Firma diese Probleme kaum hatten, die Kunden allerdings haben sich 
massiv beschwert. Bis wir daraufgekommen sind, dass wir bei uns in der 
Firma als Test-PC's nur etwas ältere PC's (Pentium 3 Klasse) mit USB1.1 
Ports  haben, die Kunden nur neue PC's mit USB2.0. Bei PC's mit USB2.0 
Ports war eine Kommunikation so gut wie gar nicht möglich. Es liegt also 
nicht alles nur an dem FTDI Baustein, sondern die PC's sind nicht nur 
wesendlich schneller, sondern damit auch deutlich empfindlicher 
geworden.

Nun hatte ich die Gelegenheit diese Woche auf der Electronica in München 
mit einem Entwickler von FTDI zu sprechen und habe ihm die Probleme 
geschildert.
Der hat mir einige gute Tips gegeben, die ich hiermit auch anderen 
mitteilem möchte.

1. Man sollte KEINEN Keramikresonator wie er im Datenblatt beschriebenen 
ist verwenden! Manche haben so grosse Toleranzen, dass es mit USB2.0 
nicht mehr richtig funktioniert. Besser einen Quarz und die 
dazugehörigen Kondensatoren wie im Datenblatt auch beschrieben 
verwenden.

2. An die Datenleitungen zwischen der USB- Buchse und den 27Ohm 
Widerständen muss je ein Kondensator von 47pF nach USB-Masse! Das ist 
ein Tip der sehr viel gebracht hat. Wenn man im Internet lange genug auf 
der FTDI Seite sucht findet man auch diesen Hinweis, er ist allerdings 
gut versteckt!

3. Man sollte die USB-Masse mit dem USB-Schirm verbinden! Zumindest ist 
das meistens besser (ggf. Versuche machen). Im Datenblatt steht das 
anders drin.

4. Ein GUTES USB- Kabel verwenden! Die PC's mit USB2.0 Schnittstelle 
sind recht empfindlich. Also ein "doppelt geschirmtes" USB2.0 Kabel 
verwenden. Die meisten Kabel schimpfen sich zwar USB 2.0, sind es aber 
nicht. Die guten USB Kabel sind augenscheinlich dicker. Noch besser 
eines, das PC-Seitig einen Ferritkern hat. Entweder selber einen 
draufmachen oder ein fertiges Kabel mit Ferrit kaufen. Der höhere Preis 
lohnt sich.

Die USB Treiber finde ich entgegen den hier im Forum gemachten 
Kommentaren gar nicht so schlecht. Wir zumindest hatten bisher damit 
jedenfalls keine schwierigkeiten. Das meiste sind nämlich die oben 
beschriebenen Hardwareprobleme.

Übrigens...
Ich habe ihn auch noch nach dem Nachfolgetypen, dem FT232R gefragt...
Dieser Baustein hat den Oszillator, des EEPROM und die USB- Widerstände 
schon auf dem Chip. Ist also wesendlich einfacher zu beschalten.
Hier hat er mir noch den Tip gegeben, an den 3V3 Ausgang NUR den im 
Datenblatt beschriebenen Kondensator anzuschließen. Sonst nix! 
Insbesondere keine dynamischen Lasten wie Gatter oder uC's. Da sonst 
wohl die interne PLL zur Frequenzerzeugung nicht mehr stabil genug 
arbeitet.

So das war’s...
Ich freue mich auf interessantes Feetback in diesem Forum.








von Thomas (Gast)


Lesenswert?

Guter Beitrag; obwohl, ich denke, dass viele Anwender vor langer Zeit 
bereits auf den FT232R umgestiegen sind...

bei diesem bleibt zu erwähnen, (steht leider nicht im Datenblatt, und 
ich bin darauf rein gefallen), der MCUCLK wird an den C_BUS-PIN's nur 
ausgegeben, wenn sich der FT232R im configured Mode befindet -> und das 
tut er nur, wenn er am PC angeschlossen ist sowie der Treiber 
erfolgreich verbunden ist....

von Ssssss (Gast)


Lesenswert?

>Man sollte KEINEN Keramikresonator wie er im Datenblatt beschriebenen
>ist verwenden! Manche haben so grosse Toleranzen, dass es mit USB2.0
>nicht mehr richtig funktioniert. Besser einen Quarz und die
>dazugehörigen Kondensatoren wie im Datenblatt auch beschrieben
>verwenden.
Im Datenblatt steht aber meiner Erinnerung nach doch auch drin
dass man eben keinen Keramikres benutzen soll.
Bzw nur einen speziellen mit speziellen Toleranzen
(beziehe mich auf den FT245, sollte aber identisch sein).

Das kann ich bestätigen dass es mit (normalen) Keramik dingern probleme 
gibt.
An meinem (usb20) pc gings, am Laptop (nen älteres thinkpad) 
verabschiedete er sich immer mit diesen EMV meldungen.
Vernünftigen Quarz rein und das Problem war weg...

USB Schirm mit Platinen Masse zu verbinden verschlimmerte das bei mir 
nur noch.
Der vorgeschlagenen 47nF||1MOhm (?) gegen Masse brachte leichte 
Besserung.
Entgültig half aber nur der "echte" Quarz.

USB Treiber:
Die Linux libftdi funzt super (bis ~800kByte/s dann kommt mein 1ghz 
laptop nich mehr mit). Die d2xx irgendwas Lib vom Hersteller unter 
Windows streikt bei mir noch bissl. Ich Empfange konstant mit 
>600kByte/s Daten und wenn ich dann etwas vom PC aus senden will "hakt" 
das ganze >5sek. Wo/warum weiss ich noch nicht genau.
Vermute dass ich nicht gleichzeitig die FT_Write aufrufen darf während 
die FT_Read läuft (hab mehrere Threads bzw Qt Gui und nen Datenthread).
Hat da jemand zufällig Erfahrungen/nen Tipp ?

Bye, Simon

von Marcus (Gast)


Lesenswert?

Hallo,
wir haben auch schon ca. 4.000 FT245BM verbaut. Die USB 2.0 Probleme 
kenne
ich nur zu gut, seit wir die 47 pf an den Datenleitungen verbauen sind
diese Probleme allerdings beseitigt.

Auch wir haben den Schirm mit USB-GND Verbunden - sonst gibt es Probleme
bei der CE Abnahme.

Die Oszillatorprobleme kenne ich allerdings nicht - wir setzen die
Murata Keramikoszillatoren ein und haben damit keine Probleme.

Auch die Effekte schlechter USB Kabel kenne ich ...

Gruß, Marcus

von Tobias P. (hubertus)


Lesenswert?

Hallo,
ihr scheint euch ja recht gut mit diesen FTDI-Teilen auszukennen.
Frage: Wie lange dürfen die Leiterbahnen vom FT232BL bis zur USB-Buchse 
maximal sein? Und müssen die 27R-Seriewiderstände möglichst nahe beim 
Chip oder bei der USB-Buchse sein?

Ich freue mich auf eure Tipps,

Gruss
   Tobias

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Betreffen diese HW-Probleme auch den FT2232 ?

von Ralf (Gast)


Lesenswert?

Hallo Tobias & Markus:
Ihr solltet so einen alten Thread nicht mehr direkt fleddern, 
geschickter wäre ein neuer gewesen :)

> Wie lange dürfen die Leiterbahnen vom FT232BL bis zur USB-Buchse maximal
> sein?
Wir hatten anfangs Designs die auch bei 20-30mm gut funktioniert hatten. 
Generell gilt: USB- und Takt-/Quarz-/Resonatorsignale so nah wie 
möglich. Wenn die Möglichkeit besteht, nimm einen FT232R.

> Und müssen die 27R-Seriewiderstände möglichst nahe beim Chip oder bei der
> USB-Buchse sein?
Ich würde sagen, nahe beim Chip macht mehr Sinn.

> Betreffen diese HW-Probleme auch den FT2232 ?
Nicht direkt, aber andersrum gefragt: HAST du Probleme mit dem FT2232? 
Da es von dem Ding mittlerweile mindestens zwei oder drei Varianten gibt 
(D,H, etc.) wär's geschickt, wenn du sagst, welchen du hast?

Ralf

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Mit der HW des FT2232 habe ich noch keine Probleme, ich stehe allerdings 
auch erst bei der aller ersten Prototyp-Platine, hab den FT2232D.

Ich habe ein anderes Problem, der Treiber, aber das steht schon in einem 
anderen Thread:
Beitrag "Re: JTAG-Adapter für ARM/Cortex-M3 (STM32) mit UART"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.