Forum: Mikrocontroller und Digitale Elektronik ubuntu, avrdude,avrIspMK2, error in USB Receive


von Bauitei (Gast)


Lesenswert?

Moin moin,

ich habe plötzlich ein Problem mit meinem AVRISP MKII im Zusammenspiel 
mit AVRDude.

Ich habe das ganze zwei Wochen nicht benutzt, jetzt wollte ich endlich 
die Zeit nutzen um bei einigen Projekten weiter zu machen.

Mein OS ist Ubuntu 17.04 mit Kernel 4.8.0-56-generic.

Seit heute funktioniert das Flashen von meinen Controllern nicht mehr:
1
avrdude -c avrispmkII -p m1284p -U flash:w:main.hex
2
3
avrdude: AVR device initialized and ready to accept instructions
4
5
Reading | ################################################## | 100% 1.02s
6
7
avrdude: Device signature = 0x1e9705 (probably m1284p)
8
avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed
9
         To disable this feature, specify the -D option.
10
avrdude: erasing chip
11
avrdude: reading input file "main.hex"
12
avrdude: input file main.hex auto detected as Intel Hex
13
avrdude: writing flash (4246 bytes):
14
15
Writing |                                                    | 0% 0.00savrdude: stk500v2_recv_mk2: error in USB receive
16
17
avrdude: stk500v2_recv_mk2: error in USB receive
18
avrdude: stk500v2_recv_mk2: error in USB receive
19
avrdude: stk500v2_recv_mk2: error in USB receive
20
avrdude: stk500v2_recv_mk2: error in USB receive
21
avrdude: stk500v2_recv_mk2: error in USB receive
22
avrdude: stk500v2_recv_mk2: error in USB receive
23
avrdude: stk500v2_getsync(): timeout communicating with programmer
24
avrdude: stk500v2_recv_mk2: error in USB receive
25
^C
Lesen und schreiben der Fuses geht jedoch:
1
avrdude -c avrispmkII -p m1284p 
2
3
avrdude: AVR device initialized and ready to accept instructions
4
5
Reading | ################################################## | 100% 1.02s
6
7
avrdude: Device signature = 0x1e9705 (probably m1284p)
8
9
avrdude: safemode: Fuses OK (E:FF, H:D9, L:EF)
10
11
avrdude done.  Thank you.

Ich habe es mit zwei Platinen (mega644p und mega1284p) probiert, bei 
beiden ergibt sich das gleiche Fehlerbild. Beide Controller sind auf 
externen 16MHz Quarz gefused. Die Platine mit dem Mega1284p ging schon 
einmal komplett, die Platine mit dem Mega644p wurde heute zum ersten Mal 
in Betrieb genommen.

Ich weiß jetzt echt nicht mehr was ich tun soll. Mein Verdacht liegt auf 
einem aufgespielten Update am Computer, aber da weiß ich nicht was genau 
gemacht wurde, ich hab einfach apt-get update/upgrade getippt :(

Testweise habe ich mit apt-get --reinstall install libusb-1.0-0 die 
libusb neu installiert, hat aber auch nichts gebracht.

Hat jemand ne Idee was hier kaputt sein könnte? Brauch den Programmer 
eigentlich dringend, weil eine Deadline für ein großes Projekt immer 
näher rückt...

viele Grüße
Bauteiltöter

von Rainer U. (r-u)


Lesenswert?

Bauitei schrieb:
> Mein OS ist Ubuntu 17.04 mit Kernel 4.8.0-56-generic.

Mach doch eine kleine Parallelinstallation von einem Ubuntu 14.04LTS 
(braucht nicht viel Kapazität / hinterher wieder runterwerfen)

von Stefan F. (Gast)


Lesenswert?

Versuche mal, die Taktfrequenz des ISP mit dem Parameter -B16 zu 
reduzieren.

Falls dein Programm am Clock-Prescaler herum spielt oder direkt nach dem 
Start abstürzt, könnte auch diese Prozedur helfen:

1) Reset Taster drücken und festhalten.
2) Stromversorgung einschalten.
3) Programm flashen
4) Reset Taster wieder loslassen.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Stefan U. schrieb:
> Versuche mal, die Taktfrequenz des ISP mit dem Parameter -B16 zu
> reduzieren.

Ich denke nicht, dass das irgendwas auf der Seite zwischen Programmer
und Controller ist.  Das Problem liegt ja irgendwo auf dem USB, also
zwischen Host und Programmer.

Mal einen USB-Hub dazwischen schalten?

von Bauteiltöter (Gast)


Lesenswert?

Rainer U. schrieb:
> Mach doch eine kleine Parallelinstallation von einem Ubuntu 14.04LTS
Werde ich gleich mal versuchen, vielleicht auch nur von einem 
Live-System aus.

Stefan U. schrieb:
> Versuche mal, die Taktfrequenz des ISP mit dem Parameter -B16 zu
> reduzieren.
Habe ich versucht, bringt aber wie von Jörg erwartet nichts.
Vor dem ersten Flash-Versuch gestern lief das Programm auf dem 
Mikrocontroller auch normal.

Jörg W. schrieb:
> Mal einen USB-Hub dazwischen schalten?
Habe leider aktuell keinen aktiven USB-Hub hier herum fliegen, aber ich 
habe mal testweise einen USB3.0 Hub dazwischen geklemmt - keine 
Änderung.

Moment, jetzt beim Tippen ist mir noch die Idee gekommen, dass ich die 
Konstruktion mal an die hinteren USB klemmen sollte.
..
GEWINN! Jetzt funktioniert es tatsächlich. Noch mal schnell wieder auf 
Front-USB umgeklemmt - geht auch wieder? Welche Computer-Götter muss ich 
jetzt befragen um das zu erklären?!

Mein System ist übrigens ein Ryzen R7 1800X mit Asus Prime X370-Pro 
Mainboard.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Bauteiltöter schrieb:
> Welche Computer-Götter muss ich jetzt befragen um das zu erklären?

Das frage ich mich bei dieser Art USB-Problemen auch manchmal. ;-)

Habe aber zuweilen schon ähnliches erlebt.

von Bauteiltöter (Gast)


Lesenswert?

Ich werde das ganze weiter beobachten - bis jetzt funktioniert es 1A.
Wenn es nochmal passiert, werde ich mal das Oszi an die USB-Spannung 
hängen - vielleicht sind die Kabel zum Front-USB 1mm² China-Kupfer 
(=0.1mm² Widerstandsdraht).

Vielen Dank für alle Antworten :)

lg
Bauteiltöter

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.