Forum: Mikrocontroller und Digitale Elektronik AVRISP-MKII Clone mit dem Atmega32U2 Breakoutboard von ehajo


von Maik J. (caldrogyn)


Lesenswert?

Ich habe mir das Atmega32U2 Breakout Board und den ISP Adapter bei ehajo 
gekauft und zusammengelötet. Leider wird das Board mit einem 16MHz Quarz 
ausgeliefert und die Hex Datei, die zum Download angeboten wird ist für 
8MHz compiliert. Flip erkennt den A32U2, ich kann die Software auch 
aufspielen, Die LEDs leuchten, das AVRISP-MKII wird aber nicht erkannt.
Ich habe dann vom LUFA Projekt den Code heruntergeladen und den 
AVRISP-MKII clone für den Atmege32U2 mit 16MHz compiliert. (nachdem ich 
herausgefunden habe, was ein "makefile" ist). Jetzt wird das MKII 
erkannt über USB.
Wenn ich aber im AtmelStudio das Gerät auswähle und "apply" anklicke 
bekomme ich eine Fehlermeldung:

Unable to connect to tool AVRISP mkII (000200212345)

Details:

Timestamp:  2014-09-07 13:40:48.139
Severity:    ERROR
ComponentId:  20100
StatusCode:  131118
ModuleName:  TCF (TCF command: Tool:connect failed.)

Target not detected


Hat jemand eine Idee, was ich verkehrt mache. Was soll ich probieren, 
was wollt ihr wissen?

von Uwe (de0508)


Lesenswert?

Hallo ,

Das AtmelStudio verwendet eine anders Protokoll und deshalb geht das 
nicht.

Schau mal im Lufa Makefile nach, da gibt es eine Option das andere zu 
Protokoll des AtmelStudios einzustellen.

PS ich verwende den atmega32u2 auch als AVR MKII Clone unter Linux.

von Uwe (de0508)


Lesenswert?

Ach ja diesen Link mit passender Firmware für das aTeVal Board, hatte 
ich vergessen:

http://dokuwiki.ehajo.de/artikel:ateval:firmware_beides

Da müsste man nur die Portdefinitionen überprüfen.

von Maik J. (caldrogyn)


Lesenswert?

Welche Option wäre das genau, ich stehe etwas planlos vor dem makefile. 
Wie gesagt, ich habe zu erstenmal mit sowas zu tuen.

von Hannes J. (Firma: eHaJo.de) (joggl) Benutzerseite Flattr this


Lesenswert?


von Maik J. (caldrogyn)


Lesenswert?

Die Pinbelegung scheint zu passen aber laut Schaltplan läuft der 32U2 
auf dem aTeVal Board auch mit 8MHz, also wohl auch die Software. Ich 
werde mir mal den Sourcecode ansehen. Die Umschalt Option klingt ja 
schon nach einer praktischen Sache.

von Uwe (de0508)


Lesenswert?

Hallo Maik,

Hannes hat für Dich einen Download eingerichtet:

http://dokuwiki.ehajo.de/artikel:atmega_u-howto:avrisp-mkii

Damit bist Du sofort fertig.

Bitte berichte.

von Maik J. (caldrogyn)


Angehängte Dateien:

Lesenswert?

Ich habe den neun Code gerade ausprobiert. Leider habe ich das gleiche 
Problem, wie mit dem von mir compilierten Code und erhalte dieselbe 
Fehlermeldung im Studio. Ich hänge nochmal einen Screenshot an.
Ich bin mir auch nicht sicher ob sich der Fehler auf die USB Verbindung 
oder die ISP Verbindung zum Ziel uC bezieht.

von Uwe (de0508)


Lesenswert?

Hallo,

und was sehen wir im Gerätemanager ?

Ist die libusb installiert ?

: Bearbeitet durch User
von c-hater (Gast)


Lesenswert?

Maik Jahabeich schrieb:

> Ich bin mir auch nicht sicher ob sich der Fehler auf die USB Verbindung
> oder die ISP Verbindung zum Ziel uC bezieht.

