Ich konfiguriere einen Printrbot Simple Metal neu, der mit einem RAMPS + Arduino Mega mit Marlin nachgerüstet wurde und aufgrund mechanischer und Qualitätsbeschränkungen einen relativ langsamen Vorschub aufweist.
Ich stelle fest, dass ich beim Abbrechen eines Drucks, bei dem etwas schief geht, eine lange Zeitspanne habe, in der der Drucker weiterhin aus dem G-Code und dem Bewegungspuffer druckt, obwohl die Host-Software (Octoprint) das Senden von G- Code.
Gibt es eine Möglichkeit, wie ich entweder a) Marlin so konfigurieren kann, dass es einen kleineren Druckpuffer hat (da Octoprint keine Probleme hat, mit dem Drucker in seiner jetzigen Form Schritt zu halten) oder b) ein bestimmtes Signal oder einen bestimmten G-Code an den Drucker sendet, der ihn ohne stoppt Pufferinhalte weiter lesen?
Antworten:
Marlin erlaubt es einem, die Größe der Puffer zu ändern
Configuration_adv.h
. In der aktuellen Version gibt es ein ifdef, das zwischen zwei Fällen wechselt, einer mit SD-Unterstützung und der andere ohne. Beide haben einen Bewegungsplaner der Größe 16, der angepasst werden kann.Darüber hinaus kann in derselben Datei
BUFSIZE
die Größe des Puffers geändert werden, in dem nicht analysierte Befehle gespeichert werden, bevor sie analysiert werden, und in den Bewegungsplaner-Puffer eingegeben werden.Bei einigen Firmwares
M112
wird der Drucker außerdem sofort heruntergefahren, unabhängig davon, was sich im Puffer befindet. Die Reset-Taste muss jedoch verwendet werden, und die Achsen werden anschließend nicht mehr nach Hause geführt. In Marlin ist es schwer zu telefonierenkill()
.quelle