Forum: Mikrocontroller und Digitale Elektronik FT245R sporalischer Initialisierungsfehler


von Johann (Gast)


Lesenswert?

Hallo @ all

Ich verwende den FTDI FT245R USB Chip. Dieser funktioniert auch wirklich 
gut. Ich habe nur noch ein Problem. Wenn ich den USB-Steckverbinder vom 
PC abziehe und dann ein wenig warte und den Stecker dann wieder 
reinstecker erkennt Windows manchmal nicht den FTDI-Chip. Es kommt so 
ein kleines Pupup bei der Uhr (unten rechts) Dort steht dann das das 
USB-Device nicht erkannt wurde. Wenn ich diesen Vorgang 100 mal 
wiederhole, dann tritt ca. 6 mal in unregelmäßigen Abständen dieser 
Fehler auf. Ich habe den neusten Treiber von Februar 2009 installiert.

Ich habe den FTDI-Chip wie im Datasheet beschrieben angeschlossen. 
Sofern ich den Stecker in die USB-Buchse stecke, werden die 5V vom 
USB-Chip durch einen Spanungsteiler auf 3,3V reduziert und dann auf den 
Reset-Pin gegeben. Dadurch erwacht der FTDI-Chip sofort wenn ich den 
USB-Stecker in die Buchse stecke. Nur ab und zu erscheint dieser Fehler. 
Nun habe ich schon einen Kondensator zwischegeschaltet um ein schingen 
auf der Resetleitung zu verhindern. Dies hat jedoch nicht den 
gewünschten Efekt gebracht.

Der FTDI-Chip wird von bekommt seine Versorgungsspannung vom Board und 
nicht über die USB-Leitung. Jedoch steht im EEPROM das Häckchen bei 
BUS-POWERED. IST dies richt?

Ist dies nun ein Hardwarefehler oder ist der Treiber fehlerhaft?

Weiß jemand noch einen Rat?

von Johann (Gast)


Lesenswert?

Was mir noch aufgefallen ist das beim reinstecken des Steckers in die 
Buchse Windows immer unterschiedlich lange benötigt, bis der Chip 
erkannt ist.

Manchmal benötigt er nur 1 Sekunde, jedoch manchmal auch 30 Sekunden. 
Das finde ich schon merkwürdigt. Ich benutze keine eigene Software, 
sonder sehe diese im Gerätemanager und kann dies auch über einen 
Signalton erkennen.

von Johann (Gast)


Lesenswert?

Kann ich Flags beim Treiber verändern oder muss ich eine neue Firmware 
auf diesen Chip brennen?

von Marco G. (stan)


Lesenswert?

Das kannst du mit MProg von FTDI ändern.

http://www.ftdichip.com/Resources/Utilities.htm

von Johann (Gast)


Lesenswert?

Das Programm habe ich schon ausprobiert. Jedoch was soll ich da 
verändern?

Viele Paramater gibt es ja nicht?. Kann es sein das auf meine D+ und D- 
Spikes drauf sind?

von Gast (Gast)


Lesenswert?

Schaltplan?

von Johann (Gast)


Lesenswert?

Hier ist der Schaltplan:

Sorry der Schaltplan ist verdreht.

Liegt es vielleicht an den Kondensatoren bei der D+ und D- Leitung. Sind 
diese vielleicht zu ungenau?

Ich habe auf der D+ und D- Leitung ständig Pulse. Es sind ca. 13 Pulse. 
Jeder Pulse ca 220ns lang. Dannn kommt eine längere Pause und es werden 
wieder Pulse übertragen. Sendet der Host ständig Daten über die D+ und 
D- Leitung?

von Johann (Gast)


Angehängte Dateien:

Lesenswert?

Oh den Anhang vergessen.

von Maik F. (sabuty) Benutzerseite


Lesenswert?

- Willst du mit C26 und L1 einen Schwingkreis bauen?

- C60 und C27 finde ich im Datenblatt so nicht, die Datenleitungen 
werden ohne Kondensatoren an den IC geführt.

von holger (Gast)


Lesenswert?

>Liegt es vielleicht an den Kondensatoren bei der D+ und D- Leitung. Sind
>diese vielleicht zu ungenau?

Kannste weglassen.

>Ich habe auf der D+ und D- Leitung ständig Pulse. Es sind ca. 13 Pulse.
>Jeder Pulse ca 220ns lang. Dannn kommt eine längere Pause und es werden
>wieder Pulse übertragen. Sendet der Host ständig Daten über die D+ und
>D- Leitung?

Wie soll der Host wohl sonst erkennen das das USB Gerät
gerade abgezogen wurde?

von Johann (Gast)


Lesenswert?

