Loading

Anet A8 Bootloader

Hallo,
gestern kam für meinen Anet A8 ein neues Display an. Um dieses anzuschließen, musste ich eine neue Firmware (Skynet 3d, bzw. Marlin) installieren. Da ich dies zuvor bereits aus anderen Gründen getan hatte, musste ich nur einige Änderungen vornehmen und mit der Arduino IDE hochladen. Der Vorgang hing sich auf und es erschien eine Fehlermeldung. Nach einem Neustart des Druckers versuchte ich ,den Sketch wieder hochzuladen und es erschien folgende Fehlermeldungen: "avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00" und "avrdude: stk500_recv(): programmer is not responding"

Im Internet las ich nach, das ich den Bootloader neuinstallieren müsse. Dies tat ich mit Hilfe eines Arduino Unos, das ich, wie beschrieben an das Mainboard anschloss und den ArduinoISP Sketch hochlud. Beim anschließenden brennen des Bootloaders erhielt ich wieder eine Fehlermeldung, nach einigem Herumprobieren glückte es jedoch. Beim Versuch jedoch, die Firmware zu installieren, erhielt ich wieder die Meldungen vom Anfang.
Scheinbar ist also der Bootloader beschädigt, jedoch habe ich ihn ja mehrfach neu gebrannt. Vielen dank, dass ihr euch die Zeit genommen habt, das zu lesen. Ich würde mich über Antworten freuen.

Mfg

Edit:
Jetzt bekomme ich noch folgende Meldung:
Using Port : COM6
Using Programmer : arduino
Overriding Baud Rate : 5760
avrdude: serial_baud_lookup(): Using non-standard baud rate: 5760avrdude: stk500_recv(): programmer is not responding

Ist die Baud Rate falsch? Kann ich die umstellen? Im Arduino Ordner in der boards.txt steht 57600 anstatt 5760, falls das weiterhilft...

Ich habe mir jetzt nicht alles durchgelesen, aber mir sind an der Beschreibung schon ein paar Sachen aufgefallen. Klar, die Baudrate muss sowohl beim Controller und bei dem Client gleich sein, sonst koennen die nicht miteinander kommunizieren, weil der eine zu langsam ist und der andere zu schnell. Also ja, mal runtersetzen und schauen obs klappt. Das andere waere der Port. Bist du dir sicher, dass das der richtige Port ist? Wenn du mit dem falschen Geraet kommunizierst koennte das natuerlich das Thema sein. Mal ausstecken, gucken welche Ports da sind, rein stecken und schauen welcher dazu gekommen ist. So, der Programmer ist bei mir ein anderer: AVRISP mkII

in der neusten skynet version ist eine anleitung für das problem da, manchmal übernimmt er die befehle aber sobald du einen druck startest oder ähnliches sind diese wieder futsch da er sie nicht speichert,,, also am besten wäre flashen/brennen und dann direkt in die Konsole von Cura,S3D,Octoprint was auch immer du nutzt ein M500 tippen. hat bei mir geholfen ^^

Nicht sicher ob das was hilft, aber octoprint benutzt eine Baud rate von 115200 um mit dem anet A8 zu kommunizieren.

Oder man könnte probieren mal über die Arduino IDE den Bootloader neu flashen...
https://www.bastelbunker.de/anet-v1-x-board-a8-a6-a2-via-isp-programer-wiederbeleben/

leider ist die angezeigt nicht zu gebrauchen ich bekomme morgen einen arduino uno und möchte
damit meinen anet a8 bootloader flashen. ich glaube daß dies überhaupt nicht möglich ist. 10 Anweisungen
jede verschieden hü hot rechts links aber keine sagt aus was zu beachten ist wo welcherTreiber zu holen ist
das fängt damit an daß alle dem Programmer wie auch immer über com aktivieren mein Teil ist am usb und rührt sich nicht
Hab gestöpsel installiert aber nix die letzte Möglichkeit alle Geräte sind futsch halte ich für unwahrscheinlich
Es muß doch jeman gebe der im Detail eine Bschreibung geben kann. Es ist wahrscheinlich nur eine Klenigkeit
Für einen Tip währe ich unendlich dankbar

Kannst doch genau wie in der Anleitung in dem Post auf den Du geantwortet hast machen. Nur, dass Du eben statt dem USBASP als Programmer "Arduino als ISP" wählst. Vorher musst Du natürlich den Arduino Uno mit dem ISP-Sketch (befindet sich direkt in den Beispieldateien der Arduino-IDE) bespielen, dass er auch als ISP-Programmer funktioniert.

Hi Sebastian danke für die Antwort
Uno ist da und jetzt geht die Ahnungslosigkeit los

  • über USB angeschlossen ein grünes, ein gelbes Lämpchen brennt, Uno wird auf COM 12 erkannt.
  • Arduino 1.8.0 geöffnet
  • Nach langem suchen geöffnet Datei-->Beispiele-->11.ArduinoISP-->ArduinoISP GEÖFNET
    Es erscheint jede Menge Gedönz
  • Werkzeuge
  • Board--> Arduino/Genuino Uno
  • Port "COM12 (Arduino/Genuino Uno)
  • Programmer ?????????? keine Ahnung HABE AUF VERDACHT AVRISP mkII genommen
  • Rödel rödel erste Hälfte der Meldung Weiße Schrift zweite Hälfte ROT (komisch) keine direkte Fehlermeldung
    Immer noch grünes ind gelbes Lämpchen
    Keine Ahnung ob, wenn ja was da passiert sein soll

nun werde ich UNO mit Anet verbinden jetzt geht der Driss los stimmen diese ganzen verkabelungen
fur den UNO nix eindeutiges gefunde aber ich versuch es mal
Keine Ahnung wie es dann weitergeht
Ich werde berichten aber das kann nicht funktionnieren
Danke für deine Geduld wenn du bis hier gekommen bist
Gruß
Bruno

Wie erwartet es funzt nicht kann nicht sagen ist uno als programmer konfiguriert muß ich mit anet usb verbinden muß im anet alles oder nix angeschlossen sein welcher com, welcher programmer . Die ganzen Meldungen kommen wieder in Rot also falsch under will irgend was mit check ...sk..500 nicht rauszufinden was das ist.
ich bin es so langsam leid für die Zeit und Geld das ich für A8 bootloader flashen investiert habe hätte ich mir das neueste Model kaufen können.
Aus dem Internet auf allen Platformen habe ich nur nicht funktionnierende, falsche, unvollständige Klugscheißereien bekommen
Schade hatte mir mehr erwartet
Das neue Board kommt diese Woche wird eingebaut unden ganzen anderen Müll hau ich in die Tonne
Morgen stöpsel ich das ganze noch mal in Ruhe zusammen wenn sich dann nix tut Mülleimer.
danke für deine Bemühungen
Bruno

Wenn Du die roten Meldungen hier einfügen würdest könnte ich dir ggf. auch sagen, was die bedeuten. In 90% der Fälle ist einfach die Verkabelung falsch oder hat irgendwo keinen guten Kontakt, was gerade bei so Jumper-Kabeln schnell mal passiert.

Es gibt genau 6 Kabel die man für das flashen über ISP braucht: MOSI, MISO, SCK, RESET sowie die Spannungsversorgung +5V und GND. Wenn Du die Sketch für den ArduinoISP in der Arduino IDE öffnest steht ganz oben ein ausführlicher Kommentar wo welche Pins auf dem Arduino zu finden sind.
Alternativ findet man zahllose Grafiken wie diese:
https://i.stack.imgur.com/dVkQU.jpg
Die violetten Pins (SPI) sind auch die, die Du gesucht hast. Die Anleitung die Du verlinkt hast hatte ja ein Bild, wo die entsprechenden Pins auf dem Anet-Board zu finden sind. Jetzt einfach 1 zu 1 verkabeln, also MOSI auf MOSI, MISO auf MISO etc. und dann analog der Anleitung folgen, nur, dass Du eben den Arduino als Programmer auswählst.

Für 1,50€ gibts aus China USBASP-Programmer mit 6-Pin-Adapter die man direkt auf das Anet-Board stöpseln kann, das wäre etwas einfacher gewesen als die Frickelei mit dem Arduino.

Hi Shojo
Ich versuche sei 6 Wochen mei anet a8 bootloader zu flashen habe mir den empfohlenen usbprogrammer besorgt
gestöpselt und nach anleitung gemacht nix der programmer wird nicht gefunden hab alle Treiber installiert richtiger com port aber kein usb port was ist das . alle anleitungen unbrauchbar jeder würgt woanders rum alles nur wirres Zeug wo man was veränder muß
Es kommt jetzt ein Arduino uno aber das ist der gleiche Sche.... 100 Varianten und wahrscheinlich funzt keine das neue Board ist auch schon unterwegs hätte viel Zeit gespart wenn ich es gleich so gemacht hätte
Welcher Anschluß muß wo hin wie sind die ganzen Pins belegt welchen Treiber binde ich wo (win 7 , 64) welches Programm muß ich nehmen, welche Änderungen muß ich vornehmen und wie mache ich das. Worauf muß ich besonders achten. So mehr fällt mir nicht ein
Kannst du mir helfen oder mich an jemand weiterleiten der sich auskennt.
Gerne würde ich mal eine brauchbare Info bekommen
Danke. Bruno

Wenn Du über ISP etwas auf den AVR controller des A8 flashen kannst, dann exportiere doch die neue Firmware als .hex-Datei aus der Arduino-Software (nach 'Aruino export hex' oder so googlen) und lade sie nicht über die serielle Schnittstelle und die Arduino-Software sondern mit Avrdude und deinem Arduino Uno der als ISP-Programmer dient hoch.

Ich habe den Flash und das EEPROM der Originalfirmware mal gesichert, falls Du die .hex-Dateien davon haben willst.

Hallo, vielen Dank für die Antwort! Ich habe mir AVRDude mit einem GUI heruntergeladen. Was muss ich denn als Programmer auswählen? Und muss ich den Port vom Arduino, den ich an den Drucker angeschlossen habe, oder den Port vom Drucker auswählen?
Mfg

Der Parameter für den Programmer heißt wenn Du den Arduino für ISP verwendest wohl "-c arduino", die GUI habe ich noch nie verwendet, da müsste der Programmer aber dann auch "arduino" heißen.

Du schließt den Arduino-Uno-Programmer über die 6 Pins an das Board auf dem Drucker an, dann wählst Du den "arduino" als Programmer und m1284p als Zielchip. Viel mehr dürfte eigentlich nicht nötig sein.
(Keine Fuses ändern, die kannst Du so einfach ggf. nicht wieder zurückstellen)

Auf der Konsole würde das in etwa so aussehen:
avrdude -p m1284p -P usb -c arduino -n -v
Der Befehl würde nichts auf den AVR der sich auf dem A8-Board befindet schreiben sondern nur u.a. die Fuses auslesen. Wenn das klappt, dann weißt Du dass die Verbindung zustande gekommen ist und kannst die .hex-Dateien mit der Firmware flashen.
Das würde auf der Konsole etwas so aussehen:
avrdude -p m1284p -P usb -c arduino -Uflash:w:FIRMWARE.hex:i

Danke, jedoch bekomme ich leider wieder die Fehlermeldung "avrdude: stk500_getsync(): not in sync: resp=0x00", wenn ich versuche, die Fuses auszulesen... liegt vielleicht ein Defekt der Hardware vor?

Richtig verkabelt? Meistens hat man halt doch MISO mit MOSI vertauscht order irgend ein Steckerchen hat doch keinen guten Kontakt. Bitte nochmal prüfen.

Windows? Hast Du es auf der Kommandozeile versucht? Wenn nicht suche mal den Ordner raus, wo das mit der GUI installiert ist, da wird sicher irgendwo auch eine avrdude.exe sein. Dann mit cd in den Ordner navigieren und
avrdude.exe -p m1284p -P usb -c arduino -n -v ausführen. Falls es nicht klappt bitte mal die gesamte Ausgabe des Befehls hier einfügen.

Unter Linux installiere einfach kurz avrdude aus den Paketquellen, dann kannst du direkt
avrdude -p m1284p -P usb -c arduino -n -v
ausführen.

Hallo, ich habe nochmal alle Kabel überprüft. Leider war alles richtig. Ja, ich habe es auch schon über die Kommandozeile versucht. Ich habe nur "usb" zu "COM6" geändert, weil bei usb folgende Fehlermeldung kommt: "avrdude.exe: ser_open(): can't open device "usb": Das System kann die angegebene Datei nicht finden."

Wenn ich COM6, wo der Drucker angeschlossen ist, nehme, kommt, wie auch bei avrdude mit GUI folgendes:

"E:\AVR\bin>avrdude.exe -p m1284p -P COM6 -c arduino -n -v

avrdude.exe: Version 5.10, compiled on Jan 19 2010 at 10:45:23
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "E:\AVR\bin\avrdude.conf"

         Using Port                    : COM6
         Using Programmer              : arduino

avrdude.exe: stk500_getsync(): not in sync: resp=0x00

avrdude.exe done. Thank you."

Wenn es sich nicht retten lässt, muss ich wohl ein neues Mainboard aus China bestellen...

Hallo,

ich bastle jetzt schon seit über 10 Jahren mit den AVR Microcontrollern herum. Kaputt bekommen habe ich noch keinen, selbst wenn ich 12V verpolt an welche angeschlossen habe und sie so heiß wurden, dass ich mir daran die Finger verbrannt habe. Im schlimmsten Fall waren mal die Fuses verdreht. Das Board des A8 ist ziemlich sicher nicht kaputt.

Das ist immer noch ein Kommunikationsfehler zwischen dem PC und dem Arduino Uno der als Programmer dienen soll, kein Fehler mit dem Board.
Dass der Port in dem Fall doch nicht USB sein kann war mein Fehler, ich hatte nur kurz gedacht, dass der Arduino ja per USB angeschlossen wird, aber da hängt ja bei den meisten Arduinos (die nicht gerade einen AtMega 32u4 nutzen wie der Arduino Leonardo) noch ein USB-To-Serial-Chip dazwischen, der vom Rechner auch als serielle Schnittstelle gesehen wird.
Als welcher COM-Port taucht der Arduino Uno denn im Gerätemanager auf? Ist das COM6? Ansonsten irgendwas an den Arduino Uno angeschlossen? Welchen Arduino-ISP-Programmer hast du geflasht? Den aus den Arduino-Beispielen?

Hallo, ich muss mich echt mal dafür bedanken, dass du dir hier so viel Zeit für mein Problem nimmst!
Der Arduino taucht als COM8 und der Anet als COM6 auf. An den Arduino habe ich meinen PC und über Jumperkabel den Anet angeschlossen. Ja, auf den Arduino habe ich den ISP-Programmer aus den Beispielen geladen.

EDIT:
ES FUNKTIONIERT! Ich glaube, ich bin jetzt der glücklichste Mensch auf der Welt :D Vielen vielen Dank! Ohne dich hätte ich das nie hinbekommen. Ich hätte wahrscheinlich schon ein neues Mainboard bestellt! Ob ich Sketchs noch normal hochladen kann, weiß ich nicht. Ich möchte es auch lieber nicht ausprobieren. Aber die Firmware läuft!

Da der Anet als Com8 auftaucht: Bitte den Anet sowohl am PC als auch am Netzteil ausstecken, nicht, dass da irgendwelche Ausgleichsströme fließen (sollte normalerweise nichts passieren aber wenn man mal einen Pin falsch erwischt brennt nachher noch irgendwo ein Spannungsregler oder so durch). Der Controller auf dem A8-Board sollte sich über die 5V vom Arduino Uno versorgen lassen.

Dann nochmal schauen welchen Port der Uno gerade hat und diesen (wäre COM8 laut deinem Post) als -P für Avrdude nutzen.

Edit: Schreib mal als Bitrate noch "-b 19200" als weiteren Parameter dazu. Vielleicht bekommst Du dann immerhin einen anderen Fehler.
Edit2: Und wenn damit etwas anderes kommt, es aber auch noch nicht funktioniert, zusätzlich noch ein "-b 500". (Jeweils ohne die Anführungszeichen)

Daran, dass ich den Drucker ausstecken muss, habe ich nicht gedacht... ist ja alles gut gegangen! Nächstes mal werde ich das tun. Dass ich die Bitrate dazu geschrieben habe, hat mein Problem gelöst, glaube ich (siehe mein letzter Post)! Danach hat der Upload der Hexdatei zumindest funktioniert.

Du kannst problemlos versuchen die Sketches hochzuladen. Dabei kann man nichts permanent kaputt machen.(Außer Du machst es >100.000 Mal dann sind irgendwann die Schreibzyklen des Flashspeichers aufgebraucht) Im Zweifelsfall musst Du eben wieder den Arduino Uno anschließen. Wenn das mit den Sketches nicht klappt kannst Du immer noch die .hex-Dateien, welche die Arduino-IDE dir für die neue Firmware erstellt extrahieren (Anleitung kann man googlen) und wirklich über den Uno hochladen.

Ich würde empfehlen einen solchen USBASP-Programmer zu kaufen:
https://www.aliexpress.com/item/10-Pin-Convert-to-Standard-6-Pin-Adapter-Board-USBASP-USBISP-AVR-Programmer-USB/2055099231.html
Dauert zwar 3 Wochen bis der da ist aus China, kostet aber nichts und ist deutlich einfacher zu handeln als die Arduino-ISP-Bastelei. Es gibt zwar noch billigere, bei dem hier ist aber auch der ein 10-Pin auf 6-Pin-Adapter dabei. Das Board des A8 verwendet ja lustigerweise die 6-Pin-ISP-Belegung in einem 10-Pin-Connector.

Ich habe ein Problem für das ich einfach keine Lösung finde.
Ich habe einen USBASP-Programmer mit passendem 10Pin zu 6Pin adapter aber ich bekomme beim brennen einfach immer folgende Fehlermeldung:

avrdude: Version 6.3, compiled on Dec 16 2016 at 13:33:19
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch

     System wide configuration file is "C:\Users\Adrian\Desktop\arduino-1.8.0\hardware\tools\avr/etc/avrdude.conf"

     Using Port                    : usb
     Using Programmer              : usbasp
     AVR Part                      : ATmega1284P
     Chip Erase delay              : 55000 us
     PAGEL                         : PD7
     BS2                           : PA0
     RESET disposition             : dedicated
     RETRY pulse                   : SCK
     serial program mode           : yes
     parallel program mode         : yes
     Timeout                       : 200
     StabDelay                     : 100
     CmdexeDelay                   : 25
     SyncLoops                     : 32
     ByteDelay                     : 0
     PollIndex                     : 3
     PollValue                     : 0x53
     Memory Detail                 :

                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       eeprom        65    10   128    0 no       4096    8      0  9000  9000 0xff 0xff
       flash         65    10   256    0 yes    131072  256    512  4500  4500 0xff 0xff
       lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
       calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00

     Programmer Type : usbasp
     Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude done. Thank you.

Fehler beim Brennen des Bootloaders.

Weiß jemand was zu tun ist?

Gruß

Top