Mein Kumpel mit seinem Arduinokram hat mal wieder einen Patienten.
Eine Steuerung mit aufgelötetem Arduino 2560 Pro (Mini), direkt am
Arduinoboard sind um die USB-Buchse Korrosionsschäden (war wohl von
seinem Boot). Er war so klever und hat schon neue Module mitgebracht
(zur Sicherheit gleich zwei), also sollte man doch per ISP auslesen und
auch neu schreiben können. (Foto: solch ein Teil ist das)
Soweit die Vorgeschichte...
Zunächst habe ich das Möppeldingens untersucht und durchgeklingelt,
USB-Leitungen und etwas Hühnerfutter sind Geschichte, weiter "innen" ist
aber alles noch intakt.
Ok, ich habe das Ding zunächst von der Mutterplatine runtergeknipst
(auslöten war fast unmöglich, da die Bohrungen sehr knapp) und gründlich
gereinigt. Dann die ISP-Pins aufgelötet, mit starker Lupe noch- und
nochmal alles kontrolliert, sieht gut aus.
Also dann! Das Dingens an einen USBASP-China-Adapter gestöpselt und im
dem schon vertrauten "ExtremeBurner" die Fuses ausgelesen. FF, D8, FD
und bei den Lockfuses steht FF drin. Sieht also fast wie beim kleinen
Nano aus.
Nu denne, Flash auslesen! Der gesamte Speicherbereich zeigt FF an! Oha!
Er schwört aber drei heilige Eide, dass da was drin ist und die
Schaltung sogar noch funktionierte (nur Updates mit zerfressener USB
gehen eben nicht). Gehen im Moment sowieso nicht, der Autor der
originalen INO ist verschollen, mit ihm die INO...
Naja, dann also an den neuen TL866II Plus gestöpselt, Ergebnis: Exakt
genau so! Himmel sakra aber auch!
Erstmal Mutter I-Net befragen. Beim Arduino Mega 2560 (dem normal
großen) sollen als Fuses FF, D8, FD und bei Lock dann 3F drin stehen!
Aha, irgendwas mit dem Lockfuses muss es sein. Nach weiterer Recherche
dann die Erkenntnis: Nö, 3F ist wohl normal, zwei Bits sind in alles
Beispielfotos immer ausgegraut.
Wat nu? Ich lege solche Patienten gerne mal ein paar Tage in die Ecke
und mach was völlig Anderes, so auch hier.
Durch Zufall bin ich dann in einem YT-Video über AVRDUDESS gestolpert,
auch ein Programm für den AVRASP (und viele andere).
Zunächst die Portabelversion geladen und gestratet, den richtigen
Programmieradapter eingestellt und einen der beiden nagelneuen Mega2560
ausgelesen: Fuses FF, D8, FD und 3F! Flash zeigt sehr viele FFs, aber in
zwei Bereichen (Mitte und am Ende) auch andere Bytes an. Nu denne, jetzt
kommt der Patient dran. Fuses exakt genauso, Flash auslesen geht auch,
auch in der Mitte und am Ende irgendwelcher Code. Dann habe ich beide
Dateien vergleichen lassen (Mit Totalcommander) und beide sind
Bit-identisch! Kann ja nicht sein! Unmöglich, Njet, Niente!
Nein - Doch - Ohh!
(geht gleich weiter....)
Oliver S. schrieb:> Ruf aber zwischenzeitlich mal in China an, daß die den Sack Reis wieder> aufrichten...>> Oliver
Habe ich schon und sie haben!
Und weiter.... (ja, ein paar Fragen kommen noch)
Die Erste: warum sind beide Dateien bit-identisch? Eine hat ja neben
Bootloader auf jeden Fall Code drin.
Um das mal zu testen also in einen der neuen einen umfangreichen
Beispielsketch geladen, alles fehlerfrei. Danach wieder ausgelesen und
wieder zum leeren Test-Flash einen bit-identischen Flashinhalt bekommen.
Notgedrungen habe ich dann bei dem neuen (der zum Test immer wieder
verwendet wurde) die Fuses so abgeändert (FF, DF, FD), als ob er KEINEN
(geschützten?) Bootloader enthält. Der ist zwar noch da, aber sollte
jetzt ja offen lesbar sein. Der jetzt gelesene Flashinhalt ist deutlich
anders, nur am Ende wieder gleich (dort ist der Bootloader?). Inzwischen
hatten wir einen dritten nagelneuen Mega2560 auf dem Tisch, also weitere
Versuche. Der Originale wird zunächst ja nicht mehr angefasst.
Am Test-Mega zunächst die Fuses wieder zurück auf den Ausgangswert,
wieder einen bit-identischen Code, war ja klar.
In diesen dann einen Sketch mit blinkender LED geladen (ja, LED blinkt)
und Fuses wieder ohne Bootloader verstellt. Dann ausgelesen und in den
dritten (bei dem die Fuses auch auf FF, DF, FD gestellt wurden) per ISP
geflasht. Auch bei dem blinkt nun die LED (nachdem er vorher zurück auf
FF, D8, FD gestellt wurde).
Zum Schluss dann auch am Originalpatienten die Fuses verstellt und
ausgelesen. Dann diese *.bin in den Test-Mega geschrieben, seine Fuses
vorher auf FF, DF, FD und danach wieder zurück und ab auf die
Hauptplatine. Ergebnis: Funktioniert wieder astrein.
Doch warum wird mit aktiviertem Bootloader beim Mega2560 Pro Mini nur
dieser ausgelesen? Eigentlich sollte es doch dann eher der freie Bereich
sein.
Was hat es mit den beiden ausgegrauten Lock-Fusebits auf sich? Die sind
ja bei allen nagelneuen aus der Tüte so.
Die ganzen Tests hatte ich sowohl mit Biärdateien, als auch mit
HEX-Dateien durchgeführt, das Ergebnis war jeweils immer gleich.
Wenn ich einen Arduino-Nano (Atmega 328P) über ISP auslese, erhalte ich
mit den "Standard-Fuses" (wenn nicht gelockt) immer den kompletten
Inhalt und kann diesen in einen anderen flashen.
Leider habe ich keinen jungfräulichen Nacktchip vom Mega2560, wäre mal
interessant, ob bei diesem die Lockfuses auch auf 3F stehen.
Ja, das Datenblatt zu 2560er habe ich versucht zu verhirnen, mangels
Englischkenntnisse fällt das aber schwer.
Alles merkwürdig! Ich sage ja immer: "Arduinos sind Teufelszeug" ;-)))
Old-Papa
Hallo,
warum fummelst du überhaupt an den Fuses rum? Das versteht niemand. Lade
auf die neuen Boards einen Blinksketch drauf, wenn das funktioniert ist
alles i.O. Dann kannste den originalen Sketch laden, sofern vorhanden.
Wenn dein Kumpel zu blöd war und den original Sketch nicht speichert,
dann ist er seltem dämlich. Dann kannste nur den alten auslesen und auf
den neuen flashen. Entweder das Programm läuft oder nicht, kaputt geht
doch dabei nichts. Gesperrt etc. ist standardmäßig nichts bei Arduino.
Ich glaube ja eher in der Geschichte ist zu viel Frust dabei mangels
eigener Unkenntnis. Übrigens liegen alle Daten auch die zu den Fuse
Einstellungen auf deiner Platte. C:\Program Files
(x86)\Arduino\hardware\arduino\avr\boards.txt Nur wie gesagt, warum du
daran rumfummeln möchtest versteht wohl niemand. Ich auch nicht.
Falls du noch Erfolg haben möchtest. Leg den Frust bei Seite und stelle
knallharte und glasklare Fragen. Vielleicht kann man dann helfen. So
macht das jedenfall keinen Spass. Deine Problem haben generell erstmal
nichts mit Arduino zu tun. Das erkennt man.
Veit D. schrieb:> Hallo,>> warum fummelst du überhaupt an den Fuses rum? Das versteht niemand. Lade> auf die neuen Boards einen Blinksketch drauf, wenn das funktioniert ist> alles i.O. Dann kannste den originalen Sketch laden, sofern vorhanden.> Wenn dein Kumpel zu blöd war und den original Sketch nicht speichert,> dann ist er seltem dämlich.
Das wird so sein, hilft aber hier auch nicht. Ich suche immer nach
Lösungen und nicht nach Vorwürfen.
> Dann kannste nur den alten auslesen und auf> den neuen flashen.
Ja, Kollege Schlaumeier, doch dass geht ja eben nicht mit den
Standard-Fuses!
> Entweder das Programm läuft oder nicht, kaputt geht> doch dabei nichts.
Das hat auch keiner behauptet.
> Gesperrt etc. ist standardmäßig nichts bei Arduino.> Ich glaube ja eher in der Geschichte ist zu viel Frust dabei mangels> eigener Unkenntnis.
Vielleicht so, doch Du wärst mit einfachen Lesen und Flashen nicht einen
Millimeter weit gekommen.
Und nö, ich habe Null Frust, warum auch, läuft ja inzwischen.
> Übrigens liegen alle Daten auch die zu den Fuse> Einstellungen auf deiner Platte. C:\Program Files> (x86)\Arduino\hardware\arduino\avr\boards.txt
Ok, schau ich mir mal an.
> Nur wie gesagt, warum du> daran rumfummeln möchtest versteht wohl niemand. Ich auch nicht.
Weil es ohne eben nicht geht, zumindest nicht bei diesem Modell.
> Falls du noch Erfolg haben möchtest. Leg den Frust bei Seite und stelle> knallharte und glasklare Fragen.
Ich hatte vollen Erfolg und dennoch die gestellten Fragen. Was ist daran
so schwer zu verstehen.
> Vielleicht kann man dann helfen. So> macht das jedenfall keinen Spass. Deine Problem haben generell erstmal> nichts mit Arduino zu tun. Das erkennt man.
Nein, womit haben die denn zu tun, wenn nicht mit diesem Arduino? DU
musst mir nicht mehr helfen, dass habe ich alleine hin bekommen. Aber
gerne kannst DU die Frage beantworten, warum mit den Standardfuses per
ISP immer NUR der (doppelte?) Bootloader ausgelesen wird, der Rest ist
FF.
Old-Papa
Hier noch die beiden ausgelesenen Files.
Flash.bin ist aus dem originalen mit vollem Code und test3.bin mit den
Standardfuses (FF, D8, FD und 3F) über ISP mit AVRDUDESS ausgelesen.
Old-Papa
Old P. schrieb:> Hier noch die beiden ausgelesenen Files.> Flash.bin ist aus dem originalen mit vollem Code und test3.bin mit den> Standardfuses (FF, D8, FD und 3F) über ISP mit AVRDUDESS ausgelesen.>> Old-Papa
Oups!
Ich muss mich mal selber zitieren, oben wurde ein Halbsatz abgeschnitten
(meine Wurstfinger...)
Also:
Flash.bin ist aus dem originalen mit vollem Code und test3.bin aus dem
nagelneuen und leeren, beide mit den Standardfuses (FF, D8, FD und 3F)
über ISP mit AVRDUDESS ausgelesen.
Old-papa
Cyblord -. schrieb:> Und ich dachte bisher ich wäre abgehärtet was schlimme Arduino Threads> angeht. WAS ist das hier? Worum geht es hier überhaupt?
Tja um Arduinos für wirklich abgehärtete User ;-)
Es geht schlicht um die Frage, warum man einen Atmega2560 nicht einfach
über ISP auslesen kann, wenn die Standardfuses gesetzt sind. Und noch
schlimmer: Obwohl die Lock-Fuses ncht gesetzt sind, wird nur FF gelesen.
Bei allen anderen Atmegas auf Arduinoboards (die ich ausgelesen habe)
geht das.
Und nein, ich bin auch kein eingefleischter Arduinojünger, habe aber
durchaus schon was damit gemacht. Ich bin da lieber mit Bin- und
Hex-Dateien unterwegs und flashe die direkt im "Brenner" oder über ISP.
Old-Papa
Old P. schrieb:> Ok, ich habe das Ding zunächst von der Mutterplatine runtergeknipst> (auslöten war fast unmöglich, da die Bohrungen sehr knapp)
versteht einer das Kauderwelch?
ich dachte erst er meine den m2560, aber er meinte wohl den ISP Stecker.
Keiner ist mir bis jetzt untergekommen den ich nicht auslöten konnte,
Platine eingespannt im Schraubstock, PIN gut durchgeheizt und mit der
Spitzange rausgezogen klappt auch ohne Durchkontaktierung killen wenn
das Zinn richtig flüssig ist!
Hat er auch den Bootloaderwechsel mitbekommen von 57k6 zu 115k? new
bootloader?
Joachim B. schrieb:> Keiner ist mir bis jetzt untergekommen den ich nicht auslöten konnte,> Platine eingespannt im Schraubstock, PIN gut durchgeheizt und mit der> Spitzange rausgezogen klappt auch ohne Durchkontaktierung killen wenn> das Zinn richtig flüssig ist!
Ja, mit Gewalt wenn die direkt eingelötet ist. Hier war sie auf
"Abstand", was ein "durchheizen" fast unmöglich macht, andererseits aber
einfaches abknipsen ermöglichte. Warum einen Schraubstock und Genöhns
auf die arme Platine loslassen?
> Hat er auch den Bootloaderwechsel mitbekommen von 57k6 zu 115k? new> bootloader?
Beim Mega2560 Pro?
Der hat insgesamt 256k Flash, wo soll da ein 115k Bootloader (noch dazu
2x hin? Geht zwar, doch es bleibt kaum Platz für weiteren Code.
Oder meinst Du die Datenübertragung aus der Arduino-IDE via USB? Die
spielt bei ISP nicht die geringste Rolle! Diese IDE existiert auf diesem
Rechner noch nichtmal ;-)
Und nein, mein Problem ist ja nicht dieser Bootloader sondern der
fehlende Codeanteil.
Old-Papa
Beim Arduino ist das Programm normalerweise nicht geschützt.
Ich weiß jetzt nicht aus dem Kopf, ob man mit der Arduino-IDE ein
Programm auslesen kann.
Mit einem Programmiergerät wie dem STK500 geht das auf jeden Fall per
ISP. Mit dem kann man ggf. auch Fuses neu setzen.
Hoffentlich hast Du keinen Schreibversuch unternommen, denn die IDE
löscht m.W. den Flash bevor sie schreibt und die Fuses setzt.
Old P. schrieb:> Es geht schlicht um die Frage, warum man einen Atmega2560 nicht einfach> über ISP auslesen kann, wenn die Standardfuses gesetzt sind. Und noch> schlimmer: Obwohl die Lock-Fuses ncht gesetzt sind, wird nur FF gelesen.> Bei allen anderen Atmegas auf Arduinoboards (die ich ausgelesen habe)> geht das.
Das eigentliche Problem ist, daß man jeden AVR über ISP auslesen kann,
wenn der eine ISP-Schnittstelle hat und die Lockbits und Fuses das nicht
verhindern, ganz unabhängig davon, ob der auf einem Arduino-Board
steckt, oder nicht.
Warum das bei dir nicht klappt, musst du halt selber rausfinden. Am
Arduino liegt es nicht.
Oliver
Oliver S. schrieb:> Das eigentliche Problem ist, daß man jeden AVR über ISP auslesen kann,> wenn der eine ISP-Schnittstelle hat und die Lockbits und Fuses das nicht> verhindern, ganz unabhängig davon, ob der auf einem Arduino-Board> steckt, oder nicht.
Das sah ich seit vielen Jahren genauso ;-)
> Warum das bei dir nicht klappt, musst du halt selber rausfinden. Am> Arduino liegt es nicht.
Doch, oder am Chip selber. Rausgefunden habe ich das ja, nur das Warum
interessiert mich. Wie das geht weiß ich ja jetzt (nach ewigem Gefummel
und verhirnen)
Und was hat es mit den beiden ausgegrauten Lockbits auf sich? (s. Bild)
Old-Papa
Old P. schrieb:> Das sah ich seit vielen Jahren genauso ;-)
Das ändert sich nicht, nur weil du da an Gott weiß was rumfummelst und
es nicht gebacken bekommst.
> Und was hat es mit den beiden ausgegrauten Lockbits auf sich? (s. Bild)
Die gibt es in deinem Controller nicht. Haben keine Funktion.
svensson schrieb:> Beim Arduino ist das Programm normalerweise nicht geschützt.
Ist ja auch nicht.
> Ich weiß jetzt nicht aus dem Kopf, ob man mit der Arduino-IDE ein> Programm auslesen kann.
Kann man nicht (so einfach)
> Mit einem Programmiergerät wie dem STK500 geht das auf jeden Fall per> ISP. Mit dem kann man ggf. auch Fuses neu setzen.
Dachte ich auch, doch eben den Mega2560 nicht!
Oder doch, lesen geht, Fuses setzen (wenn man denn muss) auch, doch beim
Flash-Lesen werden nur FF FF FF.... gelesen, obwohl voller Code drin
steht.
> Hoffentlich hast Du keinen Schreibversuch unternommen, denn die IDE> löscht m.W. den Flash bevor sie schreibt und die Fuses setzt.
Isch habe gar keine IDE ;-) (zumindest auf diesem Rechner hier)
Ich habe die ganze Zeit mit einem ISP-Programmer und AVRDUDESS
gearbeitet. Steht alles oben im Text.
STK500 liegen hier ein paar nebst Zubehör, doch leider keine COMs mehr
am Notebook.
Mit "COM-zu-USB-Wandler" gab es immer Stress. Das ist aber eine ganz
andere Baustelle.
Old-Papa
Cyblord -. schrieb:> Das ändert sich nicht, nur weil du da an Gott weiß was rumfummelst und> es nicht gebacken bekommst.
Ich habe es ja gebacken bekommen hättest Du das auch?
> Die gibt es in deinem Controller nicht. Haben keine Funktion.
Endlich mal eine gehaltvolle Antwort ;-)
Old-Papa
Old P. schrieb:> Ich habe es ja gebacken bekommen hättest Du das auch?
Ne ich hätte es niemals geschafft einen ATMega mittels ISP auszulesen.
Du bist der Erste der diese Leistung erbracht hat. Jeden Moment müsste
das Nobel-Komitee bei dir anrufen.
Dann dürfte es am Programmiergerät oder der Software dazu liegen.
(Alternativ könnte auch der Chip hin sein, wäre vermutlich ganz blöd.)
Anständigen Laptop mit COM besorgen, AVR Studio 4.19 installieren,
STK500 anschliessen, ISP verbinden und das Programm auslesen.
Cyblord -. schrieb:> Ne ich hätte es niemals geschafft einen ATMega mittels ISP auszulesen.> Du bist der Erste der diese Leistung erbracht hat. Jeden Moment müsste> das Nobel-Komitee bei dir anrufen.
Nicht dafür... ;-)
Männeken: ;-) Ich habe schon sehr viele µCs gelesen und geschrieben,
dass bleibt bei gut 55 Jahren in Elektronik nicht aus. Nur ob dann was
Sinnvolles im Datenfile steht, dass ist eine ganz andere Frage. Hier
stand es eben nicht.
Und dann beginnt die Suche nach der Ursache. Die kann natürlich auch
andere Fehlerquellen haben (USB-Programmieradapter, das "Brenn-Programm"
oder was auch immer), zumindest habe ich eine Lösung gefunden.
Es würde mich allerdings reizen, die gute alte STK500 auf einem
Altrechner loszulassen. Mal sehen, was damit geht.
Im Übrigen habe ich in den Weiten des Netzes vielfach von Problemen mit
ISP und diesem Arduinoboard gelesen, doch da ging es immer um das große
Board mit seinen zwei Atmel-µCs.
Old-papa
svensson schrieb:> Dann dürfte es am Programmiergerät oder der Software dazu liegen.
Möglich, allerdings hatte ich drei unterschiedliche Softwares auf zwei
völlig verschiedenen Programmiergeräten versucht.
> (Alternativ könnte auch der Chip hin sein, wäre vermutlich ganz blöd.)
Nö, neu aus der Tüte haben alle drei und der zu ersetzende Originale das
gleiche Verhalten gezeigt. Und ja, mit dem Fuse Hin- und Hergetausche
geht das Gerät ja nun auch mit dem neuen Mega2560 wieder einwandfrei.
> Anständigen Laptop mit COM besorgen, AVR Studio 4.19 installieren,> STK500 anschliessen, ISP verbinden und das Programm auslesen.
Nun, hier auf der Kiste habe ich AVR-Studio 7, das hat aber leider nix
COM.
Altrechner habe ich wohl ein gutes Dutzend, ich muss mal sehen, welcher
da noch COM hat und ob noch eine alte Studioversion irgendwo
rumgeistert. Ich bin jetzt so angefixt, dass versuche ich auf jeden Fall
mal "die Tage".
Old-Papa
Was habt ihr nur ständig mit eurem STK500 und COM? Es gibt heute genug
USB-ISP Programmer für AVR. Das muss sich niemand gedanken um
irgendwelche Wandler machen. Und das STK500 ist alt wie Steinkohle. Mit
was für Werkzeugen arbeitet ihr? Es graust mir ehrlich.
Der Rest deiner Einlassungen sind allesamt ebenfalls Unsinn. Aus 55
Jahren Elektronik wohl wenig gelernt. Man kann auch 55 Jahre lang nur
unsinnig vor sich hin basteln.
Old P. schrieb:> Im Übrigen habe ich in den Weiten des Netzes vielfach von Problemen mit> ISP und diesem Arduinoboard gelesen,
Erstens:
Das ist kein Arduino Board.
Zweitens:
Gibt es damit keine Probleme
Old P. schrieb:> Im Übrigen habe ich in den Weiten des Netzes vielfach von Problemen mit> ISP und diesem Arduinoboard gelesen, doch da ging es immer um das große> Board mit seinen zwei Atmel-µCs.
"Ich habe mal irgendwann irgendwo irgendwas gelesen" ist meistens die
Standardbegründung für den allergrößten Bullshit. Und in dem Fall ist es
dann doch zusätzlich ungünstig, daß da irgenwann irgenwo irgendwas von
Arduino-Anwendern geschrieben wurde.
Wenn es mit irgend einem Board "ISP-Probleme" gibt, dann solltest du als
alter Elektroniker eigentlich wissen, daß das nur an der Beschaltung der
dafür notwendigen Pins liegen kann. Schaltpläne lesen und verstehen
sollte doch kein Problem sein, oder?
Oliver
Old P. schrieb:> Ja, mit Gewalt wenn die direkt eingelötet ist. Hier war sie auf> "Abstand", was ein "durchheizen" fast unmöglich macht, andererseits aber> einfaches abknipsen ermöglichte. Warum einen Schraubstock und Genöhns> auf die arme Platine loslassen?
also wolltest du die ISP Pins raushaben?
nur warum zeigst du dann Bilder ohne ISP Pins?
Die sind doch schon draussen?
du bist verwirrt und verwirrst andere mit deinen Texten!
Bist du sicher den richtigen ISP erwischt zu haben? es sind nämlich 2
drauf.
Old P. schrieb:> Beim Mega2560 Pro?> Der hat insgesamt 256k Flash, wo soll da ein 115k Bootloader (noch dazu> 2x hin?
hast du nicht mitbekommen das die neueren Arduino den 115k bootloader
bekommen haben und zwar nicht in Flash sondern im Tempo.
Es wird bei neueren bootloader nicht mit 56k2 geladen sondern mit 115k2
http://www.netzmafia.de/skripten/hardware/Arduino/Nano-Bootloader.html
ich weiss aber nicht ob das auch für andere AVR ATmega Arduino gilt,
wollte es nur mal anmerken!
Da du aber vom Arduino Mega 2560 Pro Mini schreibst müsste man das mal
prüfen!
Joachim B. schrieb:> es sind nämlich 2 drauf.
Nein, sind es nicht.
Joachim B. schrieb:> hast du nicht mitbekommen das die neueren Arduino den 115k bootloader> bekommen haben und zwar nicht in Flash sondern im Tempo.> Es wird bei neueren bootloader nicht mit 56k2 geladen sondern mit 115k2
Nur für die Nanos.
Cyblord -. schrieb:> Was habt ihr nur ständig mit eurem STK500 und COM? Es gibt heute genug> USB-ISP Programmer für AVR. Das muss sich niemand gedanken um> irgendwelche Wandler machen. Und das STK500 ist alt wie Steinkohle. Mit> was für Werkzeugen arbeitet ihr? Es graust mir ehrlich.
Ich (wir) arbeiten halt wenn es sein muss mit gut ausgereiften
Werkzeugen. Nur weil die alt sind, sind sie ja nicht schlecht.
Wenns Dir vor Altem graut, solltest Du nie alt werden ;-)
> Der Rest deiner Einlassungen sind allesamt ebenfalls Unsinn.
Nö, sind sie nicht, Dir feht offenbar nur etwas Verständnis für die
Materie.
> Man kann auch 55 Jahre lang nur unsinnig vor sich hin basteln.
Man kann als CyberLord in einem Forum auch nur unsinnig schreiben.
Gelesen habe ich von Dir schon einiges, Vorzeigbares gesehen noch nie.
Old-Papa
Arduino Fanboy D. schrieb:> Erstens:> Das ist kein Arduino Board.
Ist ein China-Clon, wie Millionen andere auch. Auch Deine sehr
wahrscheinlich...
> Zweitens:> Gibt es damit keine Probleme
Aha, ich habe das erfunden, weil ich Langeweile habe?
Spaßvogel...
Old-Papa
Old P. schrieb:> Ich (wir) arbeiten halt wenn es sein muss mit gut ausgereiften> Werkzeugen.
Faulheit mit der Zeit zu gehen, nennt man das.
Und dann an trivialen Aufgabestellungen maximal lange rumdoktern und
sich am Ende noch dafür feiern.
> Nur weil die alt sind, sind sie ja nicht schlecht.
Sie sind alt und schlecht. Heute gibt es besseres. Allein wegen der
Schnittstellenproblematik.
Oliver S. schrieb:> "Ich habe mal irgendwann irgendwo irgendwas gelesen" ist meistens die> Standardbegründung für den allergrößten Bullshit. Und in dem Fall ist es> dann doch zusätzlich ungünstig, daß da irgenwann irgenwo irgendwas von> Arduino-Anwendern geschrieben wurde.
Nun, ich habe mich ja auch nicht darauf bezogen, nur eben Leute hatten
Probleme. Nicht mehr und nicht weniger.
> Wenn es mit irgend einem Board "ISP-Probleme" gibt, dann solltest du als> alter Elektroniker eigentlich wissen, daß das nur an der Beschaltung der> dafür notwendigen Pins liegen kann. Schaltpläne lesen und verstehen> sollte doch kein Problem sein, oder?
Alles in bester Ordnung. Was glaubst Du was ich seit vielen Jahrzehnten
als Erstes mache? Also Plan gelesen, festgestellt, dass die im Netz
verfügbaren allesamt für den "richtigen" Mega2560 sind (und auch noch
oft falsch), also Pins von ISP zum Chip vermessen und alls ist gut. Vier
Pins plus UB und GND bekomm ich gerade so noch überblickt ;-)
Es funktioniert ja auch auf Hardwarebasis bestens.
Und das reparierte Gerät ist wieder beim Besitzer und tut seinen Dienst.
Es gibt nur vier Möglichkeiten: Programmieradapter, dessen Software, der
"Ardurino-Atmega2560 Pro mini" oder das Betriebssystem (Win7). Letzteres
ist aber sehr unwahrscheinlich.
Old-papa
Cyblord -. schrieb:> Faulheit mit der Zeit zu gehen, nennt man das.
Nein, nachhaltig arbeiten nennt man das! Ich habe in meinen Werkstätten
Drehbänke, Fräsmaschinen und viele weitere Maschinen und Werkzeuge, die
sind teilweise sehr viel älter als ich. Damit kann man dennoch prima
arbeiten und feinste Dinge mit herstellen.
> Und dann an trivialen Aufgabestellungen maximal lange rumdoktern und> sich am Ende noch dafür feiern.
Du hast bisher nicht eine mögliche Ursache für dieses fehlerhafte Lesen
genannt, kannst nur anderen Dussligkeit vorhalten.
> Sie sind alt und schlecht. Heute gibt es besseres. Allein wegen der> Schnittstellenproblematik.
Du gehörst wahrscheinlich auch zu den Leuten, die Handys in den Müll
werfen, nur weil Apple einen neuen Scheiß unter das Volk der Lemminge
wirft.
Nein, das "Neue" ist häufig nur anders, intern laufen noch immer die
gleichen Prozesse ab. Neu verpackt, schön bunt und klicki! Doch wirklich
besser?
Die Schnittstellenproblematik werden dereinst wohl nur die Klingonen mal
lösen, bis dahin kommt alle paar Jahre wieder was Neues. Wer nutzt noch
FW, wer SCSI, wer VGA, wer DVI usw. Auch USB ist längst nicht mehr USB.
neue Hardware geht nicht an alter Buchse, USB3 macht mitunter Probleme
an USB2-Geräten und und und. Wenn man den ganzen Zirkus immer
tagesaktuell mitmachen möchte, wird man arm und kommt nie zum Arbeiten!
Old-papa
Old P. schrieb:> Ist ein China-Clon,
Nein, es ist kein Clon.
Old P. schrieb:> der "Ardurino-Atmega2560 Pro mini"
Nein, das ist kein Arduino.
Und kein Clon.
Auch durch stete Wiederholung, wird es nicht wahrer.
Du glaubst nur fester daran.
Old P. schrieb:> Wenn man den ganzen Zirkus immer> tagesaktuell mitmachen möchte,
Es gibt durchaus ältere ISP Adapter, welche Probleme mit dem großen
Adressraum haben.
Joachim B. schrieb:> also wolltest du die ISP Pins raushaben?
Nö, den ganzen Arduino. Du bist der Einzige, der zumindest das noch
nichtmal verstanden hat.
> nur warum zeigst du dann Bilder ohne ISP Pins?> Die sind doch schon draussen?
Ich schrieb "(Foto: solch ein Teil ist das)" ich schrieb nicht, das das
meiner ist.
Lesen lernen hilft!
> du bist verwirrt und verwirrst andere mit deinen Texten!> Bist du sicher den richtigen ISP erwischt zu haben? es sind nämlich 2> drauf.
Nö, sind es nicht. Und Ja, wenn ich vom ISP direkt zum Chip
durchklingeln kann, sollte es der richtige (weil einzige) sein.
> hast du nicht mitbekommen das die neueren Arduino den 115k bootloader> bekommen haben und zwar nicht in Flash sondern im Tempo.> Es wird bei neueren bootloader nicht mit 56k2 geladen sondern mit 115k2
Über ISP? Halte die Dinge doch mal etwas auseinander!
> ich weiss aber nicht ob das auch für andere AVR ATmega Arduino gilt,> wollte es nur mal anmerken!
Gut, ich merke... Und warum schreiben die Kollegen dort extra vom Nano?
Und Ja, vom Nano kenne ich das.
> Da du aber vom Arduino Mega 2560 Pro Mini schreibst müsste man das mal> prüfen!
Muss man nicht.
Old-Papa
Old P. schrieb:> Ich schrieb "(Foto: solch ein Teil ist das)"
Das ist aber kein "Mega 2560 Pro Mini".
Sondern ein "Mega 2560 Pro".
Und schon gar kein Arduino.
Dieses ist ein "Mega 2560 Pro Mini"
https://www.ebay.de/itm/162593120251
Deutlich erkennbar an dem ATMega16U2 und dem zweiten ISP Stecker.
Aber auch kein Arduino
Arduino Fanboy D. schrieb:> Nein, es ist kein Clon.
Und was dann?
> Nein, das ist kein Arduino.> Und kein Clon.
Und was dann?
> Auch durch stete Wiederholung, wird es nicht wahrer.> Du glaubst nur fester daran.
Ich glaube überhaupt nicht daran, mir ist das auch einigermaßen egal, da
ich eh über ISP direkt auf den Chip gehe.
> Es gibt durchaus ältere ISP Adapter, welche Probleme mit dem großen> Adressraum haben.
Das kann sein, meiner ist ca. 5 Jahre alt. Das ist zumindest mal ein
Ansatz.
Allerdings ist mein TL866II Plus nagelneu und machte auch Probleme. Ich
hatte allerdings auch einen USBASP von meinem Sohn versucht (dieses Jahr
gekauft), der gleiche Mist.
Was nutzt Du oder kannst Du empfehlen?
Old-Papa
Old P. schrieb:> Was nutzt Du oder kannst Du empfehlen?
Atmel ICE
Empfehlen kann ich auch "Arduino as ISP".
Old P. schrieb:> Und was dann?
Irgend ein Board, von irgendeinem Hersteller.
Softwarekompatibel mit dem "Arduino Mega 2560"
Es kann kein Clon sein, weil es einen solchen Arduino schlicht und
einfach nicht gibt.
Es gibt nur einen Arduino mit ATMega250, und das ist der "Arduino Mega
2560". Dessen Hardwareaufbau ist allerdings schon sehr anders.
Du merkst:
Es ist kein Clon.
(oder du verstehst nicht, was das Wort Clon für eine Bedeutung hat)
Arduino Fanboy D. schrieb:> Das ist aber kein "Mega 2560 Pro Mini".> Sondern ein "Mega 2560 Pro".
Ok, bei "Mini" ging ich von der Größe aus, ich habe die ja nicht selber
beschafft. Hinten steht "Mega 2560 Pro (Embeded)" drauf.
Zumindest war auf seiner Hauptplatine exakt dieses Modell verbaut.
> Und schon gar kein Arduino.
Ich habe eins der Module (den Rest konnte ich behalten) vorhin auf
meinem "Bastelrechner" wieder an die Arduino-IDE gehangen, er nimmt alle
Beispielsketche klaglos an. Ob er sie dann auch klaglos ausführt, keine
Ahnung.
> Dieses ist ein "Mega 2560 Pro Mini"> https://www.ebay.de/itm/162593120251> Deutlich erkennbar an dem ATMega16U2 und dem zweiten ISP Stecker.
Sieht ähnlich aber doch anders aus, keine Frage!
Leider Sind die "Zweitchips" unlesbar, ich habe darauf auch nicht
wirklich geachtet. Es sind wohl "nur" CH340er Chinamöppel drauf.
> Aber auch kein Arduino
Ja, genau genommen nicht, doch wie ich schon schrieb, so wie Millionen
andere Clones auch.
Ja, dieser "Arduinokompatible" ist schon sehr speziell.
Doch mit Arduino hatte ja mein Problem mit den Dingern nichts zu tun, da
ich per ISP direkt in den µC gegangen bin. Außer TXD und RXD sind keine
weiteren Pins (sichtbar) an den anderen Chip geknüppert. Es ist quasi
ein nackter Mega2560 mit Power, Quarz und Resetbeschaltung. Also per ISP
so eigentlich immer nutzbar. Wenn nicht der µC selber eine Fälschung
ist....
Old-Papa
Arduino Fanboy D. schrieb:> Joachim B. schrieb:>> es sind nämlich 2 drauf.> Nein, sind es nicht.
Klasse Antwor1, ich sehe zwei 6-polige Stecker ungelötet auf dem ersten
Bild und keine Rückseite, was soll man da denken wenn er von ISP
schreibt?
alle Arduino m2560 die ich bis jetzt besaß hatten immer zwei ISP
Schnittstllen.
Den m2560 pro mini hatte ich bis dato nicht ist der ein Nachbau oder
clone?
Offiziell gibt es ja nicht mal den Arduino m1284p, aber einige
ausserhalb von Arduino
Joachim B. schrieb:> Klasse Antwor1, ich sehe zwei 6-polige Stecker ungelötet auf dem ersten> Bild und keine Rückseite, was soll man da denken wenn er von ISP> schreibt?
Dann denkt mann, dass da zwei sechspolige Stcker liegen und nicht mehr.
> alle Arduino m2560 die ich bis jetzt besaß hatten immer zwei ISP> Schnittstllen.
Darum ging es aber nicht. Es ging ausdrücklich um die Modelle, wie im
Foto bespielhaft(!) gezeigt.
Old-papa
Verstehe das nicht mit den Fuses. Im DB stehen Lock Bits.
Der Fehler wird wohl auch nicht mehr reproduzierbar sein, nachdem der
Controller einmal gebrannt wurde. Die LockBits werden durch den
ChipErase zurückgesetzt.
Unter 29.4 steht aber ausdrücklich:
The user can select:
• To protect the entire Flash from a software update by the MCU
• To protect only the Boot Loader Flash section from a software update
by the MCU
• To protect only the Application Flash section from a software update
by the MCU
• Allow software update in the entire Flash
Old P. schrieb:> so wie Millionen> andere Clones auch.
Das ist kein Arduino Clon.
Dieses ist ein UNO Clon:
https://www.ebay.de/itm/263972773600
Eine dreiste Fälschung.
Selbst das "Made in Italy" findet sich auf der Unterseite
Und dieses ein UNO Nachbau:
https://www.ebay.de/itm//273971336890
Mit Quarz am ATMEega328p
------------
Verstehe mich bitte falsch....!
Du schimpfst auf Arduino, nutzt aber weder die Arduino IDE, noch ein
Arduino Board.
Noch nicht mal einen Nachbau, oder einen Clon.
Schreist aber "Arduino des Grauens!"
Das ist irrational.
Nein, ich halte das sogar für gründlich daneben.
Für unanständig.
Denn dein Problem hat NICHTS, wirklich gar nichts, mit Arduino zu tun.
Joachim B. schrieb:> Klasse Antwor1, ich sehe zwei 6-polige Stecker ungelötet auf dem ersten> Bild und keine Rückseite, was soll man da denken wenn er von ISP> schreibt?
Boards mit dem CH340 benötigen keinen 2ten ISP Stecker.
Joachim B. schrieb:> alle Arduino m2560 die ich bis jetzt besaß hatten immer zwei ISP> Schnittstllen.
Deine Boards sind hier irrelevant.
Joachim B. schrieb:> Den m2560 pro mini hatte ich bis dato nicht ist der ein Nachbau oder> clone?
Weder noch.
Es kann kein Clon sein, weil es kein dazu passendes Original gibt.
Und ein Nachbau ist es auch nicht, da das Board einen gänzlich anderen
Aufbau hat, gegenüber dem originalen Arduino Mega.
Arduino Fanboy D. schrieb:> Boards mit dem CH340 benötigen keinen 2ten ISP Stecker.
ist auch logisch, wo gab es die?
Ich hatte nur immer Boards mit 2tem mega, die U Type, als Original und
Nachbau!
Joachim B. schrieb:> Arduino Fanboy D. schrieb:>> Boards mit dem CH340 benötigen keinen 2ten ISP Stecker.> ist auch logisch, wo gab es die?
Siehe Bild im Eingangsposting.
Viele Boards aus China verwenden den CH340.
Framulestigo schrieb:> Verstehe das nicht mit den Fuses. Im DB stehen Lock Bits.> Der Fehler wird wohl auch nicht mehr reproduzierbar sein, nachdem der> Controller einmal gebrannt wurde. Die LockBits werden durch den> ChipErase zurückgesetzt.
Natürlich sind die Dinger schon einmal geflasht, direkt beim Chinamann.
> Unter 29.4 steht aber ausdrücklich:> The user can select:> • To protect the entire Flash from a software update by the MCU> • To protect only the Boot Loader Flash section from a software update> by the MCU> • To protect only the Application Flash section from a software update> by the MCU> • Allow software update in the entire Flash
Aha, und nun? Nichts von dem passt zum Fehlerbild
Eher wahrscheinlich ist eine amok laufende Programmiersoftware oder der
Adapter, wie Kollege Arduino-Fanboy anmerkte.
Im Moment auch egal, meine "Würgaround" Lösung hat zumindest mich (und
meinen Bastelkumpel) weiter gebracht.
Dennoch: sowas reizt mich! Diesen arduinoähnlichen Chinamöppel (so
besser?) werde ich noch auf Herz und Nieren prüfen. Nur nicht mehr heute
oder morgen.
Ich gelobe auch, nicht mehr über Arduino zu schimpfen (habe ich
eigentlich nicht) und das Teil nur noch "Das Grauen" zu nennen ;-)
Old-Papa
Joachim B. schrieb im Beitrag #6362708:
> ja schrecklich immer noch dürfen Unregistrierte allen Mist hier> absondern!
Dafür hats in diesem Thread keinen Gast gebraucht :->
Aber vielleicht kann man sich ja auf eine Basis einigen, mit der alle
leben können?
Es handelt sich um eine Platine, die mit einem originalen Arduino nichts
zu tun hat.
Auf dieser saß ein Mega2560 und dieser hat wohl den passenden Bootloader
um mit der Arduino IDE angesprochen zu werden. (Ebay findet beim
Suchbegriff mega 2560 pro mini meist den Beisatz for Arduino Mega 2560
R3).
Arduino Fanboy D. schrieb:> Old P. schrieb:>> Was nutzt Du oder kannst Du empfehlen?> Atmel ICE
Oha, der haut ja kräftig ins Budget...
> Empfehlen kann ich auch "Arduino as ISP".
Kann der dann auch lesen? Welche "Brennsoftware" nimmt man dann?
Old-Papa
Old P. schrieb:> Welche "Brennsoftware" nimmt man dann?
Avrdude
Old P. schrieb:> Oha, der haut ja kräftig ins Budget...
Ja!
Direkt nach der Atmel Übernahme, gabs mal ein Angebot.
Leider jetzt nicht mehr.
Irgendwas um 50 bis 60 Euro incl Box und Kabelsatz
Ist allerdings "DER" Programmer+Debugger für die Atmel(AVR+ARM) Welt.
Einzig die HV Modi, die kann er nicht.
Arduino Fanboy D. schrieb:> Avrdude
Ok, AVRDUDESS ist ja der aktuelle Avrdude, nur mit einer GUI versehen.
> Direkt nach der Atmel Übernahme, gabs mal ein Angebot.> Leider jetzt nicht mehr.> Ist allerdings "DER" Programmer+Debugger für die Atmel(AVR+ARM) Welt.
Das hätte ich noch hingelegt.
Was ist mit dem alten Dragon? Habe ich zwar nicht, schwirrt aber im
Bekanntenkreis rum.
> Einzig die HV Modi, die kann er nicht.
Die können das STK500 und wohl auch auch der TL866II Plus.
Old-Papa
Ende der Sendung schrieb im Beitrag #6362679:
> Wohl dem, der sich vor 4-5 Jahren noch einen Kreis von anständigen> Gleichgesinnten zusammengesucht hat und mit diesem außerhalb dieses> ehemaligen "Forums" Kontakt hält.
Warum bist du dann nicht bei deinen Gleichgesinnten sondern hier im
Forum?
Old P. schrieb:> Was ist mit dem alten Dragon? Habe ich zwar nicht, schwirrt aber im> Bekanntenkreis rum.
Der Dragon ist Schrott und ich würde mir auch den ICE nicht kaufen.
Sondern einen bekannten billigen USB-ISP wie USBasp. Ich selbst nutze
meistens den mySmartUSB light. Da gibts einfach keine Probleme damit.
avrdude als Software und man ist fertig.
Cyblord -. schrieb:> Der Dragon ist Schrott und ich würde mir auch den ICE nicht kaufen.> Sondern einen bekannten billigen USB-ISP wie USBasp. Ich selbst nutze> meistens den mySmartUSB light. Da gibts einfach keine Probleme damit.> avrdude als Software und man ist fertig.
Ein mySmartUSB MK2 muss auch noch in einer Kiste liegen.
Welche Software nimmt man da? Die damals originale war ein einziger
Schrotthaufen ;-) Der Dude erkennt das Ding nicht.
Mit dem USBASP (etwa 5 jahre alt) und AVRDude bin ich ja hier unterwegs
gewesen.
Old-Papa
Old P. schrieb:> Ein mySmartUSB MK2 muss auch noch in einer Kiste liegen.> Welche Software nimmt man da? Die damals originale war ein einziger> Schrotthaufen ;-) Der Dude erkennt das Ding nicht.
Also den light nutze ich seit Jahren mit avrdude. Durch alle OS bis zum
aktuellen Windows 10. Das wird auch mit dem MK2 gehen. Wie gesagt, bei
dir sitzen die Probleme meistens zwischen Tastatur und Stuhl.
Cyblord -. schrieb:> Also den light nutze ich seit Jahren mit avrdude. Durch alle OS bis zum> aktuellen Windows 10. Das wird auch mit dem MK2 gehen. Wie gesagt, bei> dir sitzen die Probleme meistens zwischen Tastatur und Stuhl.
Na Du muss es ja wissen.
Mit welcher geheimen Befehlszeile rufst Du denn den im Dude auf?
ich habe den gerade hervorgekramt, wird auch unter "Com3" gefunden, doch
zumindest in der GUI vom AVRDude kann ich den nicht auswählen (soll ja
"Atmel AN910" kompatibel sein). Vielleicht ist es auch der MK1, es steht
ja nichts drauf. Die Unterlagen dazu auf meinem Rechner geben auch nicht
mehr her als mySmartUSB... Optisch (nach Vergleichsfotos im Netz) könnte
es der MK2 sein.
Aber egal, ich vermute, damit komm ich bei diesem "Chip des Grauens"
auch nicht viel weiter.
Old-Papa
Old P. schrieb:> ich habe den gerade hervorgekramt, wird auch unter "Com3" gefunden, doch> zumindest in der GUI vom AVRDude kann ich den nicht auswählen
Ich nutze keine GUI. Ich gebe einfach den Comport beim aufruf an.
Die beiden Eröffnungsbeiträge sind eine endlose Litanei irreführender
widersprüchlicher Informationen. Und im weiteren Verlauf wurde es kein
bisschen besser.
Wenn man so chaotisch vorgeht, dann ist das Versagen schon zu 80% zu
erwarten.
Normalerweise soll mn ja helfen, aber wie ich gelesen habe, möchte der
Old Papa gar keine Hilfe. Er will nur eine Bestätigung, dass der
ATmega2560 schlecht sei. Die wird er hier aber nicht bekommen.
Die Fehlerursache ist an einer Stelle, die er uns verschwiegen hat.
Wahrscheinlich deswegen, weil es sich da selbst sehr sicher ist, nichts
falsch gemacht zu haben. Wir kennen das ja, kommt öfters vor. man
blockiert sich selbst durch die Meinung "das kann es nicht sein" oder
"da habe ich alles richtig gemacht".
Wie üblich könnten ein paar Fotos vom Aufbau mit hoher
Wahrscheinlichkeit schon das Rätsel auflösen. Old-Papa weiß das, aber er
hält sie für unnötig.
Stefan ⛄ F. schrieb:> Er will nur eine Bestätigung, dass der> ATmega2560 schlecht sei. Die wird er hier aber nicht bekommen.
na ja, schlecht ist das falsche Wort, nur ist der alt, mit 8k SRAM etwas
schwach auf der Brust, der m1284p mit 16k SRAM gefällt mir da besser,
aber andere erfreuen sich halt an die vielen Portpins.
Stefan ⛄ F. schrieb:> Die beiden Eröffnungsbeiträge sind eine endlose Litanei irreführender> widersprüchlicher Informationen. Und im weiteren Verlauf wurde es kein> bisschen besser.
Nö, das ist alles folgerichtig und korrekt beschrieben, ob Du das
verstehst, naja....
Ich gebe zu, da ich mit insgesamt drei dieser "Arduinos" im Wechsel
gearbeitet habe, muss man genau lesen um den Überblick nicht zu
verlieren.
Mit dreien war nicht nötig, zwei neben dem Original wären auch gegangen.
Doch so hatte ich immer einen zum kontrollieren, weil der völlig
jungfräulich war.
Im weiteren Verlauf musste ich gegen Mißverständnisse und
Unterstellungen anschreiben, das macht es nicht besser, wie auch.
Kurzform:
Enen originalen ausgelesen, Datei gespeichert.
Einen nagelneuen (und völlig leeren) ausgelesen und Datei gespeichert.
Dann beide Dateien nach Inhalt vergleichen lassen, beide aufs Bit
identisch. Was fällt Dir auf? Richtig, dass kann ja gar nicht sein, wenn
der Originale einen umfangreichen Code enthält.
Old-Papa
PS: Der mega2560 ist mir völlig egal, warum soll ich den schlechtmachen
oder hochjubeln? Es ist ein µC wie tausend andere auch. Er hat
technische Daten, die man nutzen kann, ob er damit für das eigene
Projekt ausreicht oder Oversized ist, muss doch jeder selber
entscheiden. Ich werde wohl nie was damit machen.
Warum nennst du ihn dann wiederholt "Arduino des Grauens"?
Was willst du eigentlich mit diesem Threads bewirken. Nicht meckern,
keine Hilfe suchen, was dann?
Stefan ⛄ F. schrieb:> Warum nennst du ihn dann wiederholt "Arduino des Grauens"?> Was willst du eigentlich mit diesem Threads bewirken. Nicht meckern,> keine Hilfe suchen, was dann?
Wie lange bist Du in Foren? Ist es hier üblich mitten im Thread die
Überschrift zu wechseln? Woanders nicht....
Ich mach das mal. Obwohl: Die Fragen werden damit auch nicht
beantwortet.
Old-Papa
Old P. schrieb:> Ist es hier üblich mitten im Thread die> Überschrift zu wechseln?
Du hast es auch im Text wiederholt, und zwar gestern um 19:00.
> Die Fragen werden damit auch nicht beantwortet.
Welche Fragen? Ob der ATmega2560 Scheiße ist? Nein, ist er nicht.
> Wat nu?
Ist keine richtige Frage.
> warum sind beide Dateien bit-identisch?
Logischerweise, weil beide Controller den gleichen Inhalt hatten oder
das Auslesen in beiden Fällen mit der selben Fehlfunktion fehlschlug.
> Der jetzt gelesene Flashinhalt ist deutlich> anders, nur am Ende wieder gleich (dort ist der Bootloader?)
Der Bootloader liegt normalerweise am Ende des Flash Speichers.
> Doch warum wird mit aktiviertem Bootloader beim Mega2560 Pro> Mini nur dieser ausgelesen?
Ich halte diese Aussage für einen Irrtum.
> Was hat es mit den beiden ausgegrauten Lock-Fusebits auf sich?
Da hast du vergessen, einen Screenshot zu zeigen und anzugeben, welche
Bits du meinst. Kommt gleich nochmal...
> Warum einen Schraubstock und Genöhns auf die arme Platine loslassen?
Das ist keine richtige Frage, kann man nicht beantworten.
>> Hat er auch den Bootloaderwechsel mitbekommen von 57k6 zu 115k? new>> bootloader?> Beim Mega2560 Pro? Der hat insgesamt 256k Flash, wo soll da ein 115k> Bootloader (noch dazu 2x hin?
Facepalm. 115k ist die Baudrate, nicht die Größe!
> Und was hat es mit den beiden ausgegrauten Lockbits auf sich?
Du hast vergessen, im Screenshot die Stelle zu markieren, die du meinst.
Vermutlich die beiden ganz links oben. Die gibt es schlicht nicht. Bei
Fuses sind nicht alle Bytes voll belegt.
> Aha, ich habe das erfunden, weil ich Langeweile habe?
Weiß ich nicht
> Was glaubst Du was ich seit vielen Jahrzehnten als Erstes mache?
Weiß ich nicht
>> Sie (STK500) sind alt und schlecht. Heute gibt es besseres.>> Allein wegen der Schnittstellenproblematik.> Neu verpackt, schön bunt und klicki! Doch wirklich besser?
Das musst du selbst beurteilen, denn nur du weißt, welche Aspekte dir
wichtig sind.
>> Es wird bei neueren bootloader nicht mit 56k2 geladen sondern mit 115k2> Über ISP?
Der Bootloader muss über ISP installiert werden, wird anschließend über
eine serielle Schnittstelle (meist via USB-UART) mit der angegebenen
Baudrate benutzt.
> Und warum schreiben die Kollegen dort extra vom Nano?
Das frage doch bitte die Kollegen. Der neue Bootloader wurde zuerst mit
dem Arduino Nano ausgeliefert. Es würde mich nicht überraschen, wenn der
nach und nach auf alle Arduino Modelle ausgerollt wird.
>> Nein, es ist kein Clon.> Und was dann?
Das ist keine richtige Frage, kann man nicht beantworten.
>> Nein, das ist kein Arduino. Und kein Clon.> Und was dann?
Die Wiederholung macht es nicht besser.
>> Es gibt durchaus ältere ISP Adapter, welche Probleme mit dem großen>> Adressraum haben.> Das kann sein, meiner ist ca. 5 Jahre alt...Was nutzt Du oder kannst Du
empfehlen?
Die Frage war jetzt nicht an mich gerichtet, ich antworte trotzdem: Ich
nutze meistens den originalen Atmel ISP mkII. Und zwar weil der sehr
zuverlässig funktioniert und robust ist. Manchmal benutze ich auch einen
USBASP Stick, aber nur mit 5V. Und sollte der mal zicken, dann wird ganz
schnell wieder der Atmel ISP mkII aus der Kiste geholt.
>> (Jemand zitiert die Beschreibung der Lock Bits)> Aha, und nun? Nichts von dem passt zum Fehlerbild.
Das ist keine richtige Frage, kann man nicht beantworten.
>> Empfehlen kann ich auch "Arduino as ISP".> Kann der dann auch lesen?
Ja sicher.
> Welche "Brennsoftware" nimmt man dann?
Avrdude, das auch von der Arduino IDE verwendet wird.
> Was ist mit dem alten Dragon?
Ein empfindliches Teil dass viele aktuelle AVR Modelle nicht
unterstützt. Der war mal wegen seinem niedrigen preis interessant, um
die kleineren Modelle (bis 32kB) zu debuggen. Ich würde ihn heute nicht
mehr empfehlen. Aktuell wäre der bereits empfohlene Atmel ICE in deinen
zahlreichen Varianten.
> Ein mySmartUSB MK2 muss auch noch in einer Kiste liegen.> Welche Software nimmt man da?
Laut Bedienungsanleitung
(http://download.zeitech.de/Documents/mySmartUSB_MK2_Manual.pdf) das
"myAVR Progtool" oder im AVR Studio das Tool "AVR Prog" oder avrdude.
Lies einfach mal die Bedienungsanleitung, bevor du dumme Fragen stellst.
Er verwendet er das AVR910/911 Protokoll. Ich habe einen ähnlichen
Programmierdapter (das war mein erster), der funktionierte mit dem
Programm Avr-Osp II (http://stefanfrings.de/avr_tools/AvrOspII_547.zip).
Das Protokoll ist aber sehr alt, es unterstützt einige aktuelle Modelle
nicht. Selbst für den ATTiny13 musste ich schon einen Workaround
konfigurieren.
> Mit welcher geheimen Befehlszeile rufst Du denn den im Dude auf?
Steht auch in der Bedienungsanleitung.
> Der mega2560 ist mir völlig egal, warum soll ich den> schlechtmachen oder hochjubeln?
Das musst du uns erklären, nicht wir dir. Schau dir deine beiden
Eröffnungsbeiträge und den Titel des Threads an. Du hast ihn schlecht
gemacht!
Damit sind alle deine Fragen so weit möglich beantwortet. Die meisten
sogar mehrfach. Jetzt beruhige dich mal, und fange nochmal von vorne an.
Aber gehe dieses mal strukturiert vor.
Old P. schrieb:> Nö, das ist alles folgerichtig und korrekt beschrieben, ob Du das> verstehst, naja....
Es ist eine einzige wirre Litanei. Das ist überhaupt keine Frage.
Nach so vielen Posts weiterhin unklar:
Was ist eigentlich das Problem.
Wie ist der aktuelle Stand.
Was war jetzt eigentlich die Lösung.
Cyblord -. schrieb:> Nach so vielen Posts weiterhin unklar:
Ich glaube ich habe ihn mittlerweile verstanden nachdem ich es dreimal
gelesen und darüber geschlafen habe:
> Was ist eigentlich das Problem.
Er wollte das Programm aus einem ATmega2560 auslesen, bekam aber das
gleiche Resultat wie bei einem neuen jungfräulichen Chip.
> Wie ist der aktuelle Stand.
Er konnte den Chip dann doch noch auslesen, nachdem er den Bootloader in
den Fuses deaktivierte (sehr merkwürdig, aber das müssen wir erst mal so
hin nehmen).
> Was war jetzt eigentlich die Lösung.
Noch hat er keine saubere Lösung, nur einen Workaround (ändern der
Bootloader Fuses).
Old-Papa, ist das so richtig?
Hi,
war alles recht lustig zu lesen, aber viel direkte Lösung kam
wenig/keine.
Habe es auch nicht zu Ende gedacht, aber: Fuse $D8 ist Reset nach $00
$DF ist:
Notes: 1. When the BOOTRST Fuse is programmed, the device will jump to
the Boot Loader address at reset
Könnte das ein Ansatz sein??
so nu schnell weg ehe man mich zerfleischt.
einen schönen Tag noch, Uwe
Old P. schrieb:> STK500 liegen hier ein paar nebst Zubehör, doch leider keine COMs mehr> am Notebook.> Mit "COM-zu-USB-Wandler" gab es immer Stress. Das ist aber eine ganz> andere Baustelle.
Hi,
Verstehe die Aufregung nicht.
Ganz easy, nur noch ein Genderchanger anstecken oder die
Befestigungsschrauben abschrauben.
Im Connection-Menü "auto" wählen oder was dann vorgeschlagen wird.
Übrigens mit einem Uraltrechner dauert das Laden der Targetspezifika
schon 5 Minuten. Habe mit WinME mit STK500 angefangen. Weiß, wovon ich
rede.
Lass es. Nimm nen schnelleren Rechner.
ciao
gustav
Klaus schrieb:> Was o> ist denn da los? Hat einer Old Papas Account gehackt? Von ihm kommt doch> normalerweise nicht so ein Schrott.
Das Alter macht vor niemandem halt...
Ok, ich bin raus.
Einigen hier geht es überhaupt nicht um das Thema (ja das wurde
genannt), es geht inzwischen schon Richtung purem Hass und Lügen. Da
wird regelrecht das Gegenteil von dem geschrieben, was ich gefragt
hatte.
Ende!
Old P. schrieb:> Ok, ich bin raus.> Einigen hier geht es überhaupt nicht um das Thema (ja das wurde> genannt), es geht inzwischen schon Richtung purem Hass und Lügen. Da> wird regelrecht das Gegenteil von dem geschrieben, was ich gefragt> hatte.>> Ende!
Nun es wurden am Ende konkrete Nachfragen gestellt -> keine Antwort.
Stefan hat sich viel Mühe gegeben dich zu verstehen.
Was bei all dem nach wie vor unklar ist (es gab Nachfragen dazu): Warum
diese fanatische Konzentration auf die Fuses? In dem Moment in dem man
mittels ISP die Fuses lesen (und schreiben) kann, in dem Moment sind sie
uninteressant für das Lesen des Flashs.
Man kann mit den Fuses zwar ein ISP Zugriff abschalten (aber dann kann
man die Fuses auch nicht mehr lesen und auch nicht ändern), aber nicht
das lesen des Flashs behindern.
Ausgenommen die Lock-Bits. Sind die aber gesetzt, kann der Flash so oder
so nicht mehr gelesen werden. Kein fummeln an den Fuses kann das ändern.
Also warum überhaupt mit den Fuses beschäftigen?
Wurde dieses unlogische Vorgehen jemals erklärt?
Und genau dieses Rumdoktern entgegen jeglicher Fakten, zeigt MIR, dass
es halt an Wissen mangelt und dies durch energisches Um-sich-schlagen
und seitenlange Monologe ausgeglichen werden soll.
Jemand der weiß was er tut kann das Problem im drei kurzen Sätzen
beschreiben.
>Man kann mit den Fuses zwar ein ISP Zugriff abschalten (aber dann kann>man die Fuses auch nicht mehr lesen und auch nicht ändern)
Doch, mit HV-Programming, läßt sich das zurücksetzen, allerdings wird
dabei auch der Programmspeicher gelöscht. So etwas sollte der TE
unterlassen, da er ja unbedingt das Programm aus dem alten Chip auslesen
möchte/muss.
> COM:, Schnittstellenproblematik, STK500
Ich weiß nicht, warum immer alle auf den COM-Ports herumhacken. Das ist
eine solide Schnittstelle, die in vielen Bereichen noch immer üblich
ist. Für Desktoprechner sind solche Schnittstellen-Karten, auch mit PCIe
problemlos zu bekommen, wenn der Rechner nicht ohnehin schon eine hat.
Gerade mit der seriellen Schnittstelle gibt es keine Problematik. Das
Problem tritt erst auf, weil USB versucht, die serielle Schnittstelle zu
emulieren. Das funktioniert meistens ganz gut, aber eben leider nicht
immer.
Mein Notebook ist nicht alter Schrott, sondern hat einen i7, GHz und
Win7. Das hat eine serielle Schnittstelle, an die das STK500
angeschlossen ist. Dank Firmwareupdate kann ich auch fast alle 8-Bitter
benutzen.
Man kann sogar aus der Arduino-IDE einen µC über das STK500 beschreiben
(auch den Bootloader brennen), wenn man denn möchte.
svensson schrieb:> Doch, mit HV-Programming
Es geht aber um ISP. Das es andere Möglichkeiten gibt ist klar. Will ich
aber mittels ISP den Flash auslesen, sind mir die Fuses egal. Kann ich
gar nicht via ISP drauf, ist über die Fuses was abgeschaltet (Reset)
oder angeschaltet dW). Kann ich nur mit HV beheben. Kann ich den Flash
nicht lesen, ist wohl das LockBit gesetzt und ich werden den Flash
Inhalt nicht bekommen. Auch nicht mit HV.
Also ich muss als eigentlich stiller Mitleser mal was loswerden.
Der Mann hat ein Problem mit den ausgelesenen Dateien und nicht damit,
das er sie auslesen kann. Ich habe schon im zweiten Teil verstanden,
worum es geht (glaube ich)
Die ausgelesenen Dateien bzw. deren Inhalt waren wohl immer gleich
(bit-identisch, wie er schreibt) , egal welche Platine (mit völlig
unterschiedlichem Codeinhalt) er ausgelesen hat. Selbst mir als
Arduinomuffel leuchtet ein, dass das ja eigentlich nicht sein kann.
Danach erst hat er mit den Fuses gespielt und eine Kombination gefunden,
mit der er den tatsächlichen Dateninhalt erhalten hat.
Fast alles was danach als Antworten kam war wohl wirklich Unverständnis
über den etwas langen Text oder eine gewisse Arroganz, wie ich sie hier
schon in einigen Threads beobachten konnte.
Na vielleicht meldet er sich ja doch noch einmal zu Wort.
Ich kenne ihn aus anderen Foren und was er dort schreibt und vor allem
auch zeigt nötigt mir immer großen Respekt ab.
Alfred (nein, nicht verwandt und nicht verschwägert)
Das hatte ich doch geschrieben. Beim Rücksetzen der LockBits wird auch
der Flash gelöscht - sonst wären die LockBits ja sinnlos...
Im Falle des TE dürfte es aber nicht an den Fuses liegen.
Alfred schrieb:> Der Mann hat ein Problem mit den ausgelesenen Dateien und nicht damit,> das er sie auslesen kann. Ich habe schon im zweiten Teil verstanden,> worum es geht (glaube ich)
Wow dann hättest du ihm die ganze Zeit helfen können hast es aber nicht
getan? Wie gemein!
> Danach erst hat er mit den Fuses gespielt und eine Kombination gefunden,> mit der er den tatsächlichen Dateninhalt erhalten hat.
Was 1.) nicht stimmt:
> Das Dingens an einen USBASP-China-Adapter gestöpselt und im> dem schon vertrauten "ExtremeBurner" die Fuses ausgelesen.
D.h. erstmal direkt an die Fuses ran,
und 2. gibt es keine Fuse Kombination die man über ISP einstellen kann
und die dann Zugriff auf den Flash ermöglicht wobei dieser Zugriff
vorher blockiert war.
Darum gehts ja. Das ist nicht möglich. Die Fuses spielen hier keine
Rolle.
Hallo,
kurze Vermutung meinerseits, was die identischen Inhalte der Platine im
Vergleich zu einer neuen angeht: Beim letzten Versuch, über USB und den
Arduino-Bootloader zuzugreifen (oder aus irgend einem anderen Grund)
wurde ein Arduino-Flash-Vorgang angefangen, aber nicht zu Ende gebracht.
Dabei wurde als Erstes der Anwendungsbereich gelöscht. Folge: es ist nur
der Arduino-Bootloader auf dem µC, genau wie bei einer neuen Platine.
Es wurde zwar gesagt, dass das Programm angeblich noch lief, aber was
danach noch versucht wurde nicht. Diese Versuche könnten den jetzigen
Zustand erzeugt haben.
Schöne Grüße,
Martin
Hi,
Cyblord schrieb
> Könnte daran liegen dass keine Frage gestellt wurde.
OP-schrieb
>Doch warum wird mit aktiviertem Bootloader beim Mega2560 Pro Mini nur>dieser ausgelesen?
@Cyblord
könnte es sein das du ein wenig überheblich bist?
hast du dir denn mal Gedanken darüber gemacht was
>Notes: 1. When the BOOTRST Fuse is programmed, the device will jump to>the Boot Loader address at reset
das bedeuten könnte? Was ist wenn diese Fuse den ganzen Adressraum
verbiegt?
Ja, steht so nirgends, aber OP hat durch Abschalten dieser Fuse den Chip
lesen und auch brennen können.
So und jetzt höre mit dem genöle auf und bringe mal vernünftige Fakten.
MfG Uwe
Ernhat doch die Lockfuses nicht angefasst, nur ausgelesen.
Bei FF-D8-FD in FF-DF-FD wird doch nur irgendwas mit dem geschützten
Bereich des Bootsektors gemacht (Größe, und ob überhaupt)
Und bei den Controllern, die ich kenne, kann man die Lockfuses überhaupt
nicht verändern (sonst wären sie unsinnig), man kann nur den ganzen Chip
löschen.
Das war allerdings wieder ein Beispiel von (absichtlichem?)
falschverstehen.
Alfred (der sich als Mitleser zurückzieht)
Uwe schrieb:> @Cyblord> könnte es sein das du ein wenig überheblich bist?
Nein
> hast du dir denn mal Gedanken darüber gemacht was>>Notes: 1. When the BOOTRST Fuse is programmed, the device will jump to>>the Boot Loader address at reset> das bedeuten könnte?
Nun, ich WEIß was es bedeutet. Und es steht ja auch unmissverständlich
da.
> Was ist wenn diese Fuse den ganzen Adressraum> verbiegt?
Tut es nicht. Es ändert die Adresse des Reset vectors.
> Ja, steht so nirgends,
Weil es nicht passiert.
> aber OP hat durch Abschalten dieser Fuse den Chip> lesen und auch brennen können.
Was humbug ist.
> So und jetzt höre mit dem genöle auf und bringe mal vernünftige Fakten.
An denen scheinst du nicht interessiert.
Alfred schrieb:> Das war allerdings wieder ein Beispiel von (absichtlichem?)> falschverstehen.
Deinen Ausführungen kann man sich nur anschließen.
Sobald hier ein u.a. "Cyblord" auftaucht, kann man die folgende
Diskussion in die Tonne treten.
m.n. schrieb:> Alfred schrieb:>> Das war allerdings wieder ein Beispiel von (absichtlichem?)>> falschverstehen.>> Deinen Ausführungen kann man sich nur anschließen.> Sobald hier ein u.a. "Cyblord" auftaucht, kann man die folgende> Diskussion in die Tonne treten.
Dein Posts ist jetzt auch nicht so richtig On-Topic. Ich schrieb bisher
nur Dinge zum Thema.
Und auf was bezieht sich das "falschverstehen"? Er ändert nichts an den
Fuses, aber liest als erstes die Fuses aus. Wozu?
Wie das mit der sozialen Kompetenz unseres Cyberlord ausschaut, .....
Naja, da möchte ich nicht viel zu sagen.
Außer: Da hat er sich schon weit schlimmere Verfehlungen geleistet, als
in diesem Thread.
Fachlich sieht das für mich alles gut und richtig aus, was er hier
abgelassen hat.
Die einzige Kritik, die ich in der Sache anbringen kann, ist:
Zustimmung!
Alfred schrieb:> Der Mann hat ein Problem mit den ausgelesenen Dateien und nicht damit,> das er sie auslesen kann. Ich habe schon im zweiten Teil verstanden,> worum es geht (glaube ich)>> Die ausgelesenen Dateien bzw. deren Inhalt waren wohl immer gleich> (bit-identisch, wie er schreibt) , egal welche Platine (mit völlig> unterschiedlichem Codeinhalt) er ausgelesen hat. Selbst mir als> Arduinomuffel leuchtet ein, dass das ja eigentlich nicht sein kann.> Danach erst hat er mit den Fuses gespielt und eine Kombination gefunden,> mit der er den tatsächlichen Dateninhalt erhalten hat.>> Fast alles was danach als Antworten kam war wohl wirklich Unverständnis> über den etwas langen Text oder eine gewisse Arroganz, wie ich sie hier> schon in einigen Threads beobachten konnte.
Das Problem ist, das die alle angeblichen Lösungsversuche nichts mit dem
eigentlichen Problem zu tun haben können, aber angeblich das Problem
gelöst haben. Letztendlich hat der TO halt irgendwas falsch gemacht, und
das dann beim planlosen rumprobieren zufällig behoben.
Vielleicht hat er ja tatsächlich die ganze Zeit die falschen Dateien
verglichen, wer weiß.
Was soll man da groß antworten?
Oliver
Old P. schrieb:> Ok, ich bin raus.
Ich hätte wenigstens ein Dankeschön für meine umfangreiche
Zusammenfassung und Beantwortung all deiner Fragen erwartet, sowie eine
Antwort auf die Frage, was der aktuelle Stand ist.
Das ist echt schade, ich bezweifle dass ich dir nochmal so viel von
meiner Zeit schenke.
So Leute, ich doch noch mal.
Das wa da mit diesem Prozessor und Avrdude gibt, ich wohl doch Fakt.
Zitat aus dem Handbuch zum AVRDude 6.3
....
m16u2 ATmega16U2
m2560 ATmega2560 (**)
m2561 ATmega2561 (**)
m2564rfr2 ATmega2564RFR2
......
(**) Flash addressing above 128 KB is not supported by all programming
hardware.
Known to work are jtag2, stk500v2, and bit-bang programmers.
--- Zitat Ende---
Und wenn man sich die beiden Dateien oben ansieht, dann ist auch klar,
dass Avrdude da wohl etwas Mist liest. Offenbar werden nur die unteren
128kB vom Flash-Speicherbereich gelesen, dieser aber zwei mal. Darum
steht in seinen Dateien auch 2x der Bootsektor drin (schrieb er auch)
Das er mit den Fuses vom Bootsektor dennoch ein funktionierendes
Programm bekommen hat ist erstaunlich, aber vielleicht nicht unmöglich.
Ich bin kein Experte in Avrdude, da könnte vielleicht Jörg Wunsch mehr
zu sagen.
Es zeigt aber auch zweierlei:
Der mit der aktuellen Arduino-IDEvgelieferte avrdude ist offenbar eine
spezielle Version, wenn man damit auch diese Atmegas nutzen kann.
Es zeigt aber auch, dass hier von den selbsternannten "Experten" nemen
Verbalentgleisungen fast nur warme Luft produziert wurde.
Alfred
Alfred du verschwendest deine Zeit genau wie ich. Im Grunde genommen
enthält dein Beitrag auch keine neue Info, nur ausfürhlicher. Der
Arduino Fanboy hatte bereits auf die Sache mit dem Adressraum
hingewiesen.
Jeder glaubt, er habe die Frage des TO verstanden, und jeder glaubt es
anders. Doch der TO beantwortet die Rückfragen nicht, er klärt nicht
einmal auf, wer von uns ihn nun richtig verstanden hat. Vermutlich
keiner.
Kommt mir irgendwie bekannt vor - ich wurde als Christ erzogen.
Nun ja,
ich habe ihn schon verstanden und Du hast nicht wirklich eine Lösung
gefunden oder gar vorgeschlagen. Der Fanboy hat zumindest etwas
beigetragen und weil er was von Adressraum schrieb (wenn er es war) habe
ich überhapt nach der Doku zum Avrdude gesucht.
Das ist auch egal, er hat wohl seinen Account gelöscht.
Das ist sicher kein Grund Freude zu empfinden.
Alfred
Alfred schrieb:> Das ist auch egal, er hat wohl seinen Account gelöscht.> Das ist sicher kein Grund Freude zu empfinden.
Du glaubst noch an den Weihnachtsmann und den Osterhasen? Glückwunsch
:-)
Alfred schrieb:> (wenn er es war)
Natürlich war ER es.
Alfred schrieb:> er hat wohl seinen Account gelöscht.
Nein, ER ist hier weiterhin anwesend.
Alfred schrieb:> Der mit der aktuellen Arduino-IDEvgelieferte avrdude ist offenbar eine> spezielle Version, wenn man damit auch diese Atmegas nutzen kann.
Nein.
kann sein, dass die *.conf angepasst wurde.
Aber dann nicht wegen dem Arduino Mega
Ich meinte OP, der steht nur noch als Gast da.
Sitze gerade am Strand, zuhause vergleiche ich mal die Avrdudes.
Zumindest ist auf der offiziellen Seite von Avrdude als letzte Version
die 6.3 aus 2016 und im aktuellen Arduino eine aus 2019
Aber eigentlich: was geht mir euer Elend an...
Alfred
Alfred schrieb:> Der mit der aktuellen Arduino-IDEvgelieferte avrdude ist offenbar eine> spezielle Version
Ich verwende auch ab und an AVRDudess (2.11) mit AVRDude (6.3).
Spaßeshalber habe ich mal ein M2560 R3 Board rausgesucht. Es lässt sich
problemlos auslesen und die Daten entsprechen den Erwartungen.
Kannst Du die Datei mal posten?
Die beiden vom OP (s. oben) sind ja wohl von unterschiedlichen Modulen
mit unterschidlichen Codes, haben aber den gleichen Inhalt mit je 2x
Bootsektor.
Alfred
Beachte bitte in der Mitte das 02er extended address record. Dort
beginnt die obere Hälfte.
Am Anfang siehst du die Interrupt Vector Tabelle des Anwenderprogramms
(eine Grafik Demo), ganz oben ein Bootlader, wieder mit der Interrupt
Vector Tabelle.
So Leute, nun haben wir und wohl alle wieder beruhigt.
Und vorweg, bevor mir wieder Unvermögen oder gar Schlimmeres vorgehalten
wird: Schuld an dem Debakel ist eindeutig der USBASP-Programmer.
Dazu gleich mehr.
@Alfred,
kann sein, dass wir und aus anderen Foren kennen, bin ja nicht nur hier
aktiv.
Herzlichen Dank für Deine Klarstellungsversuche, ob die was gebracht
haben muss ja jeder selber entscheiden.
Ganz oben hatte ich ja zwei Dateien gezeigt, die wurde ganau so von zwei
verschiedenen Platinen mit völlig unterschiedlichem Inhalt ausgelesen.
Da die Zugriffszahlen sehr überschaubar sind, hat die wohl kaum jemand
angesehen. Naja....
Erster Vorwurf war ja sinngemäß: Warum hast Du die Fuses ausgelesen und
angefasst?
Nun, mit dem ExtremeBurner werden die automatisch ausgelesen, weil
standardmäßig so eingestellt. Mit diesem Programm (und dem USBASP)
arbeite ich seit Jahren und (bisher) nie Probleme. Da damit nichts mehr
ging, bin ich zum Avrdude gewechselt.
Und um mir die gante Tipperei zu sparen, habe ich AVRDUDESS als GUI
verwendet. Das funktioniert zunächst gut (bis heute)
Doch auch damit wurde kein vernünftiges File ausgelesen, da der
Bootsektor nochmal in die Mitte gespiegelt war, der Rest ist FF (auch
das schrieb ich schon)
Verändert habe ich dann nur eine Fuse (von D8 auf DF) um den
Bootresetvector zu umgehen. Durch welchen Zufall auch immer
(irgentwelche Adresszeiger oder Bereiche verändert?) damit konnte ich
ein funktionierendes Datenfile auslesen. Eigentlich alles gut, voller
Erfolg!
Nur warum das dann so war wollte ich ergründen, daher dieser Thread
hier.
In Beitrag "Re: Arduino Mega 2560 Pro Mini - Arduino des Grauens!"
hatte ich von (aus meiner Sicht) vier möglichen Ursachen geschrieben und
eine hat sich nun nachweislich bestätigt (und die befand sich nicht
"zwischen Tastatur und Stuhl" wie der Herr Lord so süffisant ätzte.)
Kollege Arduino-Fanboy hat einige Hinweise gegeben, doch in der
(inzwischen) durch den Lord und leider auch Joachim aufgeheizten
Stimmung habe ich sicher einiges überlesen (auch von Stefan)
------------------------------------------------------------------------
-------
Doch zurück zum Thema: (ja, auch der Text wir etwas länger, ist ja keine
SMS.
Es ist wirklich so, dass mit diesem Programmieradapter (in der letzten
FW-Version) ab 128kB Speicherbereich Probleme auftreten (davon berichten
auch andere User weltweit)
Ich habe also heute ein paar Versuche gemacht.
Folgende Ausgangslage:
Das HEX-File von Gerhard (herzlichen Dank dafür)
ExtremeBurner 1.4.3
AVRDUDESS mit dem Avrdude aus dem Arduinoprogrammverzeichnis (nebst
.conf)
Zwei Stück USBASP (einer aus etwa 2013 und einer aus 2020)
Ein Arduino-Nano mit dem Adruino-ISP-Programm drauf (ja, auch alles
richtig beschaltet)
Zunächst habe ich mit dem "Arduino-ISP" das HEX-File von Gerhard in
einen der M2560er Module geschrieben, keine Fehlermeldung beim Verify.
Dann mit enem der USBASP und ExtremeBurner ausgelesen, der komplette
Speicher zeigt FF
Mit dem anderen exakt das gleiche (falsche) Ergebnis (ja, Prozessor und
sonstige Einstellungen waren richtig!)
Ok, ab jetzt nur noch mit Avrdude (via AVRDUDESS)
Zunächst musste ich mit dem Zadig-Tool einen anderen USB-Treiber für die
USBASPs laden, sonst wurde nichtmal die µC-Signatur gelesen.
Danach
Abwechselnd mit den USBASP und dem Arduino-ISP den M2560-Flash
ausgelesen.
Dabei sind die Ergebnisse mit dem USBASP IMMER falsch (FF und
Wiederholungen)
und mit dem Arduino-ISP sind sie IMMER richtig!
Zum Schluss dann noch ein Versuch das OriginalFile (vom Boot) in das
M2560er Modul zu schreiben.
Mit dem USBASP geht das nicht fehlerfrei, mit dem Arduino-ISP alles ohne
Fehler.
Die ganzen Details der einzelnen Avrdude-Ausgaben und die resultierenden
Files siehe Anlage. Die Dateinamen enthalten auch die verwendeten
Programmer.
Und Ja, ich habe meinen Account gelöscht.
(der Username aber gesichert, sonst geht es mir wie MaWin)
Old-Papa
old-papa schrieb:> Da die Zugriffszahlen sehr überschaubar sind, hat die wohl kaum jemand> angesehen. Naja....
Warum auch? Wenn du sagst, dass sie identisch sind, wird das wohl so
sein. Keiner hatte daran gezweifelt.
Stefan ⛄ F. schrieb:> Warum auch? Wenn du sagst, dass sie identisch sind, wird das wohl so> sein. Keiner hatte daran gezweifelt.
Naja, Anderes wurde ja stark in Zweifel gezogen. ;-)
Einen Test mit der Avrdude-Version 6.3 habe ich mir verkniffen, ich
vermute, daran lag es nicht. Dennoch habe ich den aus der Arduino-IDE
(der ist viel jünger) jetzt als Standard eingerichtet.
Old-papa
old-papa schrieb:> Die ganzen Details der einzelnen Avrdude-Ausgaben und die resultierenden> Files siehe Anlage. Die Dateinamen enthalten auch die verwendeten> Programmer.
Und - was ist das Ergebnis?
old-papa schrieb:> Steht doch hier:> Beitrag "Re: Arduino Mega 2560 Pro Mini - Arduino des Grauens!"> im 2. Satz....
Nein - da ist nur der/das vermeintlich Schuldige benannt - weiter
nichts. Das Nichts zieht sich durch den ganzen Thread ...
Hugo H. schrieb:> Nein - da ist nur der/das vermeintlich Schuldige benannt - weiter> nichts. Das Nichts zieht sich durch den ganzen Thread ...
Ja, das ist das Ergebnis: Ein (zumindest meine) USBASP ist nicht
geeignet für µC über 128kB Flash. Zunächst nur Vermutung, doch durch
meine Tests gesicherte Erkenntnis.
Kannst Du gerne alles in Zweifel ziehen, hast Du dann eine bessere
Erkenntnis?
Warum ich durch das komische Umgefuse dennoch was Sinnvolles gelesen
habe, diese Frage kann ich nicht beantworten.
Old-papa
old-papa schrieb:> Warum ich durch das komische Umgefuse dennoch was Sinnvolles gelesen> habe, diese Frage kann ich nicht beantworten.
Das halte ich allerdings für einen interessanten Punkt. Wenn du kannst,
würde ich an deiner Stelle dort nochmal weiter forschen.
old-papa schrieb:> Warum ich durch das komische Umgefuse dennoch was Sinnvolles gelesen> habe, diese Frage kann ich nicht beantworten.
Da die Bootlader Fuse nur die Lage der verwendeten Interrupt Vektoren
Tabelle ändert, ist das auch nicht zu erklären. Der Adressraum ist mit
oder ohne aktivem Bootlader gleich, alles liegt immer an der gleichen
Adresse.
old-papa schrieb:> Und Ja, ich habe meinen Account gelöscht.> (der Username aber gesichert, sonst geht es mir wie MaWin)>> Old-Papa
Aber doch nicht wegen dem Gemotze hier im Thread? Fände ich jetzt
etwas... äh, übereilt.
Schade :-(
Reinhard
Georg G. schrieb:> Da die Bootlader Fuse nur die Lage der verwendeten Interrupt Vektoren> Tabelle ändert, ist das auch nicht zu erklären. Der Adressraum ist mit> oder ohne aktivem Bootlader gleich, alles liegt immer an der gleichen> Adresse.
Nunja, ich habe das Datenblatt vom mega2560 nicht als tägliche Lektüre
(weil eben Englisch), doch mein Ansatz war, dass da irgendwas im
Leseablauf geändert wurde. Das Komische ist ja auch, dass nicht nur der
Bootsektor in die Mitte gespiegelt wird, sondern auch, dass alle anderen
Speicherzellen zu FF gesetzt werden. Selbst bei Deiner Datei, die ja
deutlich größer ist als die, die ich ganz zu Anfang aus dem m2560 von
dieser "Bootssteuerung" gelesen habe. Bei Deiner wird auch nur der
Bootsektor stehen gelassen.
Ich habe Thomas Fischl mal angeschrieben, ich bin gespannt ob er
antwortet (oder hier im Forum aktiv ist)
Ich kenne die Abläufe beim Lesen des Flashes nicht genau. Ganz unbedarft
würde ich sagen: Adresse anlegen Lesebit setzen und Speicherzelle lesen,
danach eins höher. Kann aber auch blockweise geschehen (sehr
wahrscheinlich) und in welcher Reihenfloge diese Blöche dann? Keine
Ahnung. Eigentlich bin ich eher der Anwender: Baugruppe aufbauen,
HEX-File (oder Bin-File) flashen und gut.
Old-Papa
old-papa schrieb:> Bei Deiner wird auch nur der> Bootsektor stehen gelassen.
Das ist schnell erklärt: Das Programm ist so klein, das reicht nicht
über die Mitte hinaus.
Reinhard R. schrieb:> Aber doch nicht wegen dem Gemotze hier im Thread? Fände ich jetzt> etwas... äh, übereilt.> Schade :-(>> Reinhard
Naja, das Gemotze, speziell von immer den gleichen Usern gegen mich
zieht sich ja wie ein roter Faden durch die vielen Jahre.
Eigentlich bin ich ja hart im Nehmen (mich haben selbst die falschen
Kommunisten der DDR nicht geknackt), ich kann auch austeilen, doch
manchmal hat man einen schlechten Tag oder der Bogen bricht.
Vielleicht schreibe ich auch mal wieder als User, meinen Namen habe ich
gesichert. Klar, jeder Dödel kann jetzt als OP schreiben (wird auch
kommen), mal sehen.
Old-Papa
Georg G. schrieb:> Das ist schnell erklärt: Das Programm ist so klein, das reicht nicht> über die Mitte hinaus.
Das habe ich auch schon vermutet, zum Test wollte ich eine BIN mit fast
vollen Speicherzellen generieren, doch mein Hex-Editor ist wohl zu alt.
Mach ich aber noch.
Old-Papa
So, ich habe die Datei von Gerhard in eine BIN konvertiert (sieht man
besser) und ab 20000H bis 3C000H mit AA befüllt, dann mit dem
Arduino-ISP geflasht. Ausgelesen mit dem USBASP und exakt ab 00000H
werden AAs gelesen.
Sein Originalinhalt geht ja nur bis ca. 7800H und ist natürlich
verschwunden.
Jetzt verbiege ich mal die D8-Fuse...
Old-Papa
old-papa schrieb:> Jetzt verbiege ich mal die D8-Fuse...
Das ist spannender als Corona. Ich lasse meinen Laptop noch eine Weile
an, will wissen, wie das aus geht.
Hier das Ergebnis:
Mit "H-Fuse" = D8 werden die oberen 128kB an den Anfang der gelesenen
Datei kopiert, mit DF wird alles richtig gelesen. Die gelesene Datei ist
exakt gleich der generierten.
Sicher war meine ursprüngliche Idee ganz oben eher "Trail & Error", doch
instinktiv hatte ich wohl zumindest für diese Kombination (M2560 und
USBASP) einen Glückstreffer.
Warum dieser USBASP dieses Verhalten zeigt (oder der Treiber?), dass
werden sicher die µC-Experten hier im Forum besser ergründen können.
Old-Papa
Gerade läuft noch ein Kreuztest:
Ich flashe die Datei (mit den AAs) mit dem USBASP, avrdude wird beim
Verify sicher einen Fehler auswerfen, doch was ist wirklich drin im
m2560?
Das lese ich dann mit dem Arduino-ISP. Ich vermute, auch beim Schreiben
gibt es Kauderwelsch.
Old-Papa
Und dieser test ist auch durch.
Ich hatte vor dem Schreiben die Fuse wieder zurück auf D8 gestellt.
Das Ergebnis ist nun eine weitere verschobene Version:
Der Code von Georg liegt nun ab 20000H, danach meine AAs und ab 3E000
dann der Bootsektor. In den ersten 128kB ist alles FF.
Das Gleiche nun noch einmal, aber vorher auf DF gefust.
Old-Papa
Habe das mal überprüft...
Einen Arduino Mega 2560 ausgelesen.
USBasp mit "original" China Software -> fail
USBasp mit recht frischer Fischl Software -> fail
Arduino as ISP -> ok
Atmel ICE -> ok
"fail" heißt:
Obere Speicherhälfte doppelt, untere Hälfte fehlt
---
Fuses habe ich dafür nicht geändert.
Und schon fast wie zu erwarten, Avrdude hat beim Verify nicht gemeckert
und die Datei ist auch exakt gleich zu der mit AA aufgefüllten von
Georg.
Wie schon geschrieben, keine Ahnung warum diese Veränderung der
Bootsektorfuses eine solche Auswirkung hat.
Hier noch ein Foto der verwendeten hardware.
Der blaue USBASP ist ein paar Wochen alt, der rote aus etwa 2013.
Mein Arduino-ISP funktioniert sogar mit einem dieser Billig-Nanos (nur
m168, ein Fehlkauf).
Das Ganze auf einem Asus A93S mit Win7-64
Old-Papa
Arduino Fanboy D. schrieb:> Habe das mal überprüft...> Einen Arduino Mega 2560 ausgelesen.>> USBasp mit "original" China Software -> fail> USBasp mit recht frischer Fischl Software -> fail> Arduino as ISP -> ok> Atmel ICE -> ok>> "fail" heißt:> Obere Speicherhälfte doppelt, untere Hälfte fehlt>> ---> Fuses habe ich dafür nicht geändert.
Also wie bei mir. Mach doch mal einen Versuch mit DF als H-Fuse ;-)
Old-Papa
old-papa schrieb:> Also wie bei mir. Mach doch mal einen Versuch mit DF als H-Fuse ;-)
Auch das kann ich bestätigen.
Löscht man die Bootloader Fusebits, kann man mit dem USBasp fehlerfrei
auslesen.
Das "Warum?" verstehe ich erstmal nicht.
old-papa schrieb:> Wie schon geschrieben, keine Ahnung warum diese Veränderung der> Bootsektorfuses eine solche Auswirkung hat.
Vielleicht verändert der Bootloader irgend eine relevante Einstellung.
Der Clock Divider wäre zum Beispiel eine der Komponenten, die sich auf
den nachfolgenden Programmiervorgangs auswirkt. In deinem Fall wird es
wohl kaum der Clock Divider sein, aber vielleicht gibt es noch andere
relevante Sachen.
Stefan ⛄ F. schrieb:> Vielleicht verändert der Bootloader irgend eine relevante Einstellung.>> Der Clock Divider wäre zum Beispiel eine der Komponenten, die sich auf> den nachfolgenden Programmiervorgangs auswirkt. In deinem Fall wird es> wohl kaum der Clock Divider sein, aber vielleicht gibt es noch andere> relevante Sachen.
Nun, den clk/8 habe ich ja nicht (wissentlich) angefasst. Irgendwas wird
es aber sein. Wenn man diese Falle kennt, kommt man ja mit dem
Fuses-Würgarround erstmal weiter, doch wer traut sich bei sowas schon an
die Fuses?
Wie schon geschrieben, im Netz fand ich ein paar Threads mit dem
gleichen Problem, doch eben keine (für mich verständliche) Lösung.
Häufig verliefen die Threads ähnlich wie hir, ein paar Spötter und
Gewäsch und die wirklich hilfreichen Posts gehen darin unter.
Herzlichen Dank, dass Kollege "Arduino-Fanboy" sich die Mühe gemacht
hat, das mal zu verifizieren.
Vielleicht hat ja noch irgendwer die Muße dazu ;-)
Old-papa
Hallo,
vielleicht hast du jetzt realisiert worauf ich Anfangs hinaus wollte,
nämlich das das Problem nichts mit Arduino zu tun hat, weil du ja direkt
per ISP mit dem Controller redest. Hättest du deine Texte kürzer gefasst
und wärest gleich zur Sache gekommen, wäre das gesamte Kaos erst gar
nicht entstanden.
Tests mit meinem ATmega2560.
egal welche Fuseeinstellung
FD, D8, FF
oder
FD, D9, FF
oder
FD, DF, FF
alle Leseabbilder sind identisch und okay. Programmer ist ein original
AVRISP-mkII.
Veit D. schrieb:> Programmer ist ein original AVRISP-mkII.
Wundert mich nicht, dass der MKII funktioniert.
Der USBasp, war bisher der erste, welcher versagt.
Hallo,
es muss ja nicht Zwangsweise bedeuten das der USBasp damit auch der
Letzte ist der ein Problem hat. :-) Der mkII ist auch schon paar
Jahre alt. Der Test bestätigt jedoch das der USBasp vielleicht als
Einziger, wer weiß, ein Problem hat. Ihr könnt euch jetzt darauf
konzentrieren mit dem Entwickler den Fehler zubeheben.
Veit D. schrieb:> Hallo,>> vielleicht hast du jetzt realisiert worauf ich Anfangs hinaus wollte,> nämlich das das Problem nichts mit Arduino zu tun hat, weil du ja direkt> per ISP mit dem Controller redest.
Arduino hatte ich nur genannt, weil erstens das in diesem Controller
gespeicherte Programm ein "Arduino" ist und weil die Module, die ich
bekommen habe halt Arduinos genannt wurden.
Ansonsten habe ich im Text mehrfach geschrieben, dass ich nichts an dem
Problem mit Arduino in Verbindung bringe (ok, in der Überschrift) und
überhaupt kein "Arduinozeugs" in diesem Zusammenhang nutze.
> Hättest du deine Texte kürzer gefasst> und wärest gleich zur Sache gekommen, wäre das gesamte Kaos erst gar> nicht entstanden.
Hätte ich das gemacht, wären auch wieder die gleichen User
hervorgekommen und hätten nach Details gefragt und warum ich diese nicht
gleich nenne. Einigen geht es immer nur um Zoff.
> Tests mit meinem ATmega2560.> egal welche Fuseeinstellung> FD, D8, FF> oder> FD, D9, FF> oder> FD, DF, FF> alle Leseabbilder sind identisch und okay. Programmer ist ein original> AVRISP-mkII.
Ja, aber nutze doch mal einen USBASP und wir sprechen uns wieder.
Das es mit anderen Programmern geht, bestreitet doch keiner.
Du stellst "Beweisbehauptungen" auf und nutzt völlig anderes Werkzeug.
Old-Papa
warum steht da plözlich "Alfred"
Ich habe ihm (wenn er es ist) gerade versucht eine Mail zu schreiben,
warum steht nun sein Name oben? Eigentlich sollte der FF so eingestellt
sein, dass er Formulare nicht automatisch neu ausfüllt....
Ich such mal danach...
Blöd, da ich noch nichtmal sicher bin, ob ich den Richtigen Menschen
angeschrieben habe. (er kann sich ja mal (per mail) melden
old-papa<ät>web(punkt)de
Jetzt geht nun alles durcheinander.... Ich werde wohl doch nicht mehr
als Gast schreiben, wenn das so einfach ist.
Old-Papa
(im Moment der echte...)
Irgendwer treibt gerade sein Unwesen. Ich kann nicht unterscheiden wer
nun wer ist und ob überhaupt einer davon echt ist oder Old P. mit 2
Namen unterwegs ist. Jedenfalls hat "Alfred" keinen Schimmer von
Fehlersuchstrategie und Ausschlussverfahren. Auf Grund des Namenskaos
bin ich endgültig raus. Macht was ihr wollt.
Arduino Fanboy D. schrieb:> Hier solls einen fix geben:
Da wird ausführlich die Ursache für den Bug beschrieben und die neue
Firmware 1.5 wird zum Download angeboten, inklusive Anleitung zum Ändern
und Rettungsschirm zum Rückgängig machen.
Der arme 2560 ist unschuldig, Schuld hat allein die Firmware im USBASP,
die einen Befehl zum Setzen des Extended Address Byte glaubt weglassen
zu können.
Georg G. schrieb:> Arduino Fanboy D. schrieb:>> Hier solls einen fix geben:
Diesen Link hatte ich ja gestern auch gefunden, verstehe (da kein
Englisch gelernt) nur wenig. Allerdings habe ich gesehen, dass dort mit
D8 auf D9 gefummelt wurde.
> Da wird ausführlich die Ursache für den Bug beschrieben und die neue> Firmware 1.5 wird zum Download angeboten, inklusive Anleitung zum Ändern> und Rettungsschirm zum Rückgängig machen.
Das hatte ich so nicht verstanden, ich habe mir die HEX aber
runtergeladen und in meinen älteren USBASP geflasht.
Ergebnis:
Mit Avrdude kann ich fehlerfrei lesen und schreiben (zumindest meine
m2560er Module), also fast voller Erfolg.
"Fast" weil das Programm "ExtremeBurner (1.4.3) zwar jetzt mehr als nur
FF liest, aber nun wohl nur die unteren 128kB. Zumindest fehlt am Ende
der Bootsektor. Egal, das Ding fliegt von der Platte und gut ist.
> Der arme 2560 ist unschuldig, Schuld hat allein die Firmware im USBASP,> die einen Befehl zum Setzen des Extended Address Byte glaubt weglassen> zu können.
Ich bitte ausdrücklich beim "armen m2560" um Entschudigung ;-)
Old-Papa