Forum: Mikrocontroller und Digitale Elektronik USBaspLoader Kennung unter Win/Linux?


von Peter Z. (peterz1972)


Angehängte Dateien:

Lesenswert?

Hallo,

ich versuche, den USBaspLoader auf einem ATMEGA32 einzusetzen. Habe dazu 
eine Schaltung entworfen und aufgebaut (Foto).
Ich arbeite mit dem AVR Studio 6 und bin zugegebenerweise noch ziemlich 
am Anfang.
Die Hardware ist in Ordnung. Ein USB-Demo funktioniert bereits 
(Mauszeiger fährt herum).
Der nächste Schritt soll der USBaspLoader sein. Den habe ich inzwischen 
mit dem AVR-Studio gebaut und übertragen. Jedoch bekomme ich unter Win 
nur die Meldung, dass er das USB-Device nicht erkennt (und zwar auch nur 
dann, wenn der Bootloader-Jumper gesetzt ist, was ja schon mal ein gutes 
Zeichen ist). Bei den USB-Devices wird dann nichts angezeigt. Unter 
Linux zeigt ein "lsusb" auch nichts.
Deshalb vermute ich, dass es nicht am Windows-Treiber (von avrdude), 
sondern noch an irgendwelchen Einstellungen in der Firmware liegt.

Unter Linux zeigt ein dmesg diese Zeilen:
[ 7078.268078] usb 5-2: new low-speed USB device number 84 using 
ohci_hcd
[ 7078.328087] hub 5-0:1.0: unable to enumerate USB device on port 2
[ 7079.236077] usb 5-2: new low-speed USB device number 85 using 
ohci_hcd
[ 7079.296086] hub 5-0:1.0: unable to enumerate USB device on port 2
...


* Kann mir bitte jemand sagen, was Win, bzw Linux anzeigen müsste, für 
den Fall, dass die Firmware richtig läuft?
* Ohne Treiber sollte Win trotzdem in der Device-Liste etwas Sinnvolles 
(zumindest eine Kennung?) anzeigen - oder täusche ich mich da?

Beste Grüße
PZ

von Wusel D. (stefanfrings_de)


Lesenswert?

Kenn Du google? Bei der Suche nach "dmesg usbasp" war das zweite 
Ergebnis:
1
[ 2973.920042] usb 5-2: new low speed USB device using uhci_hcd and address 9
2
[ 2974.092726] usb 5-2: configuration #1 chosen from 1 choice
3
[ 2976.392016] usb 5-1: new low speed USB device using uhci_hcd and address 10
4
[ 2976.550363] usb 5-1: config 1 interface 1 altsetting 0 endpoint 0x1 is Bulk; changing to Interrupt
5
[ 2976.550366] usb 5-1: config 1 interface 1 altsetting 0 endpoint 0x81 is Bulk; changing to Interrupt
6
[ 2976.572165] usb 5-1: configuration #1 chosen from 1 choice
7
[ 2976.574545] cdc_acm 5-1:1.0: ttyACM1: USB ACM device

Ohne Treiber müsste wenigstens die Device ID geloggt werden. Aber genau 
die kann Linux bei deinem Gerät nicht abfragen.

Linux wertet es nicht als Fehler, wenn man ein USB Device ansteckt, für 
dass es keinen Treiber gibt.

Viele Device (so auch der USBASP) werden ja ohne Treiber über die libusb 
angesprochen. Bei diesen Geräten weiss dann das Anwendungsprogramm 
(avrdude), wie sie funktionieren.

Das dritte Goolgle Ergebnis beschreibt auch eine mögliche Lösung:
1
Im günstigsten Fall reicht es aus den Programmer einfach an einem 
2
anderen USB-Port oder über ein USB-Hub anzuschließen.
3
4
Das Problem hängt übrigens mit den Z-Dioden zusammen, die den 
5
Spannungspegel für die USB-Datenleitungen begrenzen bzw. anpassen 
6
sollen. Während der Mikrocontroller mit einem 5V Pegel arbeitet, 
7
darf der Pegel auf den USB-Datenleitungen höchstens 3,6 Volt betragen. 
8
Die Z-Diode begrenzt zusammen mit dem Widerstand die Spannung an D+ 
9
und D- auf max. 3,6 Volt.

von marixstorm (Gast)


Lesenswert?

Hallo Peter.

Zunaechst einmal: Unter https://github.com/baerwolf/USBaspLoader koennen 
Sie eine aktuelle Version von USBaspLoader beziehen.

Falsche Installation von Zenerdioden ist ein moeglicher Fehler. Linux 
antwortet jedoch meistens  darauf mit einem "can not unbounce"-Fehler.

Ihr "unable to enumerate" kann auch mit einer falschen Einstellungen in 
der "firmware/bootloaderconfig.h" zu tun haben.
Entweder wurden die falschen USB-Pins konfiguriert (PD2 und PD7?), oder 
moeglicherweise auch nur F_CPU (Taktfrequenz des CPU) falsch gesetzt, 
sodass die internen Timings nicht stimmen.

MfG Stephan

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.