Hallo Allerseits,
ich bin Fred und habe mich heute neu zur 3d-Druck-Community gesellt. Schön euch gefunden zu haben...
![[Bild: wink.png]]()
Ich habe vor ca.2 Jahren am Thema 3D-Druck Blut geleckt und bin gierig neu dazu zu lernen.
Bevor ich zu meinem Thema komme, welches mich schon seit Tagen quält, kurze Info zu meiner Konfiguration:
Basismaschine: ist ein Filsun Cube Drucker (welchen ich mittlerweile schon an einigen Stellen mechanisch und funktional optimiert habe.
Board: MKS Base V1.6
Firmware: Marlin 1.1.9 (darauf im Zuge meines Filament-runout Problem aktualisiert)
MKS TFT32 Bildschirm
das ganze hängt am Repetierserver, welcher auf einem Rasperry PI läuft.
Slicer: Prusa-Slicer 2.3.0
Nun zu meinem Problem.
Ich möchte einen Filament-Runout sensor einbinden und stosse hier offensichtlich an meine Grenze im Umgang mit der Marlin-Firmware welche ich mit Arduino konfiguriere.
Ich habe bereits im Netz in div. Totorials recherchiert und beschriebene Anpassungen in der Configuration.h und Configuration_adv.h durchgeführt, wobei die darin verwendeten Konfigurationen nie ganz der meines Systems entsprachen. Daher bleibt bei mir etwas Zweifel.
Meine aktuelle Anpassungen waren bisher... siehe nachfolgend
(grün sind die geänderten Zeilen)
Configuration.h
#define FILAMENT_RUNOUT_SENSOR //war auskommentiert
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
#define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
#define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor.
#define FIL_RUNOUT_PULLUP // Use internal pullup for filament runout pins.
#define FILAMENT_RUNOUT_SCRIPT "M600"
#endif
Configuration_adv.h
// Extruder runout prevention.
// If the machine is idle and the temperature over MINTEMP
// then extrude some filament every couple of SECONDS.
#define EXTRUDER_RUNOUT_PREVENT // Filamentstop, Runout aktivieren, war //auskommentiert
#if ENABLED(EXTRUDER_RUNOUT_PREVENT)
#define EXTRUDER_RUNOUT_MINTEMP 190
#define EXTRUDER_RUNOUT_SECONDS 30
#define EXTRUDER_RUNOUT_SPEED 1500 // mm/m
#define EXTRUDER_RUNOUT_EXTRUDE 5 // mm
#endif
.
.
.
.
#define ADVANCED_PAUSE_FEATURE //Filament Runout, war auskommentiert
#if ENABLED(ADVANCED_PAUSE_FEATURE)
#define PAUSE_PARK_RETRACT_FEEDRATE 60 // (mm/s) Initial retract feedrate.
#define PAUSE_PARK_RETRACT_LENGTH 2 // (mm) Initial retract.
// This short retract is done immediately, before parking the nozzle.
#define FILAMENT_CHANGE_UNLOAD_FEEDRATE 10 // (mm/s) Unload filament feedrate. This can be pretty fast.
#define FILAMENT_CHANGE_UNLOAD_ACCEL 25 // (mm/s^2) Lower acceleration may allow a faster feedrate.
#define FILAMENT_CHANGE_UNLOAD_LENGTH 100 // (mm) The length of filament for a complete unload.
// For Bowden, the full length of the tube and nozzle.
// For direct drive, the full length of the nozzle.
// Set to 0 for manual unloading.
#define FILAMENT_CHANGE_SLOW_LOAD_FEEDRATE 6 // (mm/s) Slow move when starting load.
#define FILAMENT_CHANGE_SLOW_LOAD_LENGTH 0 // (mm) Slow length, to allow time to insert material.
// 0 to disable start loading and skip to fast load only
#define FILAMENT_CHANGE_FAST_LOAD_FEEDRATE 6 // (mm/s) Load filament feedrate. This can be pretty fast.
#define FILAMENT_CHANGE_FAST_LOAD_ACCEL 25 // (mm/s^2) Lower acceleration may allow a faster feedrate.
#define FILAMENT_CHANGE_FAST_LOAD_LENGTH 0 // (mm) Load length of filament, from extruder gear to nozzle.
// For Bowden, the full length of the tube and nozzle.
// For direct drive, the full length of the nozzle.
//#define ADVANCED_PAUSE_CONTINUOUS_PURGE // Purge continuously up to the purge length until interrupted.
#define ADVANCED_PAUSE_PURGE_FEEDRATE 3 // (mm/s) Extrude feedrate (after loading). Should be slower than load feedrate.
#define ADVANCED_PAUSE_PURGE_LENGTH 50 // (mm) Length to extrude after loading.
// Set to 0 for manual extrusion.
// Filament can be extruded repeatedly from the Filament Change menu
// until extrusion is consistent, and to purge old filament.
// Filament Unload does a Retract, Delay, and Purge first:
#define FILAMENT_UNLOAD_RETRACT_LENGTH 13 // (mm) Unload initial retract length.
#define FILAMENT_UNLOAD_DELAY 5000 // (ms) Delay for the filament to cool after retract.
#define FILAMENT_UNLOAD_PURGE_LENGTH 8 // (mm) An unretract is done, then this length is purged.
#define PAUSE_PARK_NOZZLE_TIMEOUT 45 // (seconds) Time limit before the nozzle is turned off for safety.
#define FILAMENT_CHANGE_ALERT_BEEPS 10 // Number of alert beeps to play when a response is needed.
#define PAUSE_PARK_NO_STEPPER_TIMEOUT // Enable for XYZ steppers to stay powered on during filament change.
//#define PARK_HEAD_ON_PAUSE // Park the nozzle during pause and filament change.
//#define HOME_BEFORE_FILAMENT_CHANGE // Ensure homing has been completed prior to parking for filament change
//#define FILAMENT_LOAD_UNLOAD_GCODES // Add M701/M702 Load/Unload G-codes, plus Load/Unload in the LCD Prepare menu.
//#define FILAMENT_UNLOAD_ALL_EXTRUDERS // Allow M702 to unload all extruders above a minimum target temp (as set by M302)
#endif
pins_RAMPS.h
// define digital pin 4 for the filament runout sensor. Use the RAMPS 1.4 digital input 4 on the servos connector
#ifndef FIL_RUNOUT_PIN
#define FIL_RUNOUT_PIN
11 // war 4 (möchte den PIN 11 auf dem Board verwenden )
#endif
Beim kompilieren bekomme ich die Fehlermeldung....
![[Bild: dodgy.png]]()
#error "ADVANCED_PAUSE_FEATURE currently requires an LCD controller or EMERGENCY_PARSER."
Meine Frage an euch:
Habe ich etwas bei meinen Änderungen vergessen oder falsch interpretiert?
oder muss ich doch einen LCD controller aktivieren, wenn ja, welchen?
Ich bin nirgendwo auf einen Hinweis gestossen welcher der Richtige ist.
Schon mal vielen Dank im voraus für einen Tip von euch
Gruß Fred