Auf die ISP-Verbindung. Sonst würde schon früher und mit einer anderen 
Fehlermeldung gemeckert, irgendwas mit "Programmer" statt "Target".

von Maik J. (caldrogyn)


Lesenswert?

Uwe S. schrieb:
> Hallo,
>
> und was sehen wir im Gerätemanager ?
>
> Ist die libusb installiert ?

Der Geräte Manager zeigt das "AVRISP mkII" an

Wie kann ich das mit der libusb überprüfen. Ich habe das komplette 
AtmelStudio 6.2 installiert.

von Maik J. (caldrogyn)


Angehängte Dateien:

Lesenswert?

Hat denn keiner mehr eine Idee?
Hat irgendwer das Board von ehajo am laufen mit AStudio?
Wo kann ich genauer erfahren, was die Fehlermeldung bedeutet? Ich habe 
den Screenshot noch einmal angehängt.
Ich versuche es jetzt mal mit AVRDude. Wenn das auch nicht hilft, werde 
ich einen anderen ATmega aufbauen und es mit dem probieren. Vielleicht 
liegt es ja am Ziel uC. Das ist übrigens ein 1284 den ich bisher (bis 
mein alter Rechner den Geist aufgegeben hat) immer parallal mit Ponyprog 
programmiert hatte.

von Uwe (de0508)


Lesenswert?

Hallo,

nochmal Du hast keinen Treiber installiert !

Mach mal ein Bild vom Gerätemanager.

http://sourceforge.net/projects/libusb-win32/?source=typ_redirect

: Bearbeitet durch User
von Maik J. (caldrogyn)


Angehängte Dateien:

Lesenswert?

Ich dachte ich benutze den Atmel Treiber vom Studio, da das Gerät 
richtig erkannt wird. Die libusb-win32 werde ich jetzt installieren, 
weil AVRDude damit arbeitet.

von Maik J. (caldrogyn)


Angehängte Dateien:

Lesenswert?

Habe libusb-win32 runtergeladen und mit dem inf-wizard eine datei 
erstellt. Leider lässt sich der Treiber nicht installieren unter Windoof 
8.1 (siehe Bild).

von Bülent C. (mirki)


Lesenswert?

shutdown.exe /r /o /f /t 00

Und dann kannst Du beim Neustart die Treibersiganturprüfung 
deaktivieren.
Den genauen Menüpunkt habe ich gerade nicht im Kopf...

von Maik J. (caldrogyn)


Angehängte Dateien:

Lesenswert?

Vielen Dank, das hat funktioniert. Es war unter den erweiterten 
Starteinstellungen. jetzt ist der Treiber installiert. Ich probiere 
jetzt nochmal das Studio, sonst versuche ich AVRDude.

von Maik J. (caldrogyn)


Angehängte Dateien:

Lesenswert?

Es gibt keine Verbesserung mit dem Studio. Die gleiche Fehlermeldung, 
nur wenn der Adapter mit dem libusb Treiber läuft, zeigt das Studio 
keine Seriennummer an.
Wenn ich den Adapter nur mit Strom versorge (mit Y-USB Kabel von 
Festplatte), blinken alle drei LEDs zwei mal kurz auf und dann leuchten 
USB(grün) und PROG(rot). Schließe ich dann USB komplett an, leuchtet 
auch ON(grün) und nach einem kurzen Moment erlischt PROG(rot).
Wenn ich im Studio im Fenster Device Programming bin und die USB 
Verbindung trenne, zeigt er sofort "AVRISP mkII (disconnected)" an. Wenn 
ich wieder verbinde, verschwindet "(disconnected)" wieder.
Klicke ich jetzt auf "apply", blinkt die PROG(rot) LED kurz auf und dann 
erscheint die besagte Fehlermeldung.
Dieses Ferhalten ist mit beiden Treibern gleich. Es spielt auch keine 
Rolle, ob das ISP Kabel mit dem Ziel verbunden ist oder nicht.
Könnte villeicht jemand mit dem AVRISP-mkII testen, ob man den gleichen 
Fehler bekommt, wenn kein Ziel verbunden ist über ISP.

