www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik USBasp auf Linux macht Probleme


Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

mal wieder ein Problem. Keine Angst, ich habe seit gestern abend 
gegoogelt und das Forum hier durchsucht, habe zwar einiges gefunden aber 
nix hat geholfen bzw. ich konnte es nicht umsetzen.

Das Problem ist folgendes: Ich habe mir den offiziellen USBasp-Bausatz 
bestellt, von http://www.fundf.net/usbasp/ und zusammengelötet. Sieht 
auch soweit nicht schlecht aus, die grüne LED geht an, und er wird von 
Ubuntu (und auch von vista..) erkannt. bei lsusb -v schreibt er mir 
"USBasp" und "www.fischl.de" mit raus, also kein Zweifel. (Außerdem 
schreibt mir avrdude auch "could not find USBasp" wenn ichs nicht 
angesteckt habe.)

avrdude schreibt mir mit angestecktem USBasp aber das:
avrdude: error: programm enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.
Soweit ich gelesen habe, heisst das:
a) die ISR-connection ist "bad" -> hab ich aber 10mal durchgemessen, das 
sollte stimmen. bin mir 99% sicher!
b) Programmer nicht angeschlossen -> doch, ist er
c) Target circuit power off -> nein, ist on (hab ne LED reingeschaltet)
d) JP3 setzen für langsamen SCK -> hat nix gebracht
e) Ja, ich hab die Zenerdioden mit drin

Was ich noch gelesen habe, man soll avrdude mit libusb zusammen linken. 
Ich muss ganz ehrlich sagen, ich weiss nicht wie das geht (system: 
Ubuntu). In meiner Paketverwaltung hab ich beides runtergeladen, und 
dort automatisch installieren lassen. Reicht das nicht aus?

Es geht übrigens unter Vista und Ubuntu genau gleich schlecht, krieg 
exakt die gleiche Fehlermeldung.

Ein Firmware-Flash muss ich eigentlich nicht machen (oder?), weil auf 
der Homepage des "offiziellen USBasp" extra steht: "Vorprogrammierter 
Mikrocontroller" .. wie auch, ohne Programmer? Hab am Laptop keine 
COM/LPT mehr dran.

Ich hoffe wirklich, dass hier noch jemand einen Rat für mich hat.
Vielen Dank schon mal!
Viele Grüße, Philipp

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da der Fehler sowohl in Windows wie in Ubuntu auftritt, kanns eigtl. nur 
an deiner Hardware liegen ;) Genauer eigtl. nur von USBASP zu 
Controller. Den SCK Jumper würd ich immer erstma gesteckt lassen bis der 
COntroller antwortet .. weil langsamer takt macht eh nix kaputt ..

Was für ein Controller willst du programmieren?
Hat der denn überhaupt n Takt?

Schließ mal ien Quarz an den zu programmierenden Controller an und guck 
obs dann klappt ;)

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Moment hängt ein atMega32 dran. Einen Quarzoszillator hab ich auch am 
atmega32 dranhängen, aber ohne FUSE-Bits sollte da doch eh nix 
passieren, oder?
also, er sollte ohne an den Fuses was zu drehen, doch mit internem Takt 
laufen.?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>also, er sollte ohne an den Fuses was zu drehen, doch mit internem Takt
>laufen.?

Wenn er ganz neu ist tut er das (mit 1MHz).
ISP Frequenz sollte dann maximal 250kHz sein.
Besser 125kHz, dann bist du auf der sicheren Seite.

Wie sieht deine Schaltung aus?

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also bei den Einstellungen in denen dein USBASP sein müsste, müsste der 
bei gesetztem JP3 ohne zu murren mit dem Mega "reden" können.

Wenn du es ohne großen Aufwand kansnt, tausch mal Miso und Mosi .. auch 
wenn du meinst es ist richtig rum. Manchmal prüft ma 100x und macht 
dabei 100x denselben Fehler.

Wenns dann net geht, nimm nen anderen Mega und wenn das auch net hilft 
kapitulier ich :(

Autor: Philipp L. (flip7)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
okay, das mit MISO und MOSI versuch ich gleich mal ..
im Anhang ist meine Schaltung, an PORTC hab noch 3 LEDs zum testen dran, 
die sind nicht im Plan. Sonst sollte der aber stimmen

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
LED ohne Vorwiderstand geht gar nicht.
Dann spendier dem uC noch mal Abblockkondensatoren
zwischen VCC und GND. Wie groß ist der Kondensator
am Reset Pin? Mal weglassen das Teil.

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay.. der MISO/MOSI tausch hat keine Veränderung bewirkt.
Die LEDs haben natürlich Vorwiderstände (ganz heiße Teile, schon in der 
LED integriert..)
den Kondensator (100nF) am Reset hab ich rausgelötet, ändert auch nix, 
zusätzliche Abblockkondensatoren auch nicht.
Hat noch jemand ne Idee? Vielleicht ist der uC ja einfach hin..?

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast du n oszi?

Wenn ja guck dir ma die Pegel an den Pins des Mega32 an, ob da auch was 
korrektes ankommt .. ich hatte den wurm auch schon im kabel^^

µC hatte ich doch schon vorgeschlagen mal zu tauschen ;)

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nee, hab leider kein Oszi .. das wär schön ;)
Jaa. dem uC tauschen, das is so ne Sache.. hab nur einen auf Reserve, 
und wenn der nachher dann auch hin ist dann hab ich keinen mehr ... das 
wollt ich erst machen wenns echt nix mehr gibt .. oder ist das eher 
blöd, sollte ich den sofort mal tauschen? (keine Angst, hab deinen 
Vorschlag schon gesehn und abgespeichert, Max ;) )

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
N Multimeter tuts auch, da siehste dann zwar nicht ob der n schönen 
Pegel rüberschickt (sauberes Signal), aber du siehst schonma ob da was 
passiert, dadurch dass das Multimeter "rumspinnt" also dir nix 
vernünftiges mehr anzeigt.
Geht glaub aber nur mit nem digitalen, da analoge dafür glaub zu träge 
sind.

Wenn das so einigermaßen den anschein macht, dass da was passiert, dann 
is das schonma gar net so schlecht.
Es sollte aber nur auf Mosi oder Miso und SCK was sein, nicht auf beiden 
"Datenpins", da ja nur vom USBASP Daten geschickt werden, und keine 
antwort kommt.

Ist auf beiden was drauf, gibts nur 2 angenehme möglichkeiten: Pins 
haben irgendwo einen kurzschluss (favorisieren würd ich jetz da die 
selbsteingelöteten Stecker)
Oder aber das Kabel hat ne Macke

Alle anderen Möglichkeiten abgesehn von kaputten Controller fangen an 
rchtig blöd zu werden!

SO gute nacht

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, erstmal vielen Dank für deinen Einsatz, Max! Klasse, Danke!
Leider hat das auch nix gebracht.
Habs mit meinem superbilligen Feld-Wald-und-Wiesen-Multimeter (analog) 
mal gemessen, bei MOSI und SCK hats mal gezuckt wenn ich den avrdude hab 
laufen lassen, bei anderen Kombinationen nicht. Zwischen MOSI/MISO/SCK 
ist ohne Saft drauf auch kein Durchgang .. allerdings einer nach Masse 
.. aber das könnte durchaus korrekt sein, weiss ich grad nicht ob das 
intern geregelt ist?!

Hört sich wirklich immer mehr nach dem kaputten uC an .. glaub ich 
tausch ihn echt gleich mal .. wobei ich mir nicht vorstellen kann, wie 
das passieren konnte - aber das schließt es ja wohl nicht aus, dass er 
kaputt sein kann .. :s

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, update: Anderer uController bringt auch keine Veränderung. Also 
entweder der ist jetzt auch kaputt oder beide noch heile, wer weiss.
Ich mach dann wohl mal Feierabend für heute ..

Ich hoffe, dass noch irgendjemand eine Idee hat, woran das noch liegen 
könnte!! Ich hatte mir meinen Einstieg in die uC-Welt etwas anders 
vorgestellt :(

Gute Nacht allerseits...

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Philipp L. schrieb:
> Zwischen MOSI/MISO/SCK
> ist ohne Saft drauf auch kein Durchgang .. allerdings einer nach Masse
> .. aber das könnte durchaus korrekt sein, weiss ich grad nicht ob das
> intern geregelt ist?!

Du solltest das ganze auch mal ohne Prozessor prüfen. Wenn da auch ein 
Durchgang nach Masse vorhanden ist, hast Du den Übeltäter gefunden.

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn gesagt wird, dass Du avrdude zusammen mit der usblib
linken sollst, heisst das, dass Du ihn kompilieren sollst.
Hole Dir den Sourcecode, entpacke ihn (tar xvfz) gehe rein,
mache ein configure mit make und installiere ihn.

So musste ich bei der IDE von arduino vorgehen, um mein
USB-Device ansprechen zu können (debian lenny).

viel Erfolg

Autor: Bernhard M. (boregard)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

auf Linux aber bestimmt nicht, die libusb ist da doch normalerweise 
vorhanden (als dyn. Bibliothek).
Ich habe USBasp unter debian sid am laufen und musste da noch nie was 
kompileiren oder linken.

Gruß,
Boregard

Autor: Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... hab in Deinen Schatplan geguckt.

---> Kannst Du mir mal erleutern, wie 5 Volt an Deinen Reset-Pin kommen. 
Das sehe ich nicht. Wo ist da der PullUp?


Werner

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guten Morgen :)

Also zum Thema PullUp: Sorry, den hatte ich nachträglich noch per Hand 
eingezeichnet, deswegen ist der nicht im Plan. Ist aber drauf aufm 
Brett.

Durchgänge zw. MOSI/MISO/SCK und GND hab ich ohne uC nochmal gemessen, 
sind nicht verbunden, also auch richtig.

Vielleicht sollte ich echt mal versuchen, avrdude mit libusb zu 
kompilieren, vielleicht ists auf meinem System ja einfach anders.

Ich hoff mal, dass es das dann ist, ich weiss mittlerweile echt nicht 
mehr weiter...

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bevor Du das machst, schau doch mal, ob Dein jetziges avrdude
das gelinkt hat:

Ausgabe bei mir
gln@harvey:~/wrk/sketches/ds18s20$ ldd /usr/local/bin/avrdude 
  linux-vdso.so.1 =>  (0x00007fff28952000)
  libusb-0.1.so.4 => /lib/libusb-0.1.so.4 (0x00007f4264d2c000)
  libncurses.so.5 => /lib/libncurses.so.5 (0x00007f4264ae7000)
  libc.so.6 => /lib/libc.so.6 (0x00007f4264796000)
  libdl.so.2 => /lib/libdl.so.2 (0x00007f4264592000)
  /lib64/ld-linux-x86-64.so.2 (0x00007f4264f34000)

Da ist sie vorhanden. Wenn nicht -> neubauen.


mfG Gerhard

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bei mir kommt bei "ldd" folgendes:
linux-gate.so.1 =>  (0xb7f3b000)
  libusb-0.1.so.4 => /lib/libusb-0.1.so.4 (0xb7f1f000)
  libreadline.so.5 => /lib/libreadline.so.5 (0xb7eee000)
  libncurses.so.5 => /lib/libncurses.so.5 (0xb7ebd000)
  libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7d6e000)
  libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7d6a000)
  /lib/ld-linux.so.2 (0xb7f3c000)
das heisst, es passt alles, oder?
avrdude version ist übrigens 5.5, also daran sollte es ja auch nicht 
liegen

... verdammt, was kann ich noch tun?

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Philipp L. schrieb:
> bei mir kommt bei "ldd" folgendes:
>   libusb-0.1.so.4 => /lib/libusb-0.1.so.4 (0xb7f1f000)
> das heisst, es passt alles, oder?
Ja, die libusb wird gefunden und geladen. Ist also alles korrekt.

> ... verdammt, was kann ich noch tun?
Anschlusskabel/-Belegung korrekt?

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> ... verdammt, was kann ich noch tun?
> Anschlusskabel/-Belegung korrekt?

Ja, 1000-Mal durchgemessen, direkt vom Programmer bis zum 
zu-programmierenden-uC ... bin echt am Ende!

Autor: Max (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also an deinem avrdude kanns eigtl. nicht hängen, da dir dein usbasp ja 
schon zurückgibt, dass er nicht verbinden kann.

Versuch ma:

avrdude -c usbasp -p m32 -i x -t

und probier für x mal verschiedene Werte aus, würd bei 1 anfangen und 
dann in 10er schritten hochgehen.

Kaputt sind die glaub net, weil die dann öfters als Meldung 
ausschmeißen, dass ihr Device ID(hieß das so?) net stimmt.

Wahrscheinlich kennste so privat etz aus deiner nähe niemand, der den 
usbasp ma bei sich und sienen controllern ausprobieren kann? ^^

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay, newsflash!!!

ich bin in den keller gerannt, wo ich noch nen uralt-PC stehen hatte mit 
LPT-Druckerschnittstelle, und hab mir was passendes zusammengelötet, und 
siehe da, mit PonyProg draufgespielt und es läuft!!! Es blinkt!!! Mein 
erstes Erfolgserlebnis :) :)

Gut, soweit so gut, aber ich will dieses lärmende langsame Computer-Teil 
nicht ständig hier stehen haben, also muss irgendeine USB-Lösung her.
Die Frage ist, wieweit es Sinn macht, den USBasp durchzuprüfen und hin 
und her, oder ob ich mir nicht nen anderen kaufe, sowas in der Art:
Ebay-Artikel Nr. 400074373625
ist das was oder eher quatsch?! Sollte doch ganz gut sein, wenns auf dem 
STK500-Protokoll läuft..?

Aber erst versuche ich mal, meinem USBasp ne neue Firmware 
draufzuflashen :D mehr kann eh nicht kaputt gehn :D

Autor: Philipp L. (flip7)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hm, vielleicht war das keine gute idee mit der neuen firmware :D
Jetzt geht die DruckerSchnittstelle nicht mehr (oops, die hab ich wohl 
geschossen..) und aber der USBasp hat keine Änderung im Verhalten .....

anscheinend muss ich mir echt was fertiges im ebay kaufen :x

aber ich danke allen freundlichen Helfern hier!!

Viele Grüße, Philipp

Autor: Christian U. (z0m3ie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
http://www.ullihome.de/index.php/USBAVR-ISP/de

kannst dir ja mal ansehn kann einiges mehr als der ebay programmer und 
sparst noch 4 eur.

Autor: Terfagter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sag mir mal bitte, was du für einen Widerstand am Reset hast?
Hatte ein ähnliches Problem.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.