Ich dachte das erkennt er über die Signalpegel. Ich wußte nicht das er 
ständig die Leitung pollt.

Ich habe gelesen das diese 47pF sehr genau sein müssen. Verwendet habe 
ich 16V 47pF Keramik Kondensatoren. Müssen diese vielleicht genauer 
sein?

von Maik F. (sabuty) Benutzerseite


Lesenswert?

Johann schrieb:
> Ich habe gelesen das diese 47pF sehr genau sein müssen. Verwendet habe
> ich 16V 47pF Keramik Kondensatoren. Müssen diese vielleicht genauer
> sein?

Wo hast du das gelesen?

Tipp: Lass diese Kondensatoren weg.

von Michael U. (amiga)


Lesenswert?

Hallo,

die Kondensatoren sind mir auch noch nicht begegnet.
Ich habe hier mehrere FT245R im Einsatz, als c't-Bot Modul, aud 
Steckbrett oder Lochraster mit DIL-Adapter, bisher keine Probleme.

Auch die Variante mit Reset vom USB-Power war schon ohne Probleme im 
Einsatz.

Gruß aus Berlin
Michael

von Johann (Gast)


Lesenswert?

Das mit dem L1 und C26 ist noch ein Fehler, da der FTDI-Chip voher 
extern über die USB-Leitung versorgt wurde (USB Bus Powered 
Configuration Punkt 6.1 Seite 21). Jedoch sollte dies nicht die Ursache 
sein.

Komisch habe die etwa die 47pF aus dem Schaltplan entfernt. Ich habe die 
damals ja nicht einfach nur so drangemacht. Ich habe vergessen die 
PWREN# mit einem PULLUP zu versorgen. Kann dies vielleicht mein Problem 
sein warum Windows nicht regelmäßig den Chip findet?

Ich dachte die PWREN-Leitung ist ein Ausgang.

von Johann (Gast)


Lesenswert?

Ich werde mal diese beiden Kondensatoren auslöten.

Wenn ich den USB-Chip an den PC anschließe, dann benötigt er immer 
unterschiedlich lange um gefunden zu werden. Manchmal wird der Chip 
bereits nach 1 Sekunde erkannt. Jedoch benötigt das System (Windows XP) 
auch zwischen 1 und 30 Sekunden um den Chip zu initialisieren. Wenn ich 
meine Maus rausziehe und wieder reinstecke geht dies immer sehr schnell. 
Habt Ihr auch dieses Problem?

von Johann (Gast)


Lesenswert?

Hier habe ich dies mit den 47pF gelesen (Punkt 2)

Beitrag "Problemlösung für USB Baustein FT232B von FTDI"

von Michael U. (amiga)


Lesenswert?

Johann schrieb:
> Hier habe ich dies mit den 47pF gelesen (Punkt 2)
>
> Beitrag "Problemlösung für USB Baustein FT232B von FTDI"

Da geht es aber um den FT232B, der ist eine Generation ölter als Dein 
Ft232R.

Gruß aus Berlin
Michael

von Johann (Gast)


Angehängte Dateien:

Lesenswert?

Hier in diesem FTDI Datenblatt sind 47pf Kondensatoren eingezeichnet 
(Seite 17)

von Michael U. (amiga)


Lesenswert?

Hallo,

hmmm, in folgenden Datenblättern sind sie verschwunden (deins ist 1.02, 
meins hier 1.04).
Allerdings glaube ich auch nicht so recht, daß sie die Ursache sind, 
aber das ist ja schnell rauszufinden.

Zur Anmeldung bei XP: ich schau da nicht auf die Stoppuhr, ein paar 
Sekunden kann es schon dauern, hängt von der Laune ab, die XP gerade hat 
(will sagen: was ich sonst gerade mit dem Rechner mache).

Gruß aus Berlin
Michael

von Johann (Gast)


Lesenswert?

Ich habe die Kondensatoren ausgelötet, jedoch ist es nicht besser 
geworden.

meine PWREN# Leitung hängt ohne einen Pullup an einem Pegelkonverter. 
Vielleicht ist dies ja der Fehler. Ich werde diese Leitung mal 
auftrennen und die Messung erneut durchführen.

Da Windows ja merkt das ein USB-Device vorhanden ist dieses aber nicht 
zuordnen kann muss ja ein Übertragungsfehler auftreten. Dies bedeutet 
doch eigentlich das etwas mit der D+ und D- Leitung nicht in Ordnung 
ist.

von Christian R. (supachris)


Lesenswert?

Kann auch sein, dass der FT nicht richtig anschwingt, sowas hatten wir 
bei den älteren ab und an mal. Ein richtiger Reset-Generator IC hat da 
Abhilfe geschaffen.

von Johann (Gast)


Lesenswert?

