PDI + AVR Dragon

Moderator Persönliche Seite #1594914
Lesenswert?

Neo schrieb:

> Es geht also General mit dem Dragon auf dem ATXMEGA16A4 drauf zu kommen?

Ja, das Gerücht behauptet, dass es mit einem A4 funktionieren soll.

> Ich habe gestern Abend noch gelesen das es nur mit einem spezialen
> Adapter geht, stand so in der Hilfe.

Du musst halt die Verdrahtung mit der Hand machen, wenn du keinen
Adapter hast.

Aus der AVRDUDE-Doku:
1
   * Problem: I want to use my JTAG ICE mkII or AVR Dragon to program an
2
     Xmega device through PDI.  The documentation tells me to use the
3
     _XMEGA PDI adapter for JTAGICE mkII_ that is supposed to ship with
4
     the kit, yet I don't have it.
5

6
     Solution: Use the following pin mapping:
7

8
     *JTAGICE*     *Target*      *Squid cab-*  *PDI*
9
     *mkII probe*  *pins*        *le colors*   *header*
10
     1 (TCK)                     Black         
11
     2 (GND)       GND           White         6
12
     3 (TDO)                     Grey          
13
     4 (VTref)     VTref         Purple        2
14
     5 (TMS)                     Blue          
15
     6 (nSRST)     PDI_CLK       Green         5
16
     7 (N.C.)                    Yellow        
17
     8 (nTRST)                   Orange        
18
     9 (TDI)       PDI_DATA      Red           1
19
     10 (GND)                    Brown

(Die "squid cable colors" darfst du ignorieren, wenn du kein JTAG
ICE hast, das "Tintenfischkabel" liegt nur diesem bei.)

Wäre auch schön, wenn du mit dem aktuellen AVRDUDE (entweder von
WinAVR oder hier aus dem Forum aus Martins Thread) nochmal testen
könntest.  Bei meinem letzten Test ging's nicht mit dem Dragon,
aber ich hatte nur ATmega128A1 und ATmega256A3 zur Verfügung.
Gast #1598533
Lesenswert?

Ich konnte es heute mit einem JTAG MKII testen, damit geht es 
Problemlos. Nur mit dem Dragon geht es nicht, obwohl ich den aktuellen 
Stand habe von der Software(AVR Studio + Dragon).

Ist einglich schade das es nicht geht...
#1598978
Lesenswert?

Habe auch versucht mit dem Dragon ein 128A1 über PDI zu programmieren 
geht leider auch nicht,

AVRDUDE sagt:

> "make.exe" program
avrdude -p atxmega128a1 -P usb -c dragon_pdi    -U flash:w:test4.hex
avrdude: jtagmkII_setparm(): bad response to set parameter command: 
RSP_FAILED
avrdude: jtagmkII_close(): bad response to GO command: 
RSP_ILLEGAL_EMULATOR_MODE

avrdude done.  Thank you.

make.exe: *** [program] Error 1

programmieren über JTAG ist mit dem Dragon allerdings kein Problem

Gruß
Martin
Moderator Persönliche Seite #1599040
Lesenswert?

Neo schrieb:
> Ich konnte es heute mit einem JTAG MKII testen, damit geht es
> Problemlos. Nur mit dem Dragon geht es nicht, obwohl ich den aktuellen
> Stand habe von der Software(AVR Studio + Dragon).

Das deckt sich dann mit meinen Erfahrungen, die ich machen musste.
Du hast einen ATxmega16A4 getestet?  Schade, dann stimmt das Gerücht,
dass es mit dem A4 gehen würde, offenbar nicht.

Martin e. C. schrieb:
> Habe auch versucht mit dem Dragon ein 128A1 über PDI zu programmieren
> geht leider auch nicht,

Ja, das schrieb ich ja schon weiter oben, diese Kombination hatte
ich schon selbst getestet (parallel auch noch mit einem AVR Studio
um sicherzustellen, dass ich nicht nur bei der Ansteuerung des AVR
Dragon im AVRDUDE einen Bug habe).
Gast #1599107
Lesenswert?

Ja ich hab ein ATXMega16A4 getestet, ich hab noch ein ATXMega192A3(sowas 
in der Richtung, schreib ich gerad aus dem Kopf), aber dafür muss ich 
erst ein Print machen zum testen vom JTAG-Interface.
Hoffe ATMEL debugt das noch mit dem Dragon...
#1599115
Lesenswert?

Jörg Wunsch schrieb:
> Ja, das schrieb ich ja schon weiter oben, diese Kombination hatte
> ich schon selbst getestet

Ups! Sorry hatte ich es übersehen.

wenn ich mit dem Dragon über JTAG der 128A1 (XPlain Board) programmiere 
muß ich dann erst ein "power OFF, power ON" machen damit das Programm 
läuft, mit dem AVRISPmkII ist es aber nicht so, damit ist dann Programm 
am mC gesendet und Programm läft.
Gast #1603456
Lesenswert?

