Beispielkonfigurationen¶
Dieses Dokument enthält Richtlinien für das Einbringen einer Klipper-Beispielkonfiguration in das Klipper-Github-Repository (zu finden im config-Verzeichnis).
Beachten Sie, dass der Klipper Community Discourse Server auch eine nützliche Ressource ist, um Konfigurationsdateien zu finden und zu teilen.
Richtlinien¶
- Wählen Sie das passende Präfix für den Konfigurationsdateinamen:
- Das Präfix
printerwird für Seriendrucker verwendet, die von einem etablierten Hersteller vertrieben werden. - Das Präfix
genericwird für eine 3D-Druckerplatine verwendet, die in vielen unterschiedlichen Druckertypen eingesetzt werden kann. - Das Präfix
kitsteht für 3D-Drucker, die nach einer weit verbreiteten Spezifikation aufgebaut werden. Diese "Kit"-Drucker unterscheiden sich in der Regel dadurch von normalen "Druckern", dass sie nicht von einem Hersteller vertrieben werden. - Das Präfix
samplewird für Konfigurationsschnipsel verwendet, die man in die Hauptkonfigurationsdatei kopieren kann. - Das Präfix
exampledient der Beschreibung von Druckerkinematiken. Diese Art von Konfiguration wird üblicherweise nur zusammen mit dem Code für eine neue Art von Druckerkinematik ergänzt.
- Das Präfix
- Alle Konfigurationsdateien müssen auf
.cfgenden. Dieprinter-Konfigurationsdateien müssen auf eine Jahreszahl gefolgt von.cfgenden (z. B.-2019.cfg). Die Jahreszahl gibt dabei ungefähr das Jahr an, in dem der jeweilige Drucker verkauft wurde. - Verwenden Sie im Konfigurationsdateinamen keine Leerzeichen oder Sonderzeichen. Der Dateiname sollte ausschließlich die Zeichen
A-Z,a-z,0-9,-und.enthalten. - Klipper muss Beispielkonfigurationsdateien der Typen
printer,genericundkitfehlerfrei starten können. Diese Konfigurationsdateien sollten dem Regressionstestfall test/klippy/printers.test hinzugefügt werden. Fügen Sie neue Konfigurationsdateien diesem Testfall im passenden Abschnitt und dort in alphabetischer Reihenfolge hinzu. - Die Beispielkonfiguration sollte die "Serienkonfiguration" des Druckers abbilden. (Es gibt zu viele "angepasste" Konfigurationen, um sie im Haupt-Repository von Klipper zu pflegen.) Ebenso nehmen wir nur Beispielkonfigurationen für Drucker, Kits und Platinen auf, die eine breite Verbreitung haben (es sollten also mindestens 100 davon aktiv im Einsatz sein). Für andere Konfigurationen bietet sich der Klipper Community Discourse Server an.
- Only specify those devices present on the given printer or board. Do not specify settings specific to your particular setup.
- For
genericconfig files, only those devices on the mainboard should be described. For example, it would not make sense to add a display config section to a "generic" config as there is no way to know if the board will be attached to that type of display. If the board has a specific hardware port to facilitate an optional peripheral (eg, a bltouch port) then one can add a "commented out" config section for the given device. - Geben Sie in einer Beispielkonfiguration kein
pressure_advancean, da dieser Wert vom Filament abhängt und nicht von der Druckerhardware. Geben Sie ebenso keine Einstellungenmax_extrude_only_velocityodermax_extrude_only_accelan. - Geben Sie keinen Konfigurationsabschnitt an, der einen Pfad oder Hardware des Hosts enthält. Geben Sie zum Beispiel keine Abschnitte
[virtual_sdcard]oder[temperature_host]an. - Definieren Sie nur Makros, die Funktionen nutzen, die für den betreffenden Drucker spezifisch sind, oder die G-Codes abbilden, die von für diesen Drucker konfigurierten Slicern üblicherweise gesendet werden.
- For
- Where possible, it is best to use the same wording, phrasing, indentation, and section ordering as the existing config files.
- The top of each config file should list the type of micro-controller the user should select during "make menuconfig". It should also have a reference to "docs/Config_Reference.md".
- Kopieren Sie die Dokumentation der Felder nicht in die Beispielkonfigurationsdateien. (Das würde einen Wartungsaufwand erzeugen, da eine Aktualisierung der Dokumentation dann an vielen Stellen nachgezogen werden müsste.)
- Beispielkonfigurationsdateien sollten keinen Abschnitt "SAVE_CONFIG" enthalten. Kopieren Sie bei Bedarf die betreffenden Felder aus dem SAVE_CONFIG-Abschnitt in den passenden Abschnitt des Hauptkonfigurationsbereichs.
- Verwenden Sie die Syntax
field: valueanstelle vonfield=value. - Beim Angeben eines
rotation_distancefür den Extruder ist es vorzuziehen, eingear_ratioanzugeben, sofern der Extruder ein Getriebe besitzt. Wir erwarten, dass der rotation_distance in den Beispielkonfigurationen dem Umfang des gerändelten Förderrads im Extruder entspricht - üblicherweise liegt er im Bereich von 20 bis 35 mm. Beim Angeben einesgear_ratioist es vorzuziehen, die tatsächlichen Zahnräder des Getriebes anzugeben (alsogear_ratio: 80:20stattgear_ratio: 4:1). Weitere Informationen finden Sie im Dokument zur Rotationsdistanz. - Vermeiden Sie es, Feldwerte anzugeben, die dem Standardwert entsprechen. So sollte man zum Beispiel
min_extrude_temp: 170nicht angeben, da dies bereits der Standardwert ist. - Wenn möglich, sollten die Zeilen nicht länger als 80 Spalten sein.
- Vermeiden Sie es, Urheberangaben oder Änderungshinweise in die Konfigurationsdateien aufzunehmen. (Vermeiden Sie zum Beispiel Zeilen wie "diese Datei wurde erstellt von ...".) Urheberangaben und Änderungshistorie gehören in die Git-Commit-Nachricht.
- Verwenden Sie in der Beispielkonfigurationsdatei keine veralteten Funktionen.
- Deaktivieren Sie in einer Beispielkonfigurationsdatei kein standardmäßiges Sicherheitssystem. So sollte eine Konfiguration zum Beispiel keinen abweichenden
max_extrude_cross_sectionangeben. Aktivieren Sie keine Debugging-Funktionen. Es sollte zum Beispiel keinen Abschnittforce_movegeben. - Alle bekannten von Klipper unterstützten Platinen können die Standard-Baudrate von 250000 verwenden. Empfehlen Sie in einer Beispielkonfigurationsdatei keine andere Baudrate.
Beispielkonfigurationsdateien werden durch das Erstellen eines GitHub Pull Requests eingereicht. Befolgen Sie dabei bitte auch die Hinweise im Dokument zum Mitwirken.