meta data for this page
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
3d-druck:leapfrog-admin:start [2023/01/06 20:47] – [Octoprint-Configuration] kmk | 3d-druck:leapfrog-admin:start [2024/04/19 17:27] – [apt in Gang bringen] '' kmk | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Leapfrog Administration ====== | ====== Leapfrog Administration ====== | ||
- | ===== Backups | + | |
+ | Der aus dem Keller wiederbelebte 3D-Drucker ist ein Leapfrog Creatr von 2014. Dieses Modell hat [[http:// | ||
+ | |||
+ | ==== Motherboard | ||
+ | |||
+ | Auf der Seite von Leapfrog gibt es eine [[https:// | ||
+ | |||
+ | ==== Frosch-Icon ==== | ||
+ | |||
+ | https:// | ||
+ | |||
+ | ==== Zahnriemen ==== | ||
+ | |||
+ | * Die Zähne der Original-Zahnriemen haben einen Abstand von 3.0 mm → DIN 7721-2, Teilung AT3 | ||
+ | * AT3 ist recht selten. Ersatz ist im Prinzip [[https:// | ||
+ | * Üblich ist die Teilung GT2. Endlose Riemen gibts bei roboterbausatz.de . Geschlossene Riemen verkauft [[https:// | ||
+ | * Bei Thingiverse gibt es einen [[https:// | ||
+ | |||
+ | ====== OctoPi ====== | ||
+ | |||
+ | OctoPi ist [[https:// | ||
+ | |||
+ | - Download von [[https:// | ||
+ | - Zip auspacken: '' | ||
+ | - Das Ziel-Device erkunden: '' | ||
+ | - Image auf SD-Karte schreiben (eventuell if und of anpassen): | ||
+ | '' | ||
+ | |||
+ | ==== Erster SSH-Login: ==== | ||
+ | |||
+ | * User: pi | ||
+ | * PW: raspberry | ||
+ | * PW von pi mit passwd geändert und im passwordstore auf dc1 abggelegt → 3dprinter/ | ||
+ | |||
+ | ==== System lokalisieren ==== | ||
+ | |||
+ | < | ||
+ | sudo raspi-config | ||
+ | </ | ||
+ | |||
+ | → Localisation → Locales → de_DE.UTF-8 und en_UK.UTF-8 → Localisation → Keyboard → Generic 105 key (intl) → German (no dead keys) → Localisation → Timezone → Europe → Berlin | ||
+ | |||
+ | ==== sudo für pi ==== | ||
+ | |||
+ | In / | ||
+ | |||
+ | ==== apt in Gang bringen ==== | ||
+ | |||
+ | (und einen netteren vi installieren) '' | ||
+ | |||
+ | ==== Ein-zwei Kommandozeilenwerkzeuge ==== | ||
+ | |||
+ | < | ||
+ | sudo apt install vim | ||
+ | sudo apt install locale | ||
+ | sudo updatedb | ||
+ | </ | ||
+ | |||
+ | ==== WWW-Browser-Login ==== | ||
+ | |||
+ | * URL: https:// | ||
+ | * User: octoadmin | ||
+ | * PW: im passwordstore auf DC1 abgelegt | ||
+ | * In OctoPrint Settings (Maulschlüssel-Icon) einen API-Key für den User octoadmin erzeugen mit dem application identifier “octoprint” | ||
+ | * Ein lokaler User als Ausweichlösung, | ||
+ | * User: iqo | ||
+ | * PW: im passwordstore auf dc1 | ||
+ | |||
+ | ==== Kamera ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | ==== Plugins ==== | ||
+ | |||
+ | Settings → Plugin_Manager → Get_more oder https:// | ||
+ | |||
+ | === installiert === | ||
+ | |||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * Die Koordinaten der Eckpunkte müssen im Plugin konfiguriert werden. Für den Aufbau von Januar 2023: | ||
+ | * vorne-links: | ||
+ | * vorne-rechts: | ||
+ | * hinten-rechts: | ||
+ | * hinten-links: | ||
+ | * Mitte: 100 / 120 | ||
+ | * **[[https:// | ||
+ | * **Classic Webcam** → Kompatibilität mit der “alten” Webcam-Technik | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | |||
+ | === Auf jeden Fall ausprobieren === | ||
+ | |||
+ | * ☐ **[[https:// | ||
+ | * ☐ DryRun → Probelauf ohne Extrusion und Grundplattenheizung | ||
+ | * ☐ Simple Emergency Stop | ||
+ | |||
+ | === Klingt interessant === | ||
+ | |||
+ | * OctoBuddy → common printer actions to be performed with physical buttons via GPIO | ||
+ | * OctoPrint Micro Panel → Simple control and status paired with a physical button panel and OLED display | ||
+ | * USB keyboard → Octoprint mit Tastatur steuern | ||
+ | * AutoLogout | ||
+ | * OctoPrint-BetterHeaterTimeout → Turns off heaters after specified time being on and unused | ||
+ | * ShutdownPrinter → Drucker am Ende des Jobs herunterfahren | ||
+ | * M300_Player → Piept im Web-Interface, | ||
+ | * OctoPrint-Display-ETA → Zeigt die vorhergesagte Fertig-Zeit an. (Ist das im Default nicht enthalten? | ||
+ | * OctoPrint-Hardwarepwm → Damit die Lüfter angepasst laufen lassen? | ||
+ | * OctoPrint-InfluxDB → Logging auf log(?) | ||
+ | * OctoPrint-Thingiverse | ||
+ | * OctoPrint-TranslateModel → A plugin to move models around without re-slicing. | ||
+ | * Preheat Button → Automatically preheat to the printing temperature of the current gcode file | ||
+ | * Printer Statistics und/oder PrintJobHistory | ||
+ | * Procastinator → Erst zu einer bestimmten Zeit drucken | ||
+ | * Stateful Sidebar → Stellt die Sidebar beim nächsten Login in den alten Zustand | ||
+ | * TemperatureLegendMover → Legende für den Temperatur an eine nettere Stelle verschieben | ||
+ | * ChangeFilament → Unterstützt den Filament-Wechsel | ||
+ | |||
+ | ==== Lokales Touch-Screen mit Octodash ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | < | ||
+ | cd /tmp | ||
+ | wget -qO- https:// | ||
+ | chmod u+x install_octodash.sh | ||
+ | sudo ./ | ||
+ | </ | ||
+ | |||
+ | * Im Web-Interface von Octoprint einen API-Key für Octodash erzeugen. | ||
+ | * In Octoprint in der Konfig für das API die Funktion CORS erlauben. | ||
+ | * Beim ersten Start von Octodash keine der angebotenen URLs nehmen, sondern manuell http:// | ||
+ | * API-Key manuell eintragen. | ||
+ | |||
+ | Hakeleien beim Einrichten: | ||
+ | |||
+ | * In zusammengeschraubtem Zustand passen Raspi und Display nicht ins Gehäuse. Lösung: Vor Ort, im Gehäuse zusammen schrauben. | ||
+ | * Mit Display brach die Versorgungsspannung ein. Lösung: Eine eigene Versorgung des Displays mit einem eigenen USB-Kabel. | ||
+ | * Das Display stand auf dem Kopf. Lösung: In / | ||
+ | * Die GUI-Knöpfe für vor-zurück waren vertauscht. Lösung: In den Einstellungen des Octodash-GUI lassen sich die Achsen invertieren. | ||
+ | * ☑ Eine Halterung, die das Display in angenehmer Höhe bereit hält. | ||
+ | |||
+ | ====== Slicer ====== | ||
+ | |||
+ | ===== Cura ===== | ||
+ | |||
+ | ===== In Debian ===== | ||
+ | |||
+ | Cura ist in Debian nur in ziemlich alter Version 4.13 enthalten ([[https:// | ||
+ | |||
+ | * Auf github gibt es ein [[https:// | ||
+ | * Der Leapfrog Creatr kommt im Menü nicht vor. Aber man kann ihn [[http:// | ||
+ | * In den Preferences des FFF-Printers → Connect_OctoPrint | ||
+ | * Eine Zeile für den Leapfrog erzeugen | ||
+ | * Click auf “request” bei API-Key → Nach Login in OctoPi wird der oben erzeugte API-Key übertragen | ||
+ | * Eventuell: edit → Port_Number: | ||
+ | * Eventuell: Show_reverse_proxy_options → Haken bei “Use_HTTPS”, | ||
+ | * close → Wenn der Drucker läuft, sollte er automatisch erkannt werden. | ||
+ | * Im “Marketplace” gibt es ein Plugin, mit dem FreeCAD-Modelle importiert werden können (müssen die Endung ‘.fcstd’ haben) | ||
+ | |||
+ | ==== Cura selber bauen ==== | ||
+ | |||
+ | Noch nicht ausprobiert: | ||
+ | |||
+ | ==== Cura als Appimage ==== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | ===== Prusa Slicer ===== | ||
+ | |||
+ | Ist ganz normal in Debian enthalten. | ||
+ | |||
+ | ==== Empfehlenswerte Einstellungen in Prusa-Slicer ==== | ||
+ | |||
+ | * Das Project Notebook von Bob George erzählt, [[https:// | ||
+ | * Vorschau-Bild in Octoprint: [[https:// | ||
+ | * Avoid crossing perimeters | ||
+ | * Druckobjekt automatisch zentrieren: Configuration → Preferences → General → Auto_center_parts | ||
+ | * Automatisches Slicing im Hintergrund: | ||
+ | * Einstellungen in einem eigenen Fenster: Configuration → Preferences → GUI → Layout_Options = Settings_in_non_modal_window | ||
+ | * Weniger raumgreifende Icons: Configuration → Preferences → GUI → use_custom_sized_icons ankreuzen. Dann Toolbar_icon_size = 60% | ||
+ | * Travel und Retractions im Vorschaubild anzeigen lassen → Option unten im Vorschaubild | ||
+ | |||
+ | ==== Settings ==== | ||
+ | |||
+ | * Settings-Level: | ||
+ | |||
+ | === Print Settings === | ||
+ | |||
+ | * Layers and Parameters → Quality → Avoid_crossing_perimerters = true | ||
+ | * Skirt and Brim → Skirt → Loops = 3 | ||
+ | * Skirt and Brim → Skirt → Minimal_filament_extrusion_length = 50 mm | ||
+ | * Skirt and Brim → Brim → Brim_type = Outer_brim_only | ||
+ | * Output_options → Output_filename_format = KaiMartin_[input_filename_base].gcode (Offizielle Liste der möglichen Variablen: https:// | ||
+ | * Notes → Spezialitäten des jeweiligen Einstellungs-Satz | ||
+ | |||
+ | === Mit Octoprint verbandeln === | ||
+ | |||
+ | https:// | ||
+ | |||
+ | ==== Noch Anschauen: ==== | ||
+ | |||
+ | * Configuration Snapshots | ||
+ | |||
+ | ====== Firmware ====== | ||
+ | |||
+ | Auf dem Leapfrog läuft Marlin V1 Version-String (mit M115): '' | ||
+ | |||
+ | ==== G-Code ==== | ||
+ | |||
+ | Katalog der Marlin-Befehle: | ||
+ | |||
+ | * Zieltemperatur des Extruders auf 200°C einstellen: '' | ||
+ | * Zieltemperatur des Betts auf 60°C einstellen: M140 S60 | ||
+ | |||
+ | ===== PID einstellen ===== | ||
+ | |||
+ | * Doku zu autotune: https:// | ||
+ | * Quick-Guide: | ||
+ | |||
+ | Alte Heizer-Werte (ausgelesen mit M301): p:6.80 i:0.24 d:48.15 c:0.13 | ||
+ | |||
+ | Alte Bett-Werte (ausgelesen mit M304): → Nix. Da gibt es wohl keinen PID :-| | ||
+ | |||
+ | Autotune für 200 °C starten: M303 E0 S200 Parameter U und C scheinen in der Firmware des Leapfrog nicht aktiv zu sein. Es werden zwei PID-Parameter-Sätze empfohlen. Davon ist der zweite etwas schneller am Ziel. | ||
+ | |||
+ | Mit neuem Mk8-Hotend, 50W-Heizer, Silikonkleid, | ||
+ | → M301 P17.71 I1.29 D60.95 | ||
+ | |||
+ | Mit neuem Mk8-Hotend, 40W-Heizer, Silikonkleid, | ||
+ | |||
+ | Ins EPROM schreiben, ist in der Firmware nicht aktiviert. Also in Octoprint als Script vor jedem Druckjob eintragen: Octoprint_Settings → GCODE_Scripts → Before print job starts | ||
+ | |||
+ | ===== Nach dem Druck den Kopf wegfahren ===== | ||
+ | |||
+ | Cura schickt den Druckkopf am Ende vom Druck an den xy-Ursprung, | ||
+ | |||
+ | ===== Nicht zu viel und nicht zu wenig ===== | ||
+ | |||
+ | Von Haus aus schiebt der Leapfrog systematisch etwas zuviel Filament aus der Düse. Das überflüssige Volumen fällt besonders bei Formen mit 100% Füllung auf. Aber auch andere Drucke können dadurch Probleme bekommen. Am Boden gibt es “Elefantenfüße” und beim Dach rührt die Düse in der letzten Lage. Man könnte denken, dass eine Anpassung des Filament-Durchmessers bei den Drucker-Eigenschaften in Cura zu einer korrekten extrudierten Menge führt. Dieser Parameter hat allerdings (zumindest beim Leapfrog) keinen Einfluss auf die Druckqualität. Stattdessen kann man in den Einstellungen von Cura den “Flow” um einen Prozentsatz anpassen. Der Test-Würfel sieht bei 100% Füllung mit 85% am besten aus. Cura → Print_Settings → Material → Flow → 85% | ||
+ | |||
+ | ===== Lochdurchmesser ===== | ||
+ | |||
+ | Kleinere, senkrechte Löcher werden systematisch mit zu kleinem Durchmesser gedruckt. Der Grund ist, dass der extrudierte Kunststofffaden bei engen Kurven nicht ganz der Düse folgt. Er wird immer ein wenig nach innen gezogen. Dadurch wird das Loch kleiner als der Weg der Düse. Ein Loch im Testwürfel, | ||
+ | |||
+ | ===== Geometrische Kalibrierung ===== | ||
+ | |||
+ | https:// | ||
+ | |||
+ | ====== Zertifikate einbauen ====== | ||
+ | |||
+ | === auf afs1 als root === | ||
+ | |||
+ | Den Schlüssel, das Maschinen-Zertifikat und das LUH-Zertifikat in eine gemeinsame pem-Datei bündeln: cd / | ||
+ | |||
+ | === auf leapfrog als pi === | ||
+ | |||
+ | Die pem-Datei an eine passende Stelle bugsieren und haproxy unterschieben: | ||
+ | |||
+ | In '' | ||
+ | |||
+ | Um HTTP auf HTTPS umzubiegen außerdem diese Zeile einfügen: ( https:// | ||
+ | |||
+ | Ergebnis: | ||
+ | |||
+ | <code ini> | ||
+ | global | ||
+ | maxconn 4096 | ||
+ | user haproxy | ||
+ | group haproxy | ||
+ | log /dev/log local1 debug | ||
+ | tune.ssl.default-dh-param 2048 | ||
+ | |||
+ | defaults | ||
+ | log | ||
+ | mode http | ||
+ | compression algo gzip | ||
+ | option | ||
+ | option | ||
+ | retries 3 | ||
+ | option redispatch | ||
+ | option http-server-close | ||
+ | option forwardfor | ||
+ | maxconn 2000 | ||
+ | timeout connect 5s | ||
+ | timeout client | ||
+ | timeout server | ||
+ | |||
+ | frontend public | ||
+ | bind :::80 v4v6 | ||
+ | bind :::443 v4v6 ssl crt / | ||
+ | http-request redirect scheme https code 301 unless { ssl_fc } | ||
+ | option forwardfor except 127.0.0.1 | ||
+ | redirect scheme https if !{ hdr(Host) -i 127.0.0.1 } !{ ssl_fc } | ||
+ | use_backend webcam if { path_beg /webcam/ } | ||
+ | use_backend webcam_hls if { path_beg /hls/ } | ||
+ | use_backend webcam_hls if { path_beg /jpeg/ } | ||
+ | default_backend octoprint | ||
+ | |||
+ | backend octoprint | ||
+ | acl needs_scheme req.hdr_cnt(X-Scheme) eq 0 | ||
+ | |||
+ | reqrep ^([^\ :]*)\ /(.*) \1\ /\2 | ||
+ | reqadd X-Scheme:\ https if needs_scheme { ssl_fc } | ||
+ | reqadd X-Scheme:\ http if needs_scheme !{ ssl_fc } | ||
+ | option forwardfor | ||
+ | server octoprint1 127.0.0.1: | ||
+ | errorfile 503 / | ||
+ | |||
+ | backend webcam | ||
+ | reqrep ^([^\ :]*)\ / | ||
+ | server webcam1 | ||
+ | errorfile 503 / | ||
+ | |||
+ | backend webcam_hls | ||
+ | server webcam_hls_1 127.0.0.1: | ||
+ | errorfile 503 / | ||
+ | </ | ||
+ | |||
+ | ====== LDAP in Gang bringen ====== | ||
+ | |||
+ | Das Plugin Octoprint-LDAP ist nicht im offiziellen Katalog enthalten. Download unter: https:// | ||
+ | |||
+ | ==== Defektes Plugin ==== | ||
+ | |||
+ | Nach Upgrade von Octoprint scheitert das LDAP-Plugin und zieht die User-Verwaltung mit herunter. | ||
+ | |||
+ | → https:// | ||
+ | |||
+ | ====== Empfehlenswerte Einstellungen ====== | ||
+ | |||
+ | ===== Cura ===== | ||
+ | |||
+ | ==== Plugins ==== | ||
+ | |||
+ | * “FreeCAD integration” / “Inventor integration” / “Solid Works integration”: | ||
+ | * “OctoPrint Connection”: | ||
+ | * “Printjob naming”: Ein eigener Präfix für die Gcode-Datei | ||
+ | |||
+ | In Cura: Extensions → Custom_Printjob_Naming → Set_name_options Default ist “Prefix={printer_type}”, | ||
+ | |||
+ | * “Settings Guide”: Ausführliche Beschreibung der diversen Optionen | ||
+ | |||
+ | ==== Slicer-Optionen ==== | ||
+ | |||
+ | * Material / Printing_Temperature: | ||
+ | * Material / Printing_Initial_Layer: | ||
+ | * Material / Build_Plate_Temperature: | ||
+ | * Material / Build_Plate_Initial_Temperature: | ||
+ | * Speed / Print_Speed: | ||
+ | * Speed / Enable_Acceleration_Control: | ||
+ | * Speed / Print_Acceleration: | ||
+ | * Speed / Enable_Jerk_Control: | ||
+ | * Speed / Print_Jerk: 10 mm/s | ||
+ | |||
+ | ====== Thingiverse und Multiverse ====== | ||
+ | |||
+ | * https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ====== Youtube-Helden ====== | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * CNC-Kitchen | ||
+ | * SecKit → [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * My Tech Fun → Eigenschaften von verschiedenem Druck-Materialien | ||
+ | |||
+ | ====== Besondere Drucker ====== | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ====== Tolle Antriebe ====== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ====== Filamente ====== | ||
+ | |||
+ | ===== Höhere Temperatur ===== | ||
+ | |||
+ | Es gibt Filamente, die sich “normal” drucken lassen, die aber erst bei höherer Temperatur weich werden. | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ===== Öko ===== | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * Einige Auswahl [[https:// | ||
+ | |||
+ | ===== Filament-Trockner ===== | ||
+ | |||
+ | ==== Fertigkauf ==== | ||
+ | |||
+ | * Printdry [[https:// | ||
+ | * [[https:// | ||
+ | * Sunlu hat bei [[https:// | ||
+ | |||
+ | ==== Eigenbau ==== | ||
+ | |||
+ | * Tipp von [[https:// | ||
+ | |||
+ | ===== Trocken-Lagerung ===== | ||
+ | |||
+ | * Printdry [[https:// | ||
+ | * Ansonsten die üblichen, halbwegs luftdichten Plastikschüsseln. | ||
+ | |||
+ | ====== Betthaftung ====== | ||
+ | |||
+ | * Tipp aus einem Kommentar zu einem [[https:// | ||
+ | |||
+ | ====== Upgrade-Schmerzen ====== | ||
+ | |||
+ | Upgrade auf 1.9.3 und ein paar Plugins | ||
+ | |||
+ | Problem mit UI Customizer to 0.1.9.9: “The update did not finish successfully. Please consult < | ||
+ | |||
+ | |||
+ | ===== Backup ===== | ||
+ | ==== Clone the SD card ==== | ||
+ | A clone of the SD card provides the most comprehensive backup possible. | ||
+ | |||
+ | Instructions on howto clone raspberry pi are available in [[https:// | ||
==== Octoprint-Configuration ==== | ==== Octoprint-Configuration ==== | ||
Octoprint can save its configuration in a file. This makes a restore from scratch a little less painful. The saved file includes the list of plugins and their parameters. [[https:// | Octoprint can save its configuration in a file. This makes a restore from scratch a little less painful. The saved file includes the list of plugins and their parameters. [[https:// | ||
Line 6: | Line 464: | ||
List of available configurations: | List of available configurations: | ||
* {{ : | * {{ : | ||
+ | |||
+ | ==== Automatic Backup ==== | ||
+ | The tool [[https:// |