Erste Erfahrungen mit Klipper:
Nachdem
dennis02121978 so nett war, mir beim Einrichten zu helfen, konnte ich einige erste Erfahrungen sammeln. Ich hoffe, es werden keine umfangreichen Erfahrungen erwartet.
Das System läuft prinzipiell wie folgt:
Linux (Ubuntu) läuft in einer virtuellen Maschine auf dem Windows PC (in meinem Fall Windows 8.1). Über die Linux virtuelle Maschine wird die Firmware an den Drucker übertragen (muss nur ein Mal gemacht werden - damit ist der Drucker 'geflasht'). Das wurde eben auf diese Weise gemacht, da schon ein bereits kompiliertes Hex-File der Klipper Firmware auf der Linux Maschine bereitstand (Dank dem Image vom
dennis02121978).
Danach wird MainSail gestartet. MainSail ist eine Web Applikation, die (bei mir zumindest) interessanterweise wieder auf der Windows Seite läuft. Damit das klappte, musste ich die richtige IP-Adresse angeben (die wird bei jedem User anders sein und hängt von der Anzahl der eingebundenen Geräte im jeweiligen Netzwerk ab. Bei mir war es die glückliche '13', genauer 192.168.1.13. Danach startet/öffnet sich das MainSail Fenster.
Wie man sieht, lag ich falsch in der Annahme, die bestehende Firmware des Druckers wird nicht angegriffen. Diese
wird überschrieben. (Das war in meinem Fall kein Malheur, da ich sowieso kurz davor eine uralte Version aufspielte (
siehe hier) und diese alte Version natürlich nicht behalten wollte.
Und
dennis02121978 erklärte mir freundlicherweise die wichtigsten Teile der MainSail Oberfläche. Danach war ich auf mich alleine gestellt.
Das Homen der Achsen und das Hin- und Herfahren mit den virtuellen Tasten klappte erwartungsgemäß. Das Homen ging für mich ungewohnt langsam vor sich, besonders an der Z-Achse. Kein Problem, mir wurde gezeigt, wo man 'Änderungen an der Firmware' durchführt. Dort habe ich die
max_z_velocity um 30% hinauf geschraubt. Neuerlich gehomed und wieder mittels virtueller Tasten ein wenig gefahren. Damit war ich irgendwo mitten über dem Bett, mit einen Düsenabstand von 50mm+ angekommen.
So weit zufrieden.
Nächster Schritt: HBS durchführen (HBS=
Heat(ed) Bed Scan) damit die Firmware die Unebenheiten des Betts kennenlernt.
OK, in der 'Konsole
M3010 eingetippt. Ergebnis:
Unknown command:"M3010". Aha, nächste Erkenntnis: nicht alle GCode Befehle werden unterstützt (auch
M105 X0 nicht). Na ja,
dennis02121978 hat mir gezeigt, wo die 'Skripts' untergebracht sind. Da findet man ein eigens programmierter Skript für den HBS namens
BED CALIBRATE.
Flugs auf den Skript-Knopf geklickt.
Das Bett rauschte in einem Wahnsinnstempo 2-3 cm nach oben und Klipper und der Drucker hängten sich auf (mit einer nichtssagenden Fehlermeldung). (Zum
Glück blieb der Drucker stehen! Sonst hätte vielleicht das Hot End, die Düse, das Bett oder der Z-Endschalter Schaden genommen!)
Ein Versuch, Klipper neu zu starten, die Firmware neu zu starten, den Klipper Dienst neu zu starten sowie die Host-Steuerung neu zu starten schlugen alle fehl. Auch ein Aus- und Einschalten des Druckers, gefolgt von neuerlichen Versuchen, die diversen Systeme neu zu starten, brachte keinen Erfolg.
Ich musste die virtuelle Maschine runter fahren und neuerlich starten. Dabei gelang es mir nicht mehr, mit dem Drucker über USB zu kommunizieren und ich musste
auch den PC neu starten.
Danach gelang ein neuerliches Verbinden mit dem Drucker.
Als erstes habe ich
max_z_velocity auf nur mehr 10 (mm/s?) gestellt - man kann nie wissen!
Dann BED CALIBRATE ausgeführt.
Klipper_HBS.jpg
Das Ergebnis entspricht in etwa dem gewohnten Bild der HBS der Conrad oder Community Firmware.
So weit, so gut.
Um zu sehen, wie sich der Drucker im Betrieb verhält, wollte ich einfach eine (alte) GCode-Datei laden und OHNE Filament den Drucker den Extruder durch die Gegend fahren lassen. Damit sollte ich mir ein Bild der Geräuschkulisse machen können.
Ich lud eine GCode-Datei aus dem letzten Jahr hoch. Die Datei wurde damals mit Prusa Slicer erzeugt.
; generated by PrusaSlicer 2.2.0+win64 on 2020-10-04 at 14:32:23 UTC
Keine sonderlich große Datei, 600kB.
Damit sieht der Bildschirm dann so aus:
ScreenWithGCode.jpg
Einmal darauf geklickt kommt die Frage, ob man diese drucken möchte. Diese beantwortete ich mit '
JA'. Nur tut sich nichts. OK, machen wir es halt noch einmal: immer noch nichts. Kein Hinweis, keine Fehlermeldung, einfach weihnachtliche Stille, der Jahreszeit entsprechend.
Damit kommt die Zeit für die Ursachenfindung.
Nur ein Klick auf 'Dashboard' oder 'Konsole' bringen einen ein Stück weiter:
12:16:25
Malformed command 'SDCARD_PRINT_FILE FILENAME="Fan4Part(SideVersion)4V2_v1c_Funnel_Only_16;32.gcode"' Steht da in leuchtendem Rot.
Das ist schon sehr aufschlussreich. Ich weiß jetzt genau was zu tun ist! (Entschuldigt den Sarkasmus, bitte).
mhier hat geschrieben:Noch ein Vorteil von Klipper, der schmeißt einem dann ne ordentliche Fehlermeldung um die Ohren
*duck-und-weg*
Also, an der GCode-Datei liegt es nicht unbedingt, da ich das Teil vor 14 Monaten mit exakt dem GCode ausgedruckt habe.
Kann sein, dass Klipper einiges nicht am GCode mag. Zum einen ist es voll mit Kommentaren (Einstellung 'verbose Gcode'). Aber Kommentare sind ein zulässiges Mittel für GCodes und sollten korrekt behandelt werden.
Aufgefallen ist mir, dass der GCode keine "Linefeed" & "Carriage Return" Kombination aufweist, sondern nur "Linefeed". Aber das habe ich gleich gegengeprüft - daran liegt es auch nicht. Liegt der Fehler an den vielen, nicht unterstützten GCode-Befehlen? (Zum Beispiel M3000, M3001, M3070, usw.)
Liegt der Fehler nicht daran oder an den Kommentaren, würde ich nicht mehr wissen, wie ich den GCode zum drucken bringen könnte.
OK, eine andere Datei geladen. Diese stammt nicht von mir, sondern von einem User im Forum. Ich kann mich nicht mehr erinnern wer es war oder wieso ich die Datei noch habe. Es handelt sich um einen einfachen Zylinder, 200mm hoch. In Repetier-Host betrachtet, sieht man immer wieder skurrile 'Ausreisser' in X- und Y-Richtung. Sieht so aus:
ZylinderWithOddMoves.jpg
Diese Datei lässt sich drucken - bis zu einem gewissen Punkt, wo die (brauchbarere) Fehlermeldung kommt:
13:10:18 Unable to parse move 'G1 X117.348 Y'
Betrachtet man den GCode dort, findet man:
G1 X117.348 Y
115.679 E1.59996
Hier wurde offensichtlich eine Zeile durch einen Zeilenumbruch zerstört, wodurch ein ungültiger GCode-Befehl entstand. (Das könnte der Grund für die 'Ausreisser' sein.)
Da hat Klipper sauber reagiert.
So weit nicht sehr ermunternd, leider. Aber hoffentlich bekommen wir das hin. Ein paar Tage gebe ich es noch, dann wird die RF.01.47ag wieder aufgespielt.
Immunität über Alles! Nieder mit COVID-19!
mjh11
Für die, die das Problem untersuchen möchten, hänge ich die GCode-Datei an.
_Fan4Part(SideVersion)4V2_v1c_Funnel_Only_16;32.zip
EDIT: Habe die Falsche Datei erwischt - nun korrigiert.