diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index c66c8eff95cf..5a7d27b33b4e 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -69,7 +69,7 @@ // @section info // Author info of this build printed to the host during boot and M115 -#define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes. +#define STRING_CONFIG_H_AUTHOR "(menelik, 3018 CNC)" // Who made the changes. //#define CUSTOM_VERSION_FILE Version.h // Path from the root directory (no quotes) /** @@ -96,7 +96,7 @@ // Choose the name from boards.h that matches your setup #ifndef MOTHERBOARD - #define MOTHERBOARD BOARD_RAMPS_14_EFB + #define MOTHERBOARD BOARD_BTT_SKR_V1_4_TURBO #endif /** @@ -107,7 +107,7 @@ * * :[-1, 0, 1, 2, 3, 4, 5, 6, 7] */ -#define SERIAL_PORT 0 +#define SERIAL_PORT -1 /** * Serial Port Baud Rate @@ -130,6 +130,7 @@ */ //#define SERIAL_PORT_2 -1 //#define BAUDRATE_2 250000 // Enable to override BAUDRATE +#define SERIAL_PORT_2 0 /** * Select a third serial port on the board to use for communication with the host. @@ -192,7 +193,7 @@ // This defines the number of extruders // :[0, 1, 2, 3, 4, 5, 6, 7, 8] -#define EXTRUDERS 1 +#define EXTRUDERS 0 // Generally expected filament diameter (1.75, 2.85, 3.0, ...). Used for Volumetric, Filament Width Sensor, etc. #define DEFAULT_NOMINAL_FILAMENT_DIA 1.75 @@ -390,7 +391,7 @@ #define POWER_TIMEOUT 30 // (s) Turn off power if the machine is idle for this duration //#define POWER_OFF_DELAY 60 // (s) Delay of poweroff after M81 command. Useful to let fans run for extra time. #endif - #if EITHER(AUTO_POWER_CONTROL, POWER_OFF_WAIT_FOR_COOLDOWN) + #if EITHER(AUTO_POWER_CONTROL, POWER_OFF_WAIT_FOR_COOLDOWN) //#define AUTO_POWER_E_TEMP 50 // (°C) PSU on if any extruder is over this temperature //#define AUTO_POWER_CHAMBER_TEMP 30 // (°C) PSU on if the chamber is over this temperature //#define AUTO_POWER_COOLER_TEMP 26 // (°C) PSU on if the cooler is over this temperature @@ -491,7 +492,7 @@ * 999 : Dummy Table that ALWAYS reads 100°C or the temperature defined below. * */ -#define TEMP_SENSOR_0 1 +#define TEMP_SENSOR_0 0 #define TEMP_SENSOR_1 0 #define TEMP_SENSOR_2 0 #define TEMP_SENSOR_3 0 @@ -788,9 +789,9 @@ //#define USE_IMIN_PLUG //#define USE_JMIN_PLUG //#define USE_KMIN_PLUG -//#define USE_XMAX_PLUG -//#define USE_YMAX_PLUG -//#define USE_ZMAX_PLUG +#define USE_XMAX_PLUG +#define USE_YMAX_PLUG +#define USE_ZMAX_PLUG //#define USE_IMAX_PLUG //#define USE_JMAX_PLUG //#define USE_KMAX_PLUG @@ -834,19 +835,19 @@ #endif // Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup). -#define X_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define Y_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define Z_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. +#define X_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop. +#define Y_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop. +#define Z_MIN_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop. #define I_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. #define J_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. #define K_MIN_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define X_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define Y_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define Z_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. +#define X_MAX_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop. +#define Y_MAX_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop. +#define Z_MAX_ENDSTOP_INVERTING true // Set to true to invert the logic of the endstop. #define I_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. #define J_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. #define K_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop. -#define Z_MIN_PROBE_ENDSTOP_INVERTING false // Set to true to invert the logic of the probe. +#define Z_MIN_PROBE_ENDSTOP_INVERTING true // Set to true to invert the logic of the probe. /** * Stepper Drivers @@ -877,7 +878,7 @@ //#define I_DRIVER_TYPE A4988 //#define J_DRIVER_TYPE A4988 //#define K_DRIVER_TYPE A4988 -#define E0_DRIVER_TYPE A4988 +//#define E0_DRIVER_TYPE A4988 //#define E1_DRIVER_TYPE A4988 //#define E2_DRIVER_TYPE A4988 //#define E3_DRIVER_TYPE A4988 @@ -932,14 +933,14 @@ * Override with M92 * X, Y, Z [, I [, J [, K]]], E0 [, E1[, E2...]] */ -#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 500 } +#define DEFAULT_AXIS_STEPS_PER_UNIT { 800, 800, 800 } /** * Default Max Feed Rate (mm/s) * Override with M203 * X, Y, Z [, I [, J [, K]]], E0 [, E1[, E2...]] */ -#define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 } +#define DEFAULT_MAX_FEEDRATE { 300, 300, 5 } //#define LIMITED_MAX_FR_EDITING // Limit edit via M203 or LCD to DEFAULT_MAX_FEEDRATE * 2 #if ENABLED(LIMITED_MAX_FR_EDITING) @@ -952,7 +953,7 @@ * Override with M201 * X, Y, Z [, I [, J [, K]]], E0 [, E1[, E2...]] */ -#define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000 } +#define DEFAULT_MAX_ACCELERATION { 500, 500, 500 } //#define LIMITED_MAX_ACCEL_EDITING // Limit edit via M201 or LCD to DEFAULT_MAX_ACCELERATION * 2 #if ENABLED(LIMITED_MAX_ACCEL_EDITING) @@ -967,9 +968,9 @@ * M204 R Retract Acceleration * M204 T Travel Acceleration */ -#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E acceleration for printing moves -#define DEFAULT_RETRACT_ACCELERATION 3000 // E acceleration for retracts -#define DEFAULT_TRAVEL_ACCELERATION 3000 // X, Y, Z acceleration for travel (non printing) moves +#define DEFAULT_ACCELERATION 500 // X, Y, Z and E acceleration for printing moves +#define DEFAULT_RETRACT_ACCELERATION 500 // E acceleration for retracts +#define DEFAULT_TRAVEL_ACCELERATION 500 // X, Y, Z acceleration for travel (non printing) moves /** * Default Jerk limits (mm/s) @@ -1019,7 +1020,7 @@ * * See https://github.com/synthetos/TinyG/wiki/Jerk-Controlled-Motion-Explained */ -//#define S_CURVE_ACCELERATION +#define S_CURVE_ACCELERATION //=========================================================================== //============================= Z Probe Options ============================= @@ -1035,7 +1036,7 @@ * The probe replaces the Z-MIN endstop and is used for Z homing. * (Automatically enables USE_PROBE_FOR_Z_HOMING.) */ -#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN +// #define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN // Force the use of the probe for Z-axis homing //#define USE_PROBE_FOR_Z_HOMING @@ -1081,7 +1082,7 @@ * Use the nozzle as the probe, as with a conductive * nozzle system or a piezo-electric smart effector. */ -//#define NOZZLE_AS_PROBE +#define NOZZLE_AS_PROBE /** * Z Servo Probe, such as an endstop switch on a rotating arm. @@ -1195,11 +1196,11 @@ * | [-] | * O-- FRONT --+ */ -#define NOZZLE_TO_PROBE_OFFSET { 10, 10, 0 } +#define NOZZLE_TO_PROBE_OFFSET { 0, 0, 1.5 } // Most probes should stay away from the edges of the bed, but // with NOZZLE_AS_PROBE this can be negative for a wider probing area. -#define PROBING_MARGIN 10 +#define PROBING_MARGIN 0 // X and Y axis travel speed (mm/min) between probes #define XY_PROBE_FEEDRATE (133*60) @@ -1367,7 +1368,7 @@ // @section homing -//#define NO_MOTION_BEFORE_HOMING // Inhibit movement until all axes have been homed. Also enable HOME_AFTER_DEACTIVATE for extra safety. +#define NO_MOTION_BEFORE_HOMING // Inhibit movement until all axes have been homed. Also enable HOME_AFTER_DEACTIVATE for extra safety. //#define HOME_AFTER_DEACTIVATE // Require rehoming after steppers are deactivated. Also enable NO_MOTION_BEFORE_HOMING for extra safety. /** @@ -1380,13 +1381,13 @@ //#define Z_HOMING_HEIGHT 4 // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, ... // Be sure to have this much clearance over your Z_MAX_POS to prevent grinding. -//#define Z_AFTER_HOMING 10 // (mm) Height to move to after homing Z +#define Z_AFTER_HOMING 2 // (mm) Height to move to after homing Z // Direction of endstops when homing; 1=MAX, -1=MIN // :[-1,1] #define X_HOME_DIR -1 #define Y_HOME_DIR -1 -#define Z_HOME_DIR -1 +#define Z_HOME_DIR 1 //#define I_HOME_DIR -1 //#define J_HOME_DIR -1 //#define K_HOME_DIR -1 @@ -1394,8 +1395,8 @@ // @section machine // The size of the printable area -#define X_BED_SIZE 200 -#define Y_BED_SIZE 200 +#define X_BED_SIZE 300 +#define Y_BED_SIZE 180 // Travel limits (mm) after homing, corresponding to endstop positions. #define X_MIN_POS 0 @@ -1403,7 +1404,7 @@ #define Z_MIN_POS 0 #define X_MAX_POS X_BED_SIZE #define Y_MAX_POS Y_BED_SIZE -#define Z_MAX_POS 200 +#define Z_MAX_POS 40 //#define I_MIN_POS 0 //#define I_MAX_POS 50 //#define J_MIN_POS 0 @@ -1561,7 +1562,7 @@ */ //#define AUTO_BED_LEVELING_3POINT //#define AUTO_BED_LEVELING_LINEAR -//#define AUTO_BED_LEVELING_BILINEAR +#define AUTO_BED_LEVELING_BILINEAR //#define AUTO_BED_LEVELING_UBL //#define MESH_BED_LEVELING @@ -1746,11 +1747,12 @@ // The center of the bed is at (X=0, Y=0) //#define BED_CENTER_AT_0_0 +#define HOMING_PULL_OFF 0.5 // Manually set the home position. Leave these undefined for automatic settings. // For DELTA this is the top-center of the Cartesian print volume. -//#define MANUAL_X_HOME_POS 0 -//#define MANUAL_Y_HOME_POS 0 -//#define MANUAL_Z_HOME_POS 0 +#define MANUAL_X_HOME_POS X_MIN_POS - HOMING_PULL_OFF +#define MANUAL_Y_HOME_POS Y_MIN_POS - HOMING_PULL_OFF +#define MANUAL_Z_HOME_POS Z_MAX_POS + HOMING_PULL_OFF //#define MANUAL_I_HOME_POS 0 //#define MANUAL_J_HOME_POS 0 //#define MANUAL_K_HOME_POS 0 @@ -1847,7 +1849,7 @@ * M501 - Read settings from EEPROM. (i.e., Throw away unsaved changes) * M502 - Revert settings to "factory" defaults. (Follow with M500 to init the EEPROM.) */ -//#define EEPROM_SETTINGS // Persistent storage with M500 and M501 +#define EEPROM_SETTINGS // Persistent storage with M500 and M501 //#define DISABLE_M503 // Saves ~2700 bytes of PROGMEM. Disable for release! #define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. #define EEPROM_BOOT_SILENT // Keep M503 quiet and only give errors during first load @@ -2121,7 +2123,7 @@ * SD Card support is disabled by default. If your controller has an SD slot, * you must uncomment the following option or it won't work. */ -//#define SDSUPPORT +#define SDSUPPORT /** * SD CARD: ENABLE CRC @@ -2381,7 +2383,7 @@ // RepRapDiscount FULL GRAPHIC Smart Controller // https://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller // -//#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER +#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER // // K.3D Full Graphic Smart Controller diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 16c5587f9c6e..01672614ac4d 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -426,7 +426,7 @@ * Enable Autotemp Mode with M104/M109 F S B. * Disable by sending M104/M109 with no F parameter (or F0 with AUTOTEMP_PROPORTIONAL). */ -#define AUTOTEMP +//#define AUTOTEMP #if ENABLED(AUTOTEMP) #define AUTOTEMP_OLDWEIGHT 0.98 // Factor used to weight previous readings (0.0 < value < 1.0) // Turn on AUTOTEMP on M104/M109 by default using proportions set here @@ -848,7 +848,7 @@ #define HOMING_BUMP_MM { 5, 5, 2 } // (mm) Backoff from endstops after first bump #define HOMING_BUMP_DIVISOR { 2, 2, 4 } // Re-Bump Speed Divisor (Divides the Homing Feedrate) -//#define HOMING_BACKOFF_POST_MM { 2, 2, 2 } // (mm) Backoff from endstops after homing +#define HOMING_BACKOFF_POST_MM { HOMING_PULL_OFF, HOMING_PULL_OFF, HOMING_PULL_OFF } // (mm) Backoff from endstops after homing //#define QUICK_HOME // If G28 contains XY do a diagonal move first //#define HOME_Y_BEFORE_X // If G28 contains XY home Y before X @@ -1020,7 +1020,7 @@ // @section motion -#define AXIS_RELATIVE_MODES { false, false, false, false } +#define AXIS_RELATIVE_MODES { false, false, false } // Add a Duplicate option for well-separated conjoined nozzles //#define MULTI_NOZZLE_DUPLICATION @@ -1183,7 +1183,7 @@ * vibration and surface artifacts. The algorithm adapts to provide the best possible step smoothing at the * lowest stepping frequencies. */ -//#define ADAPTIVE_STEP_SMOOTHING +#define ADAPTIVE_STEP_SMOOTHING /** * Custom Microstepping @@ -1258,7 +1258,7 @@ // @section lcd #if ANY(HAS_LCD_MENU, EXTENSIBLE_UI, HAS_DWIN_E3V2) - #define MANUAL_FEEDRATE { 50*60, 50*60, 4*60, 2*60 } // (mm/min) Feedrates for manual moves along X, Y, Z, E from panel + #define MANUAL_FEEDRATE { 50*60, 50*60, 4*60 } // (mm/min) Feedrates for manual moves along X, Y, Z, E from panel #define FINE_MANUAL_MOVE 0.025 // (mm) Smallest manual move (< 0.1mm) applying to Z on most machines #if IS_ULTIPANEL #define MANUAL_E_MOVES_RELATIVE // Display extruder move distance rather than "position" @@ -1315,7 +1315,7 @@ #endif // Include a page of printer information in the LCD Main Menu - //#define LCD_INFO_MENU + #define LCD_INFO_MENU #if ENABLED(LCD_INFO_MENU) //#define LCD_PRINTER_INFO_IS_BOOTSCREEN // Show bootscreen(s) instead of Printer Info pages #endif @@ -1370,7 +1370,7 @@ #endif // Scroll a longer status message into view - //#define STATUS_MESSAGE_SCROLLING + #define STATUS_MESSAGE_SCROLLING // On the Info Screen, display XY with one decimal place when possible //#define LCD_DECIMAL_SMALL_XY @@ -1424,7 +1424,7 @@ // Enable this option and set to HIGH if your SD cards are incorrectly detected. //#define SD_DETECT_STATE HIGH - //#define SD_IGNORE_AT_STARTUP // Don't mount the SD card when starting up + #define SD_IGNORE_AT_STARTUP // Don't mount the SD card when starting up //#define SDCARD_READONLY // Read-only SD card (to save over 2K of flash) //#define GCODE_REPEAT_MARKERS // Enable G-code M808 to set repeat markers and do looping @@ -1530,7 +1530,7 @@ //#define LONG_FILENAME_HOST_SUPPORT // Enable this option to scroll long filenames in the SD card menu - //#define SCROLL_LONG_FILENAMES + #define SCROLL_LONG_FILENAMES // Leave the heaters on after Stop Print (not recommended!) //#define SD_ABORT_NO_COOLDOWN @@ -1630,7 +1630,7 @@ * * :[ 'LCD', 'ONBOARD', 'CUSTOM_CABLE' ] */ - //#define SDCARD_CONNECTION LCD + #define SDCARD_CONNECTION ONBOARD // Enable if SD detect is rendered useless (e.g., by using an SD extender) //#define NO_SD_DETECT @@ -1946,18 +1946,18 @@ * * Warning: Does not respect endstops! */ -//#define BABYSTEPPING +#define BABYSTEPPING #if ENABLED(BABYSTEPPING) //#define INTEGRATED_BABYSTEPPING // EXPERIMENTAL integration of babystepping into the Stepper ISR - //#define BABYSTEP_WITHOUT_HOMING - //#define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement). - //#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA! + #define BABYSTEP_WITHOUT_HOMING + #define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement). + #define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA! #define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way //#define BABYSTEP_MILLIMETER_UNITS // Specify BABYSTEP_MULTIPLICATOR_(XY|Z) in mm instead of micro-steps #define BABYSTEP_MULTIPLICATOR_Z 1 // (steps or mm) Steps or millimeter distance for each Z babystep #define BABYSTEP_MULTIPLICATOR_XY 1 // (steps or mm) Steps or millimeter distance for each XY babystep - //#define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping. + #define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping. #if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING) #define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds. // Note: Extra time may be added to mitigate controller latency. @@ -2184,7 +2184,7 @@ * and optionally G38.4 and G38.5 (probe away from target). * Set MULTIPLE_PROBING for G38 to probe more than once. */ -//#define G38_PROBE_TARGET +#define G38_PROBE_TARGET #if ENABLED(G38_PROBE_TARGET) //#define G38_PROBE_AWAY // Include G38.4 and G38.5 to probe away from target #define G38_MINIMUM_MOVE 0.0275 // (mm) Minimum distance that will produce a move. @@ -3442,10 +3442,14 @@ * * See https://marlinfw.org/docs/configuration/laser_spindle.html for more config details. */ -//#define SPINDLE_FEATURE +#define SPINDLE_FEATURE //#define LASER_FEATURE #if EITHER(SPINDLE_FEATURE, LASER_FEATURE) - #define SPINDLE_LASER_ACTIVE_STATE LOW // Set to "HIGH" if SPINDLE_LASER_ENA_PIN is active HIGH + #if ENABLED(SPINDLE_FEATURE) + #define SPINDLE_LASER_ACTIVE_STATE LOW // Set to "HIGH" if SPINDLE_LASER_ENA_PIN is active HIGH + #elif ENABLED(LASER_FEATURE) + #define SPINDLE_LASER_ACTIVE_STATE HIGH // Set to "HIGH" if SPINDLE_LASER_ENA_PIN is active HIGH + #endif #define SPINDLE_LASER_USE_PWM // Enable if your controller supports setting the speed/power #if ENABLED(SPINDLE_LASER_USE_PWM) @@ -3478,7 +3482,11 @@ * - RPM (S0 - S50000) Best for use with a spindle * - SERVO (S0 - S180) */ - #define CUTTER_POWER_UNIT PWM255 + #if ENABLED(SPINDLE_FEATURE) + #define CUTTER_POWER_UNIT RPM + #elif ENABLED(LASER_FEATURE) + #define CUTTER_POWER_UNIT PERCENT + #endif /** * Relative Cutter Power @@ -3509,9 +3517,9 @@ */ #if ENABLED(SPINDLE_LASER_USE_PWM) #define SPEED_POWER_INTERCEPT 0 // (%) 0-100 i.e., Minimum power percentage - #define SPEED_POWER_MIN 5000 // (RPM) - #define SPEED_POWER_MAX 30000 // (RPM) SuperPID router controller 0 - 30,000 RPM - #define SPEED_POWER_STARTUP 25000 // (RPM) M3/M4 speed/power default (with no arguments) + #define SPEED_POWER_MIN 2500 // (RPM) + #define SPEED_POWER_MAX 10000 // (RPM) SuperPID router controller 0 - 30,000 RPM + #define SPEED_POWER_STARTUP 0 // (RPM) M3/M4 speed/power default (with no arguments) #endif #else @@ -3520,7 +3528,7 @@ #define SPEED_POWER_INTERCEPT 0 // (%) 0-100 i.e., Minimum power percentage #define SPEED_POWER_MIN 0 // (%) 0-100 #define SPEED_POWER_MAX 100 // (%) 0-100 - #define SPEED_POWER_STARTUP 80 // (%) M3/M4 speed/power default (with no arguments) + #define SPEED_POWER_STARTUP 0 // (%) M3/M4 speed/power default (with no arguments) #endif // Define the minimum and maximum test pulse time values for a laser test fire function @@ -3535,7 +3543,7 @@ * This allows the laser to keep in perfect sync with the planner and removes * the powerup/down delay since lasers require negligible time. */ - //#define LASER_POWER_INLINE + #define LASER_POWER_INLINE #if ENABLED(LASER_POWER_INLINE) /** @@ -3568,15 +3576,15 @@ /** * Include laser power in G0/G1/G2/G3/G5 commands with the 'S' parameter */ - //#define LASER_MOVE_POWER + #define LASER_MOVE_POWER #if ENABLED(LASER_MOVE_POWER) // Turn off the laser on G0 moves with no power parameter. // If a power parameter is provided, use that instead. - //#define LASER_MOVE_G0_OFF + #define LASER_MOVE_G0_OFF // Turn off the laser on G28 homing. - //#define LASER_MOVE_G28_OFF + #define LASER_MOVE_G28_OFF #endif /** @@ -3723,7 +3731,7 @@ /** * Auto-report temperatures with M155 S */ -#define AUTO_REPORT_TEMPERATURES +// #define AUTO_REPORT_TEMPERATURES /** * Auto-report position with M154 S @@ -3748,7 +3756,7 @@ /** * Disable all Volumetric extrusion options */ -//#define NO_VOLUMETRICS +#define NO_VOLUMETRICS #if DISABLED(NO_VOLUMETRICS) /** @@ -3855,28 +3863,28 @@ */ // Custom Menu: Main Menu -//#define CUSTOM_MENU_MAIN +#define CUSTOM_MENU_MAIN #if ENABLED(CUSTOM_MENU_MAIN) - //#define CUSTOM_MENU_MAIN_TITLE "Custom Commands" - #define CUSTOM_MENU_MAIN_SCRIPT_DONE "M117 User Script Done" + #define CUSTOM_MENU_MAIN_TITLE "CNC Commands" + #define CUSTOM_MENU_MAIN_SCRIPT_DONE "CNC Command Done" #define CUSTOM_MENU_MAIN_SCRIPT_AUDIBLE_FEEDBACK - //#define CUSTOM_MENU_MAIN_SCRIPT_RETURN // Return to status screen after a script + #define CUSTOM_MENU_MAIN_SCRIPT_RETURN // Return to status screen after a script #define CUSTOM_MENU_MAIN_ONLY_IDLE // Only show custom menu when the machine is idle - #define MAIN_MENU_ITEM_1_DESC "Home & UBL Info" - #define MAIN_MENU_ITEM_1_GCODE "G28\nG29 W" + #define MAIN_MENU_ITEM_1_DESC "Zero all axes" + #define MAIN_MENU_ITEM_1_GCODE "G92 X0 Y0 Z0" //#define MAIN_MENU_ITEM_1_CONFIRM // Show a confirmation dialog before this action - #define MAIN_MENU_ITEM_2_DESC "Preheat for " PREHEAT_1_LABEL - #define MAIN_MENU_ITEM_2_GCODE "M140 S" STRINGIFY(PREHEAT_1_TEMP_BED) "\nM104 S" STRINGIFY(PREHEAT_1_TEMP_HOTEND) + #define MAIN_MENU_ITEM_2_DESC "Zero X & Y axes" + #define MAIN_MENU_ITEM_2_GCODE "G92 X0 Y0" //#define MAIN_MENU_ITEM_2_CONFIRM - //#define MAIN_MENU_ITEM_3_DESC "Preheat for " PREHEAT_2_LABEL - //#define MAIN_MENU_ITEM_3_GCODE "M140 S" STRINGIFY(PREHEAT_2_TEMP_BED) "\nM104 S" STRINGIFY(PREHEAT_2_TEMP_HOTEND) + #define MAIN_MENU_ITEM_3_DESC "Zero Z axis" + #define MAIN_MENU_ITEM_3_GCODE "G92 Z0" //#define MAIN_MENU_ITEM_3_CONFIRM - //#define MAIN_MENU_ITEM_4_DESC "Heat Bed/Home/Level" - //#define MAIN_MENU_ITEM_4_GCODE "M140 S" STRINGIFY(PREHEAT_2_TEMP_BED) "\nG28\nG29" + #define MAIN_MENU_ITEM_4_DESC "Go to zero" + #define MAIN_MENU_ITEM_4_GCODE "G1 X0 Y0 Z0 F500" //#define MAIN_MENU_ITEM_4_CONFIRM //#define MAIN_MENU_ITEM_5_DESC "Home & Info" @@ -3959,7 +3967,7 @@ * Host Prompt Support enables Marlin to use the host for user prompts so * filament runout and other processes can be managed from the host side. */ -//#define HOST_ACTION_COMMANDS +#define HOST_ACTION_COMMANDS #if ENABLED(HOST_ACTION_COMMANDS) //#define HOST_PAUSE_M76 //#define HOST_PROMPT_SUPPORT diff --git a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h index 03a0360b6e87..5150e28fcbd6 100644 --- a/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h +++ b/Marlin/src/pins/lpc1768/pins_BTT_SKR_V1_4.h @@ -75,7 +75,7 @@ #else #define X_MIN_PIN P1_26 // E0DET #endif -#elif ENABLED(X_DUAL_ENDSTOPS) +#elif ENABLED(X_DUAL_ENDSTOPS) || (ENABLED(USE_XMIN_PLUG) && ENABLED(USE_XMAX_PLUG)) #ifndef X_MIN_PIN #define X_MIN_PIN P1_29 // X-STOP #endif @@ -93,7 +93,7 @@ #else #define Y_MIN_PIN P1_25 // E1DET #endif -#elif ENABLED(Y_DUAL_ENDSTOPS) +#elif ENABLED(Y_DUAL_ENDSTOPS) || (ENABLED(USE_YMIN_PLUG) && ENABLED(USE_YMAX_PLUG)) #ifndef Y_MIN_PIN #define Y_MIN_PIN P1_28 // Y-STOP #endif @@ -111,7 +111,7 @@ #else #define Z_MIN_PIN P1_00 // PWRDET #endif -#elif ENABLED(Z_MULTI_ENDSTOPS) +#elif ENABLED(Z_MULTI_ENDSTOPS) || (ENABLED(USE_ZMIN_PLUG) && ENABLED(USE_ZMAX_PLUG)) #ifndef Z_MIN_PIN #define Z_MIN_PIN P1_27 // Z-STOP #endif @@ -506,3 +506,16 @@ // Include common SKR pins // #include "pins_BTT_SKR_common.h" + +// +// CNC Spindle control +// +#if ENABLED(SPINDLE_FEATURE) + #define CUSTOM_MACHINE_NAME "3018 SPINDLE CNC" + #define SPINDLE_LASER_ENA_PIN SERVO0_PIN // P2_00, for dremel to switch the AC relay + #define SPINDLE_LASER_PWM_PIN HEATER_BED_PIN // P2_05, connected to BED PWM in order to use the 24V spindle +#elif ENABLED(LASER_FEATURE) + #define CUSTOM_MACHINE_NAME "3018 LASER CNC" + #define SPINDLE_LASER_ENA_PIN HEATER_0_PIN // P2_07, connected to HE0 in order to power the step down from 24V to 12V + #define SPINDLE_LASER_PWM_PIN NEOPIXEL_PIN // P1_24, center pin, PWM capable +#endif