Forum: Compiler & IDEs avarice 2.6 vs. 2.7 mit dragon problem


von Klaus W. (Firma: privat) (texmex)


Lesenswert?

Hallo!

Ich habe angefangen mit avarice und gdb zu experimentieren und dabei die 
bei debian-testing mitgelieferte Version 2.6 verwendet.
Nachdem diese etwas "hakelig" funktionierte und ich im Changelog 
nachgelesen habe, dass genau meine Fehler inzwischen korrigiert wurden, 
versuche ich nun das 2.7 Release bzw. die CVS Version zu kompilieren.
Das geht anstandslos, aber der dragon wird nicht erkannt.


Vergleich:
==========

avarice --dragon --debugwire --part attiny44 :4242
AVaRICE version 2.6, Jul  5 2007 10:26:09

Defaulting JTAG bitrate to 1 MHz. Make sure that the target
frequency is at least 4 MHz or you will likely encounter failures
controlling the target.

JTAG config starting.
Found a device: AVRDRAGON
Serial number:  00:a2:00:00:3f:c3
Reported debugWire device ID: 0x9207
Configured for device ID: 0x9207 attiny44 -- Matched with attiny44
JTAG config complete.
Preparing the target device for On Chip Debugging.
Waiting for connection on port 4242.



UND:
====
./avarice --dragon --debugwire --part attiny44 :4242
AVaRICE version 2.7.20071102, Nov 13 2007 16:50:25

Defaulting JTAG bitrate to 1 MHz. Make sure that the target
frequency is at least 4 MHz or you will likely encounter failures
controlling the target.

Failed to open /dev/avrjtag: No such file or directory

#####################


Ich konnte im configure script oder sonstwo auch nichts entdecken, um 
die Dragon Unterstützung zu aktivieren o.ä.

Sicher nur ein dummer Fehler meinerseits. Wer kann mir einen Tip geben?


viele Grüße!
Klaus

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


Lesenswert?

Dir fehlt -j usb bzw. --jtag usb.  Offenbar hatte der Debian-
Maintainer das in seiner Version zum Default gemacht (statt
/dev/avrjtag, wie es seit Urzeiten im Originalcode ist).

von Klaus W. (Firma: privat) (texmex)


Lesenswert?

Ah, super, vielen Dank!

Ich hatte sowas in der Art eigentlich schon vermutet, aber auf den 
ersten Blick nichts in der Docu gefunden. Ein grep -i dragon über den 
Sourcecode war auch nicht sehr aufschlussreich :-).

Ein kleiner Hinweis in --help wäre vielleicht ganz praktisch.

Du bist (einer) der Entwickler von avarice und co, oder?
Vielen Dank für die Arbeit!!


Gruß!
Klaus

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


Lesenswert?

Klaus W. wrote:

> Ein kleiner Hinweis in --help wäre vielleicht ganz praktisch.

       -j, --jtag <devname>
              Port attached to JTAG box (default: /dev/avrjtag).

> Du bist (einer) der Entwickler von avarice und co, oder?

Ja, mittlerweile wohl der primary maintainer geworden.

> Vielen Dank für die Arbeit!!

Bitte, schön, dass es nicht nur mir von Nutzen ist. ;-)

von Klaus W. (Firma: privat) (texmex)


Lesenswert?

Jörg Wunsch wrote:
> Klaus W. wrote:
>
>> Ein kleiner Hinweis in --help wäre vielleicht ganz praktisch.
>        -j, --jtag <devname>
>               Port attached to JTAG box (default: /dev/avrjtag).
Das habe ich wohl gelesen!
Ein /dev/bus/usb/002/023 führte leider nicht zum Ziel.
Das war aber auch nicht wirklich zu erwarten. Auf das "usb" hätte man 
grade noch kommen können :-).
In der manual page steht das auch drin wie ich inzwischen gesehen habe. 
Allerdings steht da auch:

The AVR Dragon can only be connected through USB, so this option
              defaults to "usb" in that case.

Was aber offenbar nicht der Fall ist.

> Bitte, schön, dass es nicht nur mir von Nutzen ist. ;-)
Ganz bestimmt nicht!

Die Fehlermeldung
"cannot read program counter"
taucht übrigens gelegentlich immer noch auf.
Aber ich muss mich jetzt überhaupt erst mal noch ein bischen mit dem 
Dingens beschäftigen.

viele Grüße!
Klaus

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


Lesenswert?

Klaus W. wrote:

> Allerdings steht da auch:
>
> The AVR Dragon can only be connected through USB, so this option
>               defaults to "usb" in that case.
>
> Was aber offenbar nicht der Fall ist.

Hmmpf.  Klar, das ist durch diese Änderung hier passiert:

revision 1.39
date: 2007/03/21 17:06:54;  author: c_oflynn;  state: Exp;  lines: +8 -1
Colin O'Flynn <coflynn@...>

*src/main.cc: Added patch 1121113 which adds JTAG_DEV env variable, no
longer need to use --jtag option if you want.
*doc/avarice.1: Documented above

Durch diese Änderung ist die Erkennung kaputt gegangen, dass der
Nutzer keine -j-Option angegeben hat.  Bitte schreibe dafür mal einen
Bugreport.

> Die Fehlermeldung
> "cannot read program counter"
> taucht übrigens gelegentlich immer noch auf.

Ja, die richtige Ursache dafür habe ich leider erst nach Version 2.7
gefunden und repariert.  Bei soft breakpoints (und damit bei
debugWire) ist es schlimmer als bei hard breakpoints (JTAG).

von Klaus W. (Firma: privat) (texmex)


Lesenswert?

Jörg Wunsch wrote:

> Durch diese Änderung ist die Erkennung kaputt gegangen, dass der
> Nutzer keine -j-Option angegeben hat.  Bitte schreibe dafür mal einen
> Bugreport.

done.


>> Die Fehlermeldung
>> "cannot read program counter"
>> taucht übrigens gelegentlich immer noch auf.
>
> Ja, die richtige Ursache dafür habe ich leider erst nach Version 2.7
> gefunden und repariert.  Bei soft breakpoints (und damit bei
> debugWire) ist es schlimmer als bei hard breakpoints (JTAG).

richtig, ich verwende debugWire.

Allerdings auch die letzte CVS Version:
AVaRICE version 2.7.20071102, Nov 13 2007 18:08:30

Und da sollte doch der Fehler eigentlich schon behoben sein, oder?


viele Grüße!
Klaus

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


Lesenswert?

Klaus W. wrote:

> Allerdings auch die letzte CVS Version:
> AVaRICE version 2.7.20071102, Nov 13 2007 18:08:30
>
> Und da sollte doch der Fehler eigentlich schon behoben sein, oder?

Ja, das stimmt.  Dann bräuchte ich mal einen debug trace (-d).  Das
kannste aber gern offline in einer Mail machen, ich vermute, das
interessiert sonst niemanden weiter hier.

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.