Was meinst Du denn mit FT?

Der Reset kommt doch über die 5V-Leitung vom USB. Dort habe ich bereits 
mehrere Kondensatoren zwischen 10µF und 100µF ausprobiert. Ich dachte 
immer das der Reset prellt und dadurch diese Efekte auftreten, jedoch 
war dies nicht der Fall. Selbst 100µF brachte keine Verbesserung.

von Christian R. (supachris)


Lesenswert?

Also solche riesen Kondensatoren sind definitiv falsch. Der Reset muss 
schnell und sauber kommen. Einige hundert µs nach anstecken des Devices 
erwartet das Betriebssystem, dass es kommuniziert (den genauen Wert kann 
man in der USB Spec nachlesen). Das verhindert ein 10µF Kondensator 
sicher. Ich meine natürlich den FT245 in deinem Fall. Wir haben dann 
einen Reset-Generator IC genommen, der keine Verzögerung hat und halt 
die Bus-Spannung überwacht, und den FTDI frei gibt, sobald die da ist. 
Hat dann immer schnell und zuverlässig geklappt. Wo ist eigentlich der 
Schirm des USB Kabels angeschlossen?

von Johann (Gast)


Lesenswert?

So viel ich weiß ist der Schirm mit den anderen GND Netzen verbunden.

Es funktioniert aber obwohl ich einen 10µF Kondensator eingebaut habe. 
Wo kann ich dies denn nachlesen hast Du vielleicht einen passenden Link 
für mich?

Ich habe noch eine alte Platinenrevision gefunden. Dort ist der Pwren 
Pin nicht angeschlossen. Bis jetzt lief der Test 121 mal fehlerfrei. Ich 
lasse den automatischen Test über Nacht laufen. Morgen hat er dann über 
1000 mal die Verbindung getestet.

von Marco G. (stan)


Lesenswert?

Wie machst du denn die automatisierten Tests? Mit Relais zum An- und 
Abstecken?

von Elektrolyt (Gast)


Lesenswert?

Interessante Frage,
vor allem, wie stellst du auf der Windowsseite fest, dass der FT erkannt 
oder nicht erkannt wurde?
Gibts da was in der api womit du windows fragst, wie oft USB erkannt 
wurde?
Ist dein Aufbau auf Lochraster und Adapter oder auf einem eigenen 
Layout?
Auf Lochraster und fliegend verdrahtet, konnte ich sowas ähnliches auch 
paar mal beobachten. Allerdings liegt das auch an Windows und 
Auslastung, dass es ab und zu länger dauert. Mach dein Test mal an einer 
anderen Windose

Gruß Elko

von Johann (Gast)


Lesenswert?

Tja das würdet Ihr gerne wissen- :-)

Ich habe eine DA Karte im PC. Mit diesem kann ich dann einen Reset auf 
den FTDI-Chip geben. Hierzu habe ich das USB-Kabel aufgetrennt und die 
5V Leitung beim USB-Kabel durchtrennt. Anschließend habe ich die 
5V-Leitung vom USB-Kabel, das in Richtung FTDI-Chip geht mit der 
DA-Karte verbunden. Zudem muss man noch die Masse vom USB-Kabel mit der 
Masser der DA Karte verbinden. Wenn die DA-Karte ein Low-Pegeln (0V) 
erzeugt, dann ist der FTDI-Chip im Reset und wird bei Windows abgemeldet 
(erscheint nicht mehr im Gerätemanager). Erzeugt man einen High-Pegel 
(5V) so wird der Reser beim FTDI-Chip zurückgenommen und der FTDI-Chip 
meldet sich in Windows an.

Testen tue ich es wie folgt:

High-Pegel erzeugen 60 Sekunden warten und dann die FTDI-Funktion nehmen 
die Statusinformationen über die gefundenen Geräte zurückgibt. 
Anschließend Low-Pegel anlegen und 5 Sekunden warten. Danach das ganze 
wieder von vorne.

Der Test lief über Nacht. über 1200 mal an und abgemeldet und kein 
Fehler aufgetreten. Vorher hatte ich 10% Fehler.

von Johann (Gast)


Lesenswert?

Jetzt sind es schon 2400 Messungen ohne Fehler. ^^

von Christian R. (supachris)


Lesenswert?

Und nur, weil der PWREN Ausgang nicht angeschlossen ist? Das ist 
unlogisch, ist bestimmt nur ein Symptom...

von Johann (Gast)


Lesenswert?

Ich finde es auch unlogisch zumal dieser Pin ja ein Ausgang sein soll.

von Christian R. (supachris)


Lesenswert?

Naja, dann ist die Ursache garantiert eine andere (Ausgleichsströme 
durch verschiedene Spannungsquellen oder so)...

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.