PlatformIO, Ender 3 und Marlin 2

Da ich leider keine wirklich gute und aktuelle Anleitung gefunden habe, wie man Marlin 2 auf einem Ender 3 (PRO) mit PlatformIO installiert, hier meine Kurzanleitung.

Bootloader

Falls bislang noch kein Bootloader auf dem Ender 3 installiert wurde, muss dieser als erstes installiert werden. Eine schöne Anleitung findet ihr auf dem Kanal von Crosslink. Der relevante Bereich geht bis zum Zeitpunkt 13:17. Die Installation der u8glib Libary kann übersprungen werden. Bei der Installation des Bootloaders wird Arduino genutzt. Ich habe noch keine Möglichkeit gefunden, den Bootloader über PlatformIO zu installieren. Ich hab für die Installation des Bootloaders das USBASP Board genutzt.

Marlin

Im folgenden kommt PlatformIO Core zum Einsatz. Im Gegensatz zu PlatformIO IDE handelt es sich hierbei um ein Kommandozeilen Tool.

  • PlatformIO Core installieren
  • Der Sourcecode von Marlin herunterladen und entpackt.
  • Die 4 Dateien aus dem Verzeichnis Marlin-2.0.0/config/examples/Creality/Ender-3 in das Verzeichnis Marlin-2.0.0/Marlin kopieren. Dabei werden die zwei existierenden Dateien überschreiben
  • Um die Firmware zu kompilieren reicht der folgende Befehl:
    platformio run -e sanguino_atmega1284p
    Hierbei lädt sich PlatformIO alle nötigen Pakete selber herunter und kompiliert die Firmware.
  • Ender 3 mit dem Computer über USB verbinden
  • Die Firmware kann mit dem folgenden Befehl hochgeladen werden:
    platformio run -e sanguino_atmega1284p -t upload --upload-port /dev/ttyUSB0
    Je nach Betriebssystem muss der Port angepasst werden. Mehr Informationen in der PlatformIO Dokumentation.

Anpassungen des Konfigfiles

Da ich Mesh Bed Leveling nutze und für diese Funktion der Speicher des Prozessors nicht ausreicht, müssen andere Funktionieren deaktiviert werden.

Ich habe STRING_CONFIG_H_AUTHOR, SHOW_BOOTSCREEN, ARC_SUPPORT deaktiviert. Dafür habe ich MESH_BED_LEVELING, RESTORE_LEVELING_AFTER_G28 und LCD_BED_LEVELING aktiviert.

Hier die Änderungen, die ich vorgenommen habe, im Diff-Format:

--- ../config/examples/Creality/Ender-3/Configuration.h	2019-12-06 03:04:56.000000000 +0100
+++ ./Configuration.h	2019-12-06 17:32:31.052740304 +0100
@@ -71,7 +71,7 @@
 // @section info
 
 // Author info of this build printed to the host during boot and M115
-#define STRING_CONFIG_H_AUTHOR "(thisiskeithb, Ender-3)" // Who made the changes.
+//#define STRING_CONFIG_H_AUTHOR "(thisiskeithb, Ender-3)" // Who made the changes.
 //#define CUSTOM_VERSION_FILE Version.h // Path from the root directory (no quotes)
 
 /**
@@ -86,7 +86,7 @@
  */
 
 // Show the Marlin bootscreen on startup. ** ENABLE FOR PRODUCTION **
-#define SHOW_BOOTSCREEN
+//#define SHOW_BOOTSCREEN
 
 // Show the bitmap in Marlin/_Bootscreen.h on startup.
 #define SHOW_CUSTOM_BOOTSCREEN
@@ -1170,13 +1170,13 @@
 //#define AUTO_BED_LEVELING_LINEAR
 //#define AUTO_BED_LEVELING_BILINEAR
 //#define AUTO_BED_LEVELING_UBL
-//#define MESH_BED_LEVELING
+#define MESH_BED_LEVELING
 
 /**
  * Normally G28 leaves leveling disabled on completion. Enable
  * this option to have G28 restore the prior leveling state.
  */
-//#define RESTORE_LEVELING_AFTER_G28
+#define RESTORE_LEVELING_AFTER_G28
 
 /**
  * Enable detailed logging of G28, G29, M48, etc.
@@ -1274,7 +1274,7 @@
  * Add a bed leveling sub-menu for ABL or MBL.
  * Include a guided procedure if manual probing is enabled.
  */
-//#define LCD_BED_LEVELING
+#define LCD_BED_LEVELING
 
 #if ENABLED(LCD_BED_LEVELING)
   #define MESH_EDIT_Z_STEP  0.025 // (mm) Step size while manually probing Z axis.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert


The reCAPTCHA verification period has expired. Please reload the page.