Skip to content

AnyCubic i3 MEGA unter Marlin mit dem BLTouch leveln

The better the Leveling the better the Print:
Mal eben eine neue Ladeschale und Halterung für das Telefon ausgedruckt
Träger: Bowden X-Carriage for AnyCubic i3 MEGA by Audisis
Am leuchten ist der BLTouch
Mal ein kleiner Merkzettel für mich und wer es sonst noch brauchen kann, wie man den AnyCube i3 MEGA unter Marlin mit dem BLTouch oder einem der günstigeren Kopien mittels G- und M- Befehlen die Druckdüse in einen definierten Abstand zum Druckbett bringt, auf deutsch: levelt. Eingaben sind Rot, Kommentare hinter dem Semikolon nicht eingeben. Ich habe die Ausgaben auf das Wesentliche gekürzt. Vorab: Das Z-Probe Offset bedeutet die Differenz zwischen Auslösepunkt des BL Touch und der Düsenspitze.
Send: M851 ; Z Probe Offset anzeigen lassen
Recv: echo:Probe Z Offset: -2.02
Recv: ok
[...]
Send: M851 Z0 ; Z Probe Offset auf Null setzen
Recv: ok
[...]
Send: G28 ; Nullpunkt anfahren
[...]
Recv: echo:busy: processing
Recv: X:-5.00 Y:0.00 Z:0.00 E:0.00 Count X:-400 Y:0 Z:0
Recv: ok
[...]
Send: G1 Z1 X110 Y110 F2000 ; In die Mitte des Druckbettes fahren
Recv: ok
[...]
Send: G92 Z0 ;
Recv: X:110.00 Y:110.00 Z:0.00 E:0.00 Count X:8800 Y:8800 Z:0
Recv: ok
[...]
Send: G30 X110 Y110
[...]
Recv: Bed X: 110.00 Y: 110.00 Z: 2.08
Recv: X:77.00 Y:105.00 Z:10.00 E:0.00 Count X:6160 Y:8400 Z:4000
Recv: ok
[...]
Recv: ok
[...]
Send: G1Z-0.1 ; Bis 0.05mm / ein Kassenbon zwischen Düsenspitze und Bett passt. BTW: Ich empfehle als Metaller natürlich, eine Fühlerlehre, kann man auch für andere Sachen verwenden.
Recv: ok
[...]
Send: G1Z-0.1 ; Bis 0.05mm / ein Kassenbon zwischen Düsenspitze und Bett passt.
Recv: ok
[...]
Send: G1Z-0.1 ; Bis 0.05mm / ein Kassenbon zwischen Düsenspitze und Bett passt.
[...]
Send: G92 Z0 ; Neuer Nullpunkt an diese Stelle setzen
Recv: X:110.00 Y:110.00 Z:0.00 E:0.00 Count X:8800 Y:8800 Z:0
Recv: ok
[...]
Send: G30 X110 Y110 ; Offset ausgeben. Wert bei der 1. Z-Anzeige (hier in GRÜN angezeigt) merken
[...]
Recv: echo:busy: processing
Recv: Bed X: 110.00 Y: 110.00 Z: 2.08 ; Diesen Z-Wert merken!
Recv: X:77.00 Y:105.00 Z:10.00 E:0.00 Count X:6160 Y:8400 Z:4000
Recv: ok
[...]
Send: M851 Z-2.08 ; Neues Offset eingeben mit dem eben gemerkten Z-Weŕt
Recv: ok
[...]
Send: M500 ; Den Wert ins EEPROM speichern
Recv: echo:Settings Stored (731 bytes; crc 34074)
Recv: ok

Am besten mal den Drucker neu starten um 100% sicher zu gehen, daß er sich die neuen Offset Werte gemerkt hat. Anschließend mache ich 2-3 Kalibrierzyklen mit G28 / G29 und speichere die Werte im EEPROM mit M500:
Recv: Bilinear Leveling Grid:
Recv: 0 1 2 3 4
Recv: 0 +0.010 -0.020 -0.033 -0.020 +0.027
Recv: 1 +0.058 +0.023 +0.015 +0.040 +0.090
Recv: 2 +0.082 +0.040 +0.027 +0.058 +0.108
Recv: 3 +0.082 +0.053 +0.027 +0.065 +0.095
Recv: 4 +0.058 +0.010 -0.020 +0.003 +0.045
Recv:
Recv: X:164.00 Y:193.00 Z:12.06 E:0.00 Count X:13120 Y:15440 Z:4832
Send: M140 S0
Recv: ok
Send: M500
Recv: echo:Settings Stored (731 bytes; crc 9049)
Recv: ok

Der 2. Zyklus macht nochmal deutlich, daß mehrfache Kalibrierung nicht schadet:
Recv: Bilinear Leveling Grid:
Recv: 0 1 2 3 4
Recv: 0 +0.020 -0.017 -0.030 -0.025 +0.038
Recv: 1 +0.063 +0.038 +0.007 +0.055 +0.092
Recv: 2 +0.098 +0.043 +0.043 +0.063 +0.118
Recv: 3 +0.092 +0.055 +0.030 +0.075 +0.098
Recv: 4 +0.063 +0.013 -0.017 +0.013 +0.043
Recv:
Recv: X:164.00 Y:193.00 Z:12.06 E:0.00 Count X:13120 Y:15440 Z:4832
Send: M140 S0
Recv: ok
[...]
Send: M500
Recv: echo:Settings Stored (731 bytes; crc 34326)
Recv: ok
[...]

Das sollte dann aber auch reichen, denn "wer viel misst, misst Mist". ;-) Ich übermittle dem Drucker dann vor jedem Druck die neuen Einstellungen, die er dann entsprechend mit dem Druckauftrag verrechnet. Da ich immer über octoprint drucke, sieht das bei mir so aus:
G21 ; Wir verwenden Millimeter
G90 ; Absolute Positionierung...
M82 ; ... auch für den Steppermotor am Extruder
M107 ; Lüfter aus
G28 X0 Y0 ; Referenzpunkte XY anfahren
G28 Z0 ; Referenzfahrt auch für Z
G1 Z15.0 F{travelspeed} Z Achse 15 mm anheben
G92 E0 ; Extruder auf 0 setzen
G1 F200 E3 ; Extruder soll eine 3mm lange Wurst auspressen
G1 E0 ; und stoppen...
G1 F{travelspeed} ;
G28; Nullpunkte / Home anfahren
G29; Auto Bed Levelling (ABL) anwerfen
M500; Werte in Firmware / EEPROM speichern
M420 S1; BLTouch aktivieren

Es geht natürlich auch ohne octoprint, falls man direkt vom Slicer aus druckt. Auf jeden Fall sollte man sich für eine Methode entscheiden, nicht, daß nachher 2x gelevelt wird...

HINWEIS:
Alle gemachten Angaben sind ohne Gewähr auf Funktion und Richtigkeit. Für eventuell entstehende Schäden übernehmen wir keinerlei Haftung. Sämtliche Veränderungen geschehen auf Eure Verantwortung und Gefahr.

Irgendwie muss ich das alles finanzieren, daher sind die allermeisten Links Affiliate. D.h.: Solltet Ihr über diese Links zu einem Onlinehändler geraten und dort etwas bestellen, bekomme ich eine kleine Provision, für Euch ändert das am Preis natürlich nichts. Für die Inspirationen geht ein herzliches Dankeschön an die genannten Personen, insbesondere an die OctoPrint Community!

Keep on Coding Printing!
cronjob