Curiosity Nano: EDBG SAMD21 reagiert nicht mehr am USB

Moderator Persönliche Seite #8075101
Lesenswert?

Ich habe hier ein Curiosity Nano, welches sich nicht mehr am USB meldet. Target ist ein AVR128DA48, aber das dürfte keine größere Rolle spielen.

Das Teil hat mal funktioniert, einige Einstellungen wie die Target-Spannung existieren noch so, wie sie mal gesetzt worden sind. Am USB meldet es sich rein gar nicht mehr, weder im Normal-Modus, noch im Bootloader-Modus (das Boot-Pin beim Powerup nach GND verbunden). In letzterem Fall blinkt allerdings die LED, was ich so deute, dass die eigentliche Firmware darin noch funktioniert, nur eben der USB geht nicht mehr.

DM und DP von der USB-Buchse gehen direkt ohne irgendwelche Widerstände oder Schutzschaltung an den SAMD21, dazwischen kann also nichts ausgefallen sein. Die Lötstellen sowohl an der USB-Buchse (hier noch Mini-USB) als auch am SAMD21 sehen alle gut aus, da ist auch nichts abgerissen.

Bleibt also nur der SAMD21 selbst. Nun kann man den zwar wechseln, aber wie bekomme ich dann die entsprechende EDBG-Firmware wieder drauf?

#8075105
Lesenswert?

Hallo,

Fortsetzung von hier: Beitrag "Re: USB Design mit AVR16DU14, bitte um Review"

Jörg W. schrieb:

Veit D. schrieb:

Ich denke da kann ich helfen.

Bist du dir sicher, dass das auch auf einem jungfräulichen SAMD21 funktioniert? Ich müsste ja den existierenden komplett tauschen.

Aber lass uns einen separaten Thread dafür eröffnen.


Hallo,

ich denke das muss auch mit nackten µC funktionieren. Bei anderen wie AVR kann man auch den Bootloader jederzeit frisch aufspielen und später ändern und alles mit dem gleichen Tool. Gleiches Vorgehen beim Programm flashen. Klar ein gewisses Restrisiko ist da, würde auf einen Versuch ankommen. Oder man fragt vorher bei Microchip nach. Ist ja ein legaler Wunsch. :-) Anders gefragt. Welche Gründe würden dagegen sprechen?

Moderator Persönliche Seite #8075108
Lesenswert?

Dieter S. schrieb:

Falls der Chip nicht gesperrt ist könnte man darüber die Firmware auslesen.

Ich gehe (leider) aber davon aus, dass er gesperrt ist, und ich würde daher auch vermuten, dass die EDBG-Firmware irgendwie verschlüsselt ist und der Bootloader einen passenden Key bräuchte.

Aber ja, auf einem separaten SAMD21-Board kann ich das natürlich auch mal probieren. Meiner Erinnerung nach haben die SAMxx ja (im Gegensatz zu den AVRs) einen Bootloader ab Werk drin.

Moderator Persönliche Seite #8075109
Lesenswert?

Veit D. schrieb:

Oder man fragt vorher bei Microchip nach.

Haben wir in meiner früheren Firma mal gemacht. Sie verkaufen einem fertige EDBG-Chips, allerdings für relativ viel Geld. Aber selbst, wenn man sie als Einzelstücke bekäme: der Aufwand (Versand eines Einzelstücks) würde den Nutzen (Reparatur eines weniger als 15 Euro teuren devboards) bei weitem übersteigen.

#8075165
Lesenswert?

Hallo,

also du meinst die Firmwaredatei zum Download von Microchip ist nicht das komplette Programm? Der SAM hat eine Art Bootloader den es nur von Microchip mit SAM gibt und die Firmwaredatei zum Download ist das reine Programm was ausgeführt wird. Und ohne dem "Bootloader" läuft das eigentliche Programm nicht. Meinst du das so? Wäre natürlich doof. Ich würde dennoch bei Microchip nachfragen. Mir erschließt sich der Sinn nicht warum ein Teil davon Geheim ist. Das läuft doch eh nur auf deren SAM Controllern.

#8075261
Lesenswert?

Hallo,

also je mehr ich darüber nachdenke was im Link steht, so wie ich ihn verstehe, umso mehr denke ich man kann es legal flashen. Das besagte .hex File liegt auf meiner Platte im Studio Ordner und in der avrtools_fw.xml steht drin

<avrtools_firmware build="404" date="2017-09-04" release="" tool="EDBG"><image build="438" description="Debugger MCU Firmware" fileid="1330" filename="edbg.enc" license=" ...

Das alles liegt im EDBG Ordner. Das ist nicht der Ordner für die Updates. Die lauten mEDBG und nEDBG. Also für mein Verständnis kann man es riskieren den SAM zu tauschen. Einen Atmel ICE Programmer hätte ich, müsste man noch ein Kabel basteln und den SAM kontaktieren können.

Moderator Persönliche Seite #8075271
Lesenswert?

Veit D. schrieb:

filename="edbg.enc"

Nun darfst du raten, wofür die Endung ".enc" da ist. :-)

Schon beim STK500 hatten sie die Firmware nur verschlüsselt ausgeliefert, aber damals wurde sie noch vor dem Flashen entschlüsselt, weil der Bootloader ein stinknormaler AT90S1200 (später ATtiny2313) mit einer AVR109-Firmware war.

Also ja, ich kann mir mal anschauen, ob sie das auch heute noch so machen (und man mithin einen jungfräulichen SAMD21 damit flashen kann), würde mich aber wirklich wundern. Kann ich ja extern machen an einem separaten SAMD21, ich müsste irgendwo noch einen haben.

: Bearbeitet durch Moderator
#8075298
Lesenswert?

Wenn mit der HEX Datei xam.hex aus der Firmware ZIP Datei (edbg_fw.zip) in Microchip.EDBG_TP.1.6.762.atpack gemeint ist: Die ist ziemlich sicher kein Bootloader, der dann die eigentliche verschlüsselte Debugger Firmware (edbg.enc) laden kann. In der XML Datei (avrtools_fw.xml) steht ja auch dass diese HEX Datei für den "Analog co-processor" gedacht ist. Vermutlich ist das ein optionaler, zweiter Mikrocontroller der eventuell für so Dinge wie Strommessungen bei Low-Power Mikrocontrollern gedacht ist.

Die Firmware aus der HEX Datei macht nichts mit USB (was aber für die PC Kommunikation gebraucht wird), der ADC wird aber verwendet.

#8075336
Lesenswert?

Hallo,

reden wir vielleicht weiterhin aneinander vorbei? Oder verstehe ich das Problem nicht?

In der avrtools_fw.xml steht auch description="Debugger MCU Firmware".

Ob .hex oder .c oder .enc spielt für mein Verständnis der Beschreibung keine Rolle. .enc würde nur bedeuten die Datei ist verschlüsselt und ich kann den Quelltext nicht lesen. Muss ich aber auch nicht. Interessiert mich/uns nicht. Hauptsache man hat die Datei. Laut Beschreibung

https://support.microchip.com/s/article/EDBG-firmware-upgrade-through-Command-line

Soll man das ausführen.

atfw -t edbg -a edbg_fw.zip"

Wenn ich das immer noch falsch verstehe, dann weiß ich auch nicht weiter. Probiert es aus bevor man immer vorher sagt "geht nicht". Das ärgert mich ein wenig.

: Bearbeitet durch User

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