Creality Ender3 mit Marlin ausstatten

Neue Firmware für das Melzi?

 

Arduino oder ähnliches mit ISP Schnittstelle.

-Wir benötigen dazu natürlich das Ender3 Creality Melzi Board.
-Arduino als Software samt Computer auf dem es installiert ist.
-Ein USB auf MiniUSB Kabel*
-Einen Arduino* oder ähnliches samt Kabel* zum flashen.
-Dupont Kabel* zum verbinden.

 

 

Diese 3 Schrauben lösen.

Der Ender 3 von Creality ist endlich eingetroffen und nach dem ersten bespielen habe ich gleich festgestellt das die Firmware mir nicht ausreichend genug ist.
Also einmal das ganze am Computer angeschlossen und über Simplify in der Konsole mit M503 einmal die Settings abgefragt. Diese fein säuberlich notiert und in eine frische Marlin geworfen und dann auch schon das Schrauben angefangen.

 

 

Beide Boards so ausrichten das sie mit den Pins nach unten zeigen dann immer alle Pins gleich verbinden. Nur „RESET“ kommt an Pin10 bei dem Arduino.(BILD IGNORIEREN – ES SOLL NUR VERDEUTLICHEN DAS EIN KABEL WOANDERST HIN GEHT!!!)

Um auf das Board eine neue Firmware zu bekommen ist das Brennen des Bootloaders nötig. Dazu müssen drei Schrauben oberhalb der Kontrollbox entfernt werden. Danach kommt man direkt an die 6 Pins die dafür notwendig sind.
Man nehme sich einen Arduino oder ähnliches, was über die ISP Schnittstelle verfügt und schließe das ganze dem Schemata nach an.

 

In der Arduino Software sollte man seinen Arduino mit einem passenden Sketch darauf vorbereiten um diesen zum brennen verwenden zu können.

Dazu wählt man sich in der Arduino Software den Sketch Datei -> Beispiele -> „ArduinoISP“ aus. Dieser Sketch wird auf den Arduino geflasht und nun können wir den Bootloader brennen. Darauf achten das unter Werkzeuge -> Board „Arduino Uno“ (In meinem Fall) und der richtige USB Port ausgewählt ist.

Board, Prozessor, Arduino as ISO. Fehlt nur noch der richtige Port.

Danach wählen wir uns in der Firmware als erstes das zu brennende Board aus Werkzeuge -> Board -> Sanguino. Wenn Ihr kein Sanguino Board zur Auswahl habt, dann bitte hier klicken und den „Lauszus-Sanguino“ Ordner in den Arduino -> Hardware Ordner kopieren.
Als Prozessor wählen wir uns den Atmega1284 16Mhz aus.
Programmer auf „Arduino as ISP“ setzen.
Nun noch den passenden Port auswählen und schon kann man unten auf Werkzeuge -> Bootloader brennen klicken. So einfach und schnell geht das.

 

Jetzt können die 6 Pins abgezogen werden und das USB Kabel wieder direkt an den Ender3 angeschlossen werden.

 

Als nächsten Schritt einfach hier die passende Marlin herunterladen.
Der Ordner sollte in „Marlin“ umbenannt werden und in den Arduino Ordner gepackt werden. In dem Ordner Marlin befindet sich die Marlin.ino welche dazu führt das der Sketch sich öffnet.

Die Configuration.h und Configuration_adv.h noch einmal durchschauen und gegebenenfalls nach seinen Bedürfnissen anpassen.

Danach wird wieder das Sanguino ausgewählt, wieder der Prozessor Atmega 1284 16Mhz und auch den Port muss man schauen das der noch/wieder stimmt.  Jetzt sollte man einfach auf Hochladen klicken können und der Sketch wird auf das Melzi Board geschrieben. Wenn das Hochladen erfolgreich geschehen ist, solle der Ender3 einen kleinen Neustart machen und das Display begrüßt euch mit der neuen Marlin Firmware.

Viel Erfolg und GUT DRUCK.

 

Die mit * gekennzeichneten Links sind Amazon Affiliate Links. Euch entstehen bei der Nutzung keine extra Kosten, Ihr  unterstützt aber dadurch das Chaos im Keller. Vielen Dank dafür.

 

 

 

 

(Um einen Kommentar abzugeben wird kein Name oder die E-Mail benötigt. Die Felder können frei bleiben. Alle Angeben sind freiwillig und werden anderen Usern angezeigt. Bitte bedenk dies. Ich übernehme keine Haftung.)