Ich hab noch ein Tip in einem Forums gefunden und damit klappt es.
Man muss in der Zuleitung von Data und Clock von dem PDI je ein 330R 
Widerstand in Reihe setzen. Angeblich soll das Überschwinken reduziert 
werden.
Damit klappt es aber.

Die Belegung ist vom ISP Port, Reset ist Clock, MISO ist Data.
Es geht sowohl das auslesen der Fuses und Programminhalt und das 
Debuggen.

Ich muss noch weiter Testen ob es irgendwo/wann noch ausfälle gibt, bin 
aber guter Dinge.
Moderator Persönliche Seite #1603471
Lesenswert?

Neo schrieb:
> Ich hab noch ein Tip in einem Forums gefunden und damit klappt es.

OK, das werde ich demnächst auch nochmal probieren.

Martin e. C. schrieb:
> wenn ich mit dem Dragon über JTAG der 128A1 (XPlain Board) programmiere
> muß ich dann erst ein "power OFF, power ON" machen damit das Programm
> läuft,

Nein, das sollte so funktionieren.  Als letzte Aktion müsste ein
CMND_GO gesendet werden.  Kannst du ja ggf. mit -vvvv mal verifizieren.
#1604886
Lesenswert?

Jörg Wunsch schrieb:
> Nein, das sollte so funktionieren.  Als letzte Aktion müsste ein
> CMND_GO gesendet werden.  Kannst du ja ggf. mit -vvvv mal verifizieren.

wie sollte funktionieren, also ohne "Power OFF - Power ON"?

habe wieder mal getestet, wenn ich -vvvv benutze, kommt ein riesig 
Meldung (Anhang), und trozdem muß ich ein "Power OFF - Power ON" machen.
Angehängte Dateien:
#1709444
Lesenswert?

ich habe hier auch Probleme mit dem Dragon auf ein ATXMega256a3 zu 
kommen. Weder JTAG noch PDI funktionieren. Hat das schon mal jemand 
erfolgreich geschafft? Ich kann leider, weil ich den ATXMega auf der 
Herdplatte entlöten musste, einen Hitzetod nicht ganz ausschliessen.

Beim Anschluss des PDI an den Dragon habe ich von der ISP-Buchse
1 (MISO) mit PDI,
2 (VCC) mit 3V3,
5 (RESET) mit RESET bzw. Clock,
6 (GND) mit GND verbunden.

Firmware vom Dragon ist die von 4.18 SP2.
Im Anhang habe ich noch meinen Schaltplan angehängt.

Da ich jetzt von einigen Problemen mit dem Dragon gelesen habe kann mich 
ja vielleicht jemand aufmuntern und mir sagen, dass es am Dragon liegt. 
Habe schon 1k Ohm Widerstände in die Datenleitung und Clock-Leitung 
gelegt (PDI). Wie gesagt mit JTAG komme ich auch nicht weiter.

Oszi, ein AVRISP MkII sowie weitere Widerstandswerte habe ich erst 
nächste Woche zur Verfügung.
Angehängte Dateien:
Gast #1709467
Lesenswert?

Was ich schon oft hier gesehen habe ist, dass die Leute es nicht lassen 
können einen 100nF Kondensator an RESET, welcher eben auch die PDI-CLK 
Leitung ist, zu hängen. Dann geht natürlich gar nichts...
Gast #1709471
Lesenswert?

Ich muss zugeben, beim meinem ersten Versuch mit einem AVRISPMK2 am 
128A1 über PDI ist mir das mit den 100n Auch passiert. Ausgelötet, dann 
gabs keine Probleme mehr. Weder mit dem  AVRISPMK2 noch dem JTAGICEMK2 
über PDI. JTAG hab ich noch nicht versucht
#1709502
Lesenswert?

ich schrieb:
> Was ich schon oft hier gesehen habe ist, dass die Leute es nicht lassen
> können einen 100nF Kondensator an RESET, welcher eben auch die PDI-CLK
> Leitung ist, zu hängen. Dann geht natürlich gar nichts...

joa aber ich habe extra einen Jumper spendiert um den 100nF Kondensator 
zu entkoppeln. Also daran kann es definitiv nicht liegen.
#1709585
Lesenswert?

Also ich hatte auf der Platine einen Oszillator (30MHz). Jetzt wo ich 
diesen entfernt habe (gesockelt) kann ich über den Dragon im PDI-Mode 
die ID usw. auslesen. Wenigstens tut sich mal was. Allerdings liesst er 
immer nur 0xFF aus.
1
Setting device parameters.. OK!
2
Entering programming mode.. OK!
3
Reading signature .. 0xFF, 0xFF, 0xFF .. OK!
4
Leaving programming mode.. OK!

Davor kam schon "Setting device parameters... FAILED!". Die Zuleitung 
vom Dragon zum Board erfolgt über Jumperwire mit einer Länge von ca. 10 
cm. Vielleicht sollte ich auf die Widerstände warten :)

Weiss jemand vielleicht ob der XMega geantwortet hat also noch nicht am 
Hitzetod gestorben ist?
Gast #1713443
Lesenswert?