Ich habe gestern noch einen zweiten Atmega1284p auf Lochraster aufgebaut 
(nur das nötigste, ISP Verindung mit Strom, 10kOhm auf reset, ein paar 
100nF + internen Oszillator). Das gleiche Ergebnis.

Auch wenn es noch nicht klappt, ich habe schon viel gelernt. Ich glaube 
heute nehme ich den Kram mit zur Spätschicht und schaue mir mal mit dem 
Oszi an, was an dem ISP-Stecker des Adapters so passiert.

von Dirk K. (dekoepi)


Lesenswert?

Mit avrdude musst du aufpassen, eine alte 5er-Version zu verwenden. 
Aktuelle Versionen (ab 6) "mögen" den LUFA-Hack nicht und du erhältst 
einen Timeout, da das Target-Gerät dadurch nicht erkannt wird.

von Bülent C. (mirki)


Lesenswert?

Was für eine Frequenz hast Du denn in den Interface settings?

von Bülent C. (mirki)


Lesenswert?

Maik Jahabeich schrieb:
> Ich habe gestern noch einen zweiten Atmega1284p auf Lochraster aufgebaut
> (nur das nötigste, ISP Verindung mit Strom, 10kOhm auf reset, ein paar
> 100nF + internen Oszillator). Das gleiche Ergebnis.

Hoffentlich nicht nur einen 10k an Reset, sondern auch nach VCC 
gezogen?!

von Maik J. (caldrogyn)


Lesenswert?

Bülent C. schrieb:
> Hoffentlich nicht nur einen 10k an Reset, sondern auch nach VCC
> gezogen?!

Natürlich, Reset (pin9) und vcc(pin10) liegen nebeneinander, für den 
Probeaufbau habe ich einen 0805er SMD Widerstand dazwischen gepfuscht.

Bülent C. schrieb:
> Was für eine Frequenz hast Du denn in den Interface settings?

Gehe ich direkt auf Device Programming komme ich gar nicht erst zu 
irgendeiner Frequenzeinstellung. Lade ich ein Projekt kann ich dort 
unter Tool eine ISP Clock einstellen. Standartmässig steht sie auf 
125,00 kHz, habe auch schon weniger probiert, bis runter zu 2kHz.


Mit meinem Hameg habe ich mir mal den ISP Stecker angesehen. Masse ist 
auf Masse, VCC sind 5V und an den anderen Pins ist ist nur ganz leichtes 
rauschen. Wenn ich ein Ziel anschliesse geht auch Reset auf 5V (Dank der 
10k). Wenn ich Apply klicke blinkt wirklich nur die rote LED auf und die 
eine Grüne (USB) geht solange aus. An ISP tut sich gar nichts, nicht mal 
Reset geht auf Masse.

von Hannes J. (Firma: eHaJo.de) (joggl) Benutzerseite Flattr this


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich hab mal den Code vom aTeVaL-Board auf 16MHz compiliert, siehe 
Anhang.
PD0 musst du auf Masse ziehen, sonst kommt das Breakoutboard als 
Seriell-Wandler hoch.

von Uwe (de0508)


Lesenswert?

Danke Hannes!

ich habe sie gerade eingespielt:

*PD0 = offen*
1
Sep 11 00:16:37 p7 kernel: [ 6421.875552] usb 1-1.3.4: new full-speed USB device number 21 using ehci-pci
2
Sep 11 00:16:37 p7 kernel: [ 6421.968841] usb 1-1.3.4: New USB device found, idVendor=03eb, idProduct=204b
3
Sep 11 00:16:37 p7 kernel: [ 6421.968847] usb 1-1.3.4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
4
Sep 11 00:16:37 p7 kernel: [ 6421.968850] usb 1-1.3.4: Product: aTeVaL USB2Serial
5
Sep 11 00:16:37 p7 kernel: [ 6421.968852] usb 1-1.3.4: Manufacturer: eHaJo.de
6
Sep 11 00:16:37 p7 kernel: [ 6421.969358] cdc_acm 1-1.3.4:1.0: ttyACM0: USB ACM device

*PD0 = GND*
1
Sep 11 00:17:25 p7 kernel: [ 6470.291960] usb 1-1.3.4: new full-speed USB device number 22 using ehci-pci
2
Sep 11 00:17:25 p7 kernel: [ 6470.386379] usb 1-1.3.4: New USB device found, idVendor=03eb, idProduct=2104
3
Sep 11 00:17:25 p7 kernel: [ 6470.386386] usb 1-1.3.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
4
Sep 11 00:17:25 p7 kernel: [ 6470.386389] usb 1-1.3.4: Product: AVRISP mkII
5
Sep 11 00:17:25 p7 kernel: [ 6470.386391] usb 1-1.3.4: Manufacturer: ATMEL

Und die verwendeten Fuse-Bits des atmega32u2
1
-U lfuse:w:0xde:m -U hfuse:w:0xd9:m -U efuse:w:0xf8:m

Ich habe den Bootloader gelöscht und verwende den ISP Anschluss.

: Bearbeitet durch User
von Maik J. (caldrogyn)


Lesenswert?

Hannes J. schrieb:
> Hallo zusammen,
>
> ich hab mal den Code vom aTeVaL-Board auf 16MHz compiliert, siehe
> Anhang.
> PD0 musst du auf Masse ziehen, sonst kommt das Breakoutboard als
> Seriell-Wandler hoch.

Danke, danke Hannes. Mit dem Code läuft es! Auf Anhieb, ohne Probleme. 
:D

Das heißt natürlich auch, dass irgendetwas mit dem Code für das Breakout 
Board nicht passt. :(

Uwe S. schrieb:
> Danke Hannes!
>
> ich habe sie gerade eingespielt:

Es freut mich für Dich das Du das geschafft hast, bin mir aber nicht 
sicher, wie mir das bei meinem Problem weiterhelfen soll. Funktioniert 
der Programmer denn mit dem neuen Code bei Dir? Und hast Du vielleicht 
auch den 16MHz Code für das BreakoutBoard aufgespielt, hat der bei Dir 
funktioniert? Wenn ja, mit welcher Software (das AtmelStudio wird es ja 
nicht sein bei Linux).

von Dennis (Gast)


Lesenswert?

Maik Jahabeich schrieb:
> Es freut mich für Dich das Du das geschafft hast, bin mir aber nicht
> sicher, wie mir das bei meinem Problem weiterhelfen soll

Hallo,
ich musste den libusb-win32-filter installieren als ich avrdude und 
AVR-Studio parallel nutzen will.
Könnte Dir das vielleicht helfen?

Gruß

von Maik J. (caldrogyn)


Lesenswert?

Danke für den Tip, aber es funktioniert ja jetzt und es lag nicht am 
Teiber.

von Maik J. (caldrogyn)


Lesenswert?

Nochmal zu libusb. Danke an Uwe S. dafür das vorzuschlagen. Sicherlich 
eine tolle Sache, ich werde bestimmt noch damit arbeiten, ich habe schon 
ein paar Ideen. Mit AtmelStudio arbeitet der libusb Treiber aber 
definitiv nicht zusammen, abgesehen vom erzeugen kreativer 
Fehlermeldungen. Das Studio arbeitet nur mit dem eigenen Jungo Treiber 
zusammen.

Zu dem AtmelStudio; wenn man den Button "Device programming" klickt, 
öffnet sich ein Fenster. Dort kann man Tool (AVRISP-mkII), Device 
(Atmega1284p bei mir) und die Verbindungsart (in meinem Fall nur ISP) 
auswählen. Klicke ich dann auf apply, verbindet sich das Studio mit dem 
Programmer - egal ob das Ziel Device angeschlossen ist oder nicht. Wenn 
mir das am Anfang jemand gesagt hätte, hätte ich mir den Aufbau des 
zweiten Boards und das Mitnehmen zur Arbeit sparen können.

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.