29 Gedanken zu „Creality Ender3 mit Marlin ausstatten

  1. Finde den Fehler…..

    in dem gekritzelten Bildchen wo du die ISP-Verbindung zeigst geht RESET an PIN9. Im Text unterm Bild, und als gesprochenes Wort im passenden Video gibste aber PIN10 an.

    Welche Angabe ist denn nun richtig?

  2. Hab da mal ne Frage zum Flashen des Ender3.
    Bleibt das Gerät bei den ganzen Schritten die erklärt werden eingeschaltet oder nicht?

    1. Wenn du da dein USB Kabel einsteckst, bekommst das Board darüber die 5V. Mehr benötigt es dafür nicht. Also nein, muß nicht eingeschaltet sein.

  3. Moin,
    ich versuche grad den Ender zu flashen. Allerdings erscheint bei mir allerdings immer der fehler

    C:\Program Files (x86)\Arduino\Marlin\Marlin.ino:45:110: fatal error: U8glib.h: No such file or directory

    #include // library for graphics LCD by Oli Kraus (https://github.com/olikraus/U8glib_Arduino)

    ^

    compilation terminated.

    exit status 1
    Fehler beim Kompilieren für das Board Sanguino.

    allerdings finde ich die Lösung nicht.
    Ich bräuchte mal nen Tip

    Gruß und Danke

  4. Hi, danke für die Anleitung. Habe den Bootloader mittels Raspberry Pi 2 geflasht und Marlin dann nach deiner Anleitung unter Linux hochgeladen. Läuft bis jetzt sehr gut.

    Ich würde mich freuen, wenn du dein Marlin hier weiterhin veröffentlichst, falls du es weiter für Ender-3 optimieren solltest 🙂

    LG Yasin

  5. Hallo, danke für deine Anleitung!
    Ich habe mir den Infrarot Sensor (https://miscsolutions.wordpress.com/mini-height-sensor-board/) für das Auto Bed Leveling besorgt und möchte mir daher Marlin auf den Ender flashen. Ich bekomme nur immer disen Fehler beim kompilieren:

    c:/program files (x86)/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.8.1/../../../../avr/bin/ld.exe: C:\Users\benja\AppData\Local\Temp\buildd2d8762d03327b4433bff930fcd2b66e.tmp/Marlin.ino.elf section `.text‘ will not fit in region `text‘

    c:/program files (x86)/arduino/hardware/tools/avr/bin/../lib/gcc/avr/4.8.1/../../../../avr/bin/ld.exe: region `text‘ overflowed by 1392 bytes

    collect2.exe: error: ld returned 1 exit status

    exit status 1
    Fehler beim Kompilieren für das Board Sanguino.

    Würde mich über jede Hilfe freuen.

    ps. das flashen funktioniert doch auch mit dem Arduino Nano, oder?

    1. Sorry damit kann ich so nichts anfangen. Ich selbe nutze aktuell an keinen meiner Drucker einen Sensor weil es immer schwierig war die einzubinden und zu betreiben.

  6. Hallo Marthen,
    ich verfolge seit geraumer Zeit mit großer Freude deine Vlog`s und auch deinen Blog.Da ich noch absoluter Neuling bin und in „Kürze“ meinen ersten Drucker bekomme (Ender 3) ,habe ich noch eine Frage zum Marlin Firmware Flash.
    Kann man sich das Mainboard dabei auch komplett zerschießen oder ist die Gefahr eher weniger groß und man kann das ganze wiederholen,wenn es beim erstenmal nicht geklappt hat?Das Arduino Uno Board ist bestellt und natürlich
    auch dir Steckbrücken. Die neueste Software ist schon installiert. (Arduino IDE 1.8.5) Eine 2te Frage wäre,welche max. Größe von Micro SD Karten kann er lesen,ich habe hier noch 2 16GB Karten liegen,um ein Backup der Original Karte zu erstellen.
    Nur für den Fall das diese den Geist mal aufgibt.Über eine Antwort deinerseits würde ich mich sehr freuen.Happy Printing.

    MfG Burkhardt

  7. Hallo,
    danke erstmal für die super Anleitung!
    Leider kann ich der Arduino IDE 1.8.5 den Prozessor nicht auswählen.
    Habe ich evtl. die falsche Version?

  8. Hallo,
    könnt ihr mir sagen was genau der Vorteil ist Martin anstelle des Original Flashs draufzumachen? Und warum Martin und nicht Mk4Duo?

    Gruß
    Andreas

  9. Hallo ich habe ein Problem,

    ich habe meinen Ender 3 auch mit Marlin geflasht und hat auch alles geklappt, habe dann mal einen Testdruck gemacht klappte super ohne Probleme.
    Jetzt war ich 3 Tage Beruflich unterwegs wollte heute wieder einen Druck starten und es kommt immer und immer wieder die Fehlermeldung
    BETT ÜBERSCHRITTEN

    DRUCKER STOPP

    Bitte Resetten

    Die Meldung kommt bei SD Karte sowie über USB ich habe in Cura die Einstellungen vom CR10 mit den Maßen vom Ender 3 genommen und sogar schon vor lauter Verzweiflung diese auch 215x215x220 herabgesetzt.
    Auch die Firmware habe ich nochmal neu aufgespielt. Keine Chance er druckt einfach nicht mehr.
    Die Meldung kommt nachdem das Bett aufgeheizt ist also das HotEnd wird gar nicht geheizt, da er vorher abbricht.

    Hast du eine Idee

    1. Hallo zusammen,
      der Fehler war ein defektes Mainbaord, bekomme von Banggood ein neues zugeschickt und habe den Drucker inzwischen auf das MKS Gen V1.4 umgebaut. Habe deine Firmware dafür genommen als Grundsoftware und auf das MKS Board angepasst.
      Ist auch bei YouTube der Umbau.
      Danke dir Marthen für deine Anleitungen und das du die Sucht „3D Druck“ bei mir angefangen hast. Bereue es überhaupt nicht.

  10. Moin, leider ist das Bild mit dem Pin10 immer noch nicht geändert. 🙁
    Hat mir leider ein bischen Lebenszeit und dazugehörige Nerven gekostet.
    Hab mal ein paar Fragen zu der Firmware.
    Warum wurde das Homing der XY-Achse ins minus gesetzt?
    Dadurch geht doch wirksamer Druckbereich verloren.
    Oder hat es einen anderen Grund?
    Wo ungefähr steht das Achsen-Homing?
    Würde gerne die X und Y Achse wieder auskommentieren.
    Sonst perfekte Arbeit

    1. Sorry, das habe ich aberjetzt mittlerweile so oft erwähnt… Auch extra noch einmal PIN10 daraus gemacht.Wer sich damit ein wenig beschäftigt und nach dem Pin out schaut, der weiß das Reset auf deer 10 liegt. Das Bild sollte nur verdeutlichen das ein Kabel halt ganz woanders hin läuft.
      Das Homig wird ins Minus gesetzt weil die Endschalter ja nicht genau auf 0 stoppen sondern außerhalb der Druckbereiches. Vom Endschalter zu 0 muss man nun einmal minus angeben. Da auch jeder Drucker minimal anders aufgebaut ist, sollte man immer die Nullpunkte neu anfahren und auf seine eigenen Werte anpassen. Alles was ich hier zur verfügung stelle ist ja kein MUSS! Jeder kann sich die Marlin so gestalten wie er sie gerne hätte. Das ist nur die wie ich sie benutze. Mehr nicht. Mit freundlichen Grüßen

  11. Hallo zusammen.
    Ich habe nun vergeblich versucht auf das Melzi-Board vom Ender 3 einen Bootloader zu bekommen.
    1. Arduino als ISP funktioniert nur mit Uno-Board rev3.
    ich habe hier diverse Nanos rumliegen, die bringen alle einen STK 500 Sync-fehler. Egal ob China-Clown oder original.
    Beim brennen vom Bootloder bringt die Arduino-IDE einen Chip-ID-Fehler. Ausgewählt ist der Atmega 1284p mit 16Mhz.
    AVR-Tools (OSX) bringt den selben Fehler.
    Hat da jemand eine Lösung?

    1. Auch wenn das schon etwas her ist, um hier zu Antworten mal etwas dazu.
      Leider hat wohl die ArduinoIDe je nach Betriebsystem Probleme, die notwendigen Bibliotheken nachzuladen.
      Hatte ähnliche Probleme mit einem Laptop, beim stationären PC ging es einwandfrei.
      Würde mal eine nanderen Rechner probieren.

      LG Paule

  12. Flashen hat nach dieser Anleitung nicht geklappt……immer Fehler beim Compilieren…..nach dieser Anleitung https://www.youtube.com/watch?v=QWwtbmg_AxQ hats aber funktioniert…vielleicht weil beim hochladen ein anderer Programmer ausgewählt wird…nicht Arduino als ISP, sondern AVRMKIII……ach so und man sollte auch mal darauf hinweisen welche LIB’s man noch so benötigt….nach frischem Aufspielen von Arduino IDE war die LIB fürs Display nicht dabei….musste nachinstalliert werden….aber jetzt läufts.
    Danke 😉

    1. Da muss man nix erkennen. Das stehtt doch alles im Text. Das Bild soll nur verdeutlichen das ein Kabel nicht an Reset an den 6 Pins geht sondern das Reset an Pin10.

  13. Bekomme die ganze zeit die Fehlermeldung egal welches Marlin
    #define SPI_MISO_PIN MISO_PIN // SPI Master In Slave Out pin
    habe auch U8glib.h nach instilliert
    Hat da jemand eine Lösung?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.