Nur zu Info falls jemand ähnliche Probleme hat. PDI funktioniert mit dem 
Dragon anscheinend, trotz Ankündigung, noch nicht. Und JTAG funktioniert 
jetzt mit einem kürzeren Kabel. Evtl funktioniert es auch mit 
Widerständen in den Leitungen aber das habe ich noch nicht ausprobiert.
Gast #1755082
Lesenswert?

Hallo,

habe auch PDI + ATXMEGA128A1 ausprobiert, funktioniert leider nicht.
Nach mehreren versuchen habe ich ATMEL NO angeschrieben, die haben
mir beschtätigt (ohne weitere Angaben), dass PDI mit ATXMEGA 
funktioniert nicht.
DRAGON + ATXMEGA + JTAG geht nur programmieren, debuggen aber nicht.

P.
#2627285
Lesenswert?

Treadausgrab *staub* hüstel

Morgen!

Da ich im Moment plane einen XMega32A4U einzusetzen, habe ich mich 
gerade mal durch diverse Dokumente von Atmel gewühlt.
Dort steht mitlerweile, das nur ein paar XMegas der A4-Serie per PDI 
programmiert werden können, der rest per JTAG.
Beim xmega32A4U ist bei den Tools auch der AVR-Dragon aufgeführt.
Wenn ich beim AVR-Studio den AVR-Dragon und den xmega32A4U auswähle, 
sagt mir das Programmer-Fenster, das er über PDI verbunden werden will 
(logisch, der MC hat ja kein JTAG).

Kann mir jemand sagen, ob das (mittlerweile sauber) funktioniert?
Rein zur Info: Der Dragon hockt in einem Dragon-Lair^^
Und wenn ja, einfach die passenden LEitungen der ISP nehmen?

Irgendwie ist das für den Dragon sehr dürftig dokumentiert.

Gruss Stefan
#2651590
Lesenswert?

der vollständigkeit halber ein kurzer nachtrag von meiner seite:

Meine Frage:
>Does the AVR Dragon provide full programming AND debugging features
>for the ATxmega64A4U device via PDI interface? What is the correct
>pinout for the PDI using the AVR Dragon?

Und die Antwort darauf (offiziell von Atmel):
>Yes, the Dragon can debug and program the ATxmega64A4U using
>the PDI interface.
>For the PDI pinout you can look in the appnote "AVR042 AVR hardware 
>considerations", it includes  the pinout for the standard
>PDI connector [1] in chapter 4.3. This connector matches
>the ISP connector on the AVR Dragon.
Gast #2732320
Lesenswert?

Hi folks,
Ich habe gerade eben Atxmega16U4 mit AVRDragon über PDI programmiert. 
Funktioniert einwandfrei. Allerdings ging das nur mit der neuester Atmel 
Studio ver6 und firmwareupdate (ver 7.24) von AVRDragon. 
Serienwiderstand in den Programmierleitungen wie oben beschrieben sind 
nicht erforderlich. Zum Test habe ich einfach Drähte an VCC, GND und an 
den PDI Leitungen des Micorcontrollers angelötet, 3V Spannungsregler 
zwischen Dragon und XMEGA damit dieser direkt aus dem AVRDragon versorgt 
werden kann. (Leider können die Xmegas keine 5V mehr) 3V Versorgung dann 
zurück zum AVRDragon auf ISP Header pin2 damit die Programmierspannung 
passt.
Gast #5009506
Lesenswert?

Auch wenn der Thread schon etwas älter ist, er ist immer noch aktuell.

Ich versuchte tagelang einen ATXMEGA128A4U per AVR Dragon zu 
programmieren - erst vergebens.  :((

Währenddem ich mit einer KO-Sonde die PDI-Signale untersuchte ging es 
plötzlich ... oh Wunder!  :O

Meine Feststellung: mit etwas Kapazität am PDI-CLK (RESET-Leitung beim 
ATXMEGA128A4U) gelingt die Verbindung jedes mal. Betroffen sind übrigens 
alle XmegaA4. Ich setze nun generell einen 22pF-Kondensator auf diese 
Leitung gegen GND. Eine zu grosse Kapazität bringt natürlich die 
Funktion wiederum zum erliegen (z.B. 100nF als 
RESET-Einschaltverzögerung ...).
Seit dieser Massnahme habe ich keinerlei Programmierschwierigkeiten 
mehr. :)

Anwendung: Studio 7, für alle XmegaA4 verwendbar.

Ach ja, wer natürlich ein unsauberes Layout mit hoher Leitungskapazität 
verwendet, hat nie ein Problem gehabt ... ;)
Gast #5009898
Lesenswert?

Früher mochte ich mal die PDI Schnittstelle, weil sie mit so wenig 
Leitungen auskam und mit keine I/O Pins beschränkt.

Aber inzwischen habe auch ich sie hassen gelernt. Die gute alte ISP 
Schnittstelle ist da doch unkompolizierter.

Interessanterweise sind meine ersten Experimente mit SWD (bei STM32 
Controllern) ganzn unproblematisch verlaufen - obwohl da auch nur zwei 
Leitungen benutzt werden (+ Reset Taster).

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren