Forum: Mikrocontroller und Digitale Elektronik V-USB Unknown Device PCB


von Tobias G. (kubax)


Angehängte Dateien:

Lesenswert?

Ich bin leider gerade etwas Blind was meine Schaltung angeht..

Ich hab mein bisheriges Projekt von Breadboard auf PCB gebannt, und bei 
der Gelegenheit auch von Freetz zu Eagle gewechselt (ist gar nicht so 
kompliziert wie ich dachte)

Nach einigen Problemen mit dem Ätzen der Platinen, bin ich zu einem 
funktionierendem PCB durchgedrungen. Nach dem herstellen einer weiteren 
Platine (Adapter vom 10 Pin zu einem Adapter Board zum anschließen 
mehrerer Potentiometer und erfolgreichem Test mit der Software, wollte 
ich vor einem Arbeitskollegen ein wenig angeben. Leider war das Board zu 
diesem Zeitpunkt plötzlich Tot. Keinerlei Reaktion, vorher Funktionierte 
es noch ohne Probleme.

Da ich aber sowieso ein Gehäuse bestellt hatte, und in meinem PCB keinen 
platz für Löcher eingeplant hatte, habe ich ein etwas großzügigeres PCB 
geplant und geätzt.

Jetz zum Problem. Das neue PCB lässt sich ohne Probleme Programmieren, 
leider wird es von Windows nur als "Unknown Device" erkannt. Das 
Großzügigere PCB Basiert voll und ganz auf der kleineren Variante. Ich 
habe lediglich die Komponenten etwas verschoben und das Layout 
vergrößert. Danach habe ich natürlich die Leitungen neu Routen müssen.

Hat jemand von euch eine Idee was das Problem sein könnte?

Ich hab mal den Schaltplan und das PCB Layout angehängt.

P.s.: Sowohl meine eigene Software, als auch die USB-HID-Mouse von V-USB 
funktioniert nicht.

Gruß,
Kubax

von avrGerd (Gast)


Lesenswert?

USB arbeitet mit 5V oder nicht?

Wieso hast Du dann 3.6V Z-Dioden an den Datenleitungen?


Gruß,
avrGerd

von avrGerd (Gast)


Lesenswert?

Also Pin 20,21,22 sind NICHT angeschlossen.

Prüf erstmal den Schaltplan, der ist Murks.

Und kleiner Tipp:
Es gibt GND und VCC Symbole. Bitte benutzen und 90% der Leitungen 
löschen!
Da blickt ja keine Sau durch.

Den Quarz und die Kondis NAH an den Controller!

Massefläche benutzen!

Den Schaltplan bitte ganz auf den Kopf stellen, dann kann man es noch 
besser lesen.

Also bitte ...


Gruß,
avrGerd

Sorry, nicht beleidigt sein. Aber so macht helfen keinen Spaß.

von ich, hier (Gast)


Lesenswert?

avrGerd schrieb:
> USB arbeitet mit 5V oder nicht?
>
> Wieso hast Du dann 3.6V Z-Dioden an den Datenleitungen?
>
>
> Gruß,
> avrGerd

NEIN! Es wird nur eine Versorgung von ca. 5V zur Verfügung gestellt. Die 
Datenleitungen arbeiten mit 3V3.

von Vla (Gast)


Lesenswert?

also der Schaltplan sieht korrekt aus. 3V6 ZD an den Datenleitungen sind 
da, weil die USB Datenleitungen mit >>>>>3.3V<<<<< arbeiten.

von Vla (Gast)


Lesenswert?

avrGerd, hör auf zu trollen. Den ADC braucht der TO scheinbar nicht. Nur 
die Leds sind falschherum im Schaltplan.

von Vla (Gast)


Lesenswert?

allerdings...wozu werden dann AREF und AGND herausgeführt? Nunja, jeder 
hat ja mal klein angefangen.

von Vla (Gast)


Lesenswert?

sieht so aus als wenn der Schaltplan zwar nicht optimal ist, aber tun 
sollte. Die Leitungen im Layout zu verfolgen bin ich jetzt zu faul zu. 
Du hast also den typischen Fall einer nicht oder nur manchmal 
funktionierenden V-USB Schaltung. Da hilft nur das typische Debuggen mit 
dem Multimeter. Alles mal ordentlich durchmessen. Wenn sich gar nix tut 
(auch nicht am PC) hängt vielleicht die D- Leitung in der Luft?

von NCSA (Gast)


Lesenswert?

Vla schrieb:
> Den ADC braucht der TO scheinbar nicht.

Trotzdem muss AVCC beschaltet sein.
AVCC ist nicht Optional, AGND ist nicht optional, Aref ist optional, 
wenn der ADC nicht verwendet werden soll.

und Abblockkondensatoren sind auch nicht optional.

von NCSA (Gast)


Lesenswert?

Vla schrieb:
> Du hast also den typischen Fall einer nicht oder nur manchmal
> funktionierenden V-USB Schaltung.

Da sind noch mehr Fehler drinnen, z.B. ist R3 zu klein. Richtig wären 
1.5k *gegen 3.3V*. Hier ist R3 gegen die unstabilisierten 5V geschaltet, 
damit trotzdem nicht zuviel Strom fliesst wären also eher 2.2k richtig.

Dann die Zener-Dioden: die bringen da fast 500 pF an die Datenleitungen, 
das mag schon zuviel sein. Evtl. ohne versuchen, und stattdessen die 
µC-Betrübsspannung etwas absenken.

Und das Layout selber ist, vorsichtig ausgedrückt, "stark 
verbesserungswürdig".
Tipp: Vergiss den Autorouter.

von Vla (Gast)


Lesenswert?

NCSA schrieb:
> Trotzdem muss AVCC beschaltet sein.
> AVCC ist nicht Optional, AGND ist nicht optional, Aref ist optional,
> wenn der ADC nicht verwendet werden soll.

Mhhh, im Datenblatt steht man solle die anschließen, aber ich meine mich 
zu erinnern dass ich aufm Steckbrett auch schonmal ohne ausgekommen bin. 
Meinst du wirklich, dass ist der Grund warum die Schaltung nicht mehr 
tut.

Na komm, C4 ist doch ein Abblockkondensator...
auch wenns keine mit 100nF gibt....

von NCSA (Gast)


Lesenswert?

Vla schrieb:
> Na komm, C4 ist doch ein Abblockkondensator...

dafür ist er viel zuweit vom µC entfernt.

Vla schrieb:
> Mhhh, im Datenblatt steht man solle die anschließen

der AVCC-Pin versorgt u.A. den ganzen PortA mit Strom. Wenn AVCC nicht 
angeschlossen wird, fließt der Strom über parasitäre Dioden dorthin => 
instabile Versorgung, Latch-Up-Gefahr.
Einfach direkt mit VCC verbinden, wenn der ADC nicht eine gesondert 
gefilterte Stromversorgung haben soll.

von Vla (Gast)


Lesenswert?

danke für die Info. Das mit Port A wusste ich noch nicht.

von Oliver J. (skriptkiddy)


Lesenswert?

@Tobias Göbel

Versuch mal Folgendes:
Wirf die Z-Dioden raus und löte mal eine normale Diode in Flussrichtung 
in die Spannungsversorgung zum µC. Das senkt die Betriebsspannung um 
0.7V und damit die USB-Datenpegel. Das ist zwar noch nicht innerhalb der 
USB Spezifikation (2.8V-3.6V), aber das lief so bei mir trotzdem immer 
und überall. Mit Z-Dioden hatte ich schon Probleme.


Hast du die Schaltung mal an einem anderen Rechner probiert?

Läuft die Schaltung vielleicht an einem USB-Hub?

Stimmt der Takt im AVR auch wirklich (Fuses)?


Gruß Oliver

von Vla (Gast)


Lesenswert?

Oliver J. schrieb:

> Mit Z-Dioden hatte ich schon Probleme.

Ist ja allgemein bekannt dass man den V-USB Controller mit 5V oder 3.3V 
betreiben kann. Ich habe fast immer die 5V Variante mit den Zenerdioden 
gewählt. Funzt super.

von Tobias G. (kubax)


Lesenswert?

OH MY GOD -.-

Never mind....

Ich hab den Fehler gefunden.
War reine Dummheit.

Ich hab gestern beim löten nicht auf anhieb meine 16 Mhz Quarze gefunden 
und alternativ einen 20 Mhz Quarz verlötet. Anschließend die Software 
angepasst auf 20 Mhz (so dachte ich) und mich gewundert warum nichts 
funktioniert.

Gerade aus lauter verzweiflung einen 16 Mhz Quarz aus einem alten 
Projekt ausgelötet, und siehe da.. Es läuft.. ohne rückänderung an der 
Mhz Werten im Makefile.

Keine Idee wo, aber irgendwo hätte ich in V-USB Lib's noch die Quarz 
werte anpassen müssen so scheint mir.

Jedenfalls funktioniert jetzt alles (gerät wird erkannt) und ich bin 
glücklich :)

von Oliver J. (skriptkiddy)


Lesenswert?

Tobias Göbel schrieb:
> Keine Idee wo, aber irgendwo hätte ich in V-USB Lib's noch die Quarz
> werte anpassen müssen so scheint mir.

F_CPU in den Projekteinstellungen/Makefile ändern sollte eigentlich 
reichen.
Der AVR wird dann aber out of Spec betrieben. Daran könnte es liegen.

Gruß Oliver

von Tobias G. (kubax)


Lesenswert?

Oh man.. die ganzen antworten hab ich vor meine Post garnicht gesehen 
(hab nach dem erfolg noch schnell ein paar sachen getestet, und den 
getippten post erst später abgeschickt..

Das mti dem AVCC stimmt, den hatte ich versehentlich beim schalten mit 
AREF verwechselt. Gewollt war also die verbindung mit AVCC und nich mit 
AREF.

AREF ist intern auf AVCC geschaltet (so hab ich das zufällig in einem 
Forum gefunden gehabt, und das macht die werte um einiges stabiler als 
meine vorherige lösung.

Mag sein das die schaltung nicht Perfekt ist, aber das ist auch mein 
erstes Projekt im Elektronik bereich. Böse bin ich wegen belehungen aber 
keine. Waren ja einige dabei die Richtig waren / sind. auch wenn ich sie 
mittlerweile selber gefunden hatte.

Danke für die vielen Tipps, ich werd sie mir morgen nochmal genau 
angucken, und evtl. weitere fehler beheben..

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.