@ -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 "(Sergey, FlyingbearGhost4S / 5 )" // 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_MKS_ROBIN_NANO
# endif
/**
@ -107,7 +107,7 @@
*
* : [ - 1 , 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 ]
*/
# define SERIAL_PORT 0
# define SERIAL_PORT 3
/**
* Serial Port Baud Rate
@ -120,7 +120,7 @@
*
* : [ 2400 , 9600 , 19200 , 38400 , 57600 , 115200 , 250000 , 500000 , 1000000 ]
*/
# define BAUDRATE 2500 00
# define BAUDRATE 1152 00
//#define BAUD_RATE_GCODE // Enable G-code M575 to set the baud rate
/**
@ -128,8 +128,8 @@
* Currently Ethernet ( - 2 ) is only supported on Teensy 4.1 boards .
* : [ - 2 , - 1 , 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 ]
*/
//#define SERIAL_PORT_2 -1
//#define BAUDRATE_2 250000 // Enable to override BAUDRATE
# define SERIAL_PORT_2 1
# define BAUDRATE_2 115200 // Enable to override BAUDRATE
/**
* Select a third serial port on the board to use for communication with the host .
@ -143,7 +143,7 @@
//#define BLUETOOTH
// Name displayed in the LCD "Ready" message and Info menu
//#define CUSTOM_MACHINE_NAME "3D Printer"
# define CUSTOM_MACHINE_NAME "FBGhost 4s / 5"
// Printer's unique ID, used by some programs to differentiate between machines.
// Choose your own or use a service like https://www.uuidgenerator.net/version4
@ -546,7 +546,7 @@
# define TEMP_SENSOR_5 0
# define TEMP_SENSOR_6 0
# define TEMP_SENSOR_7 0
# define TEMP_SENSOR_BED 0
# define TEMP_SENSOR_BED 1
# define TEMP_SENSOR_PROBE 0
# define TEMP_SENSOR_CHAMBER 0
# define TEMP_SENSOR_COOLER 0
@ -652,9 +652,9 @@
# define DEFAULT_Ki_LIST { 1.08, 1.08 }
# define DEFAULT_Kd_LIST { 114.00, 114.00 }
# else
# define DEFAULT_Kp 22.20
# define DEFAULT_Ki 1.08
# define DEFAULT_Kd 114.00
# define DEFAULT_Kp 17.04
# define DEFAULT_Ki 1.31
# define DEFAULT_Kd 55.34
# endif
# endif
@ -717,7 +717,7 @@
* heater . If your configuration is significantly different than this and you don ' t understand
* the issues involved , don ' t use bed PID until someone else verifies that your hardware works .
*/
//#define PIDTEMPBED
# define PIDTEMPBED
//#define BED_LIMIT_SWITCHING
@ -735,10 +735,9 @@
// 120V 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
// from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
# define DEFAULT_bedKp 10.00
# define DEFAULT_bedKi .023
# define DEFAULT_bedKd 305.4
# define DEFAULT_bedKp 40.68
# define DEFAULT_bedKi 7.93
# define DEFAULT_bedKd 139.15
// FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.
# endif // PIDTEMPBED
@ -790,11 +789,11 @@
//#define PID_DEBUG // Sends debug data to the serial port. Use 'M303 D' to toggle activation.
//#define PID_OPENLOOP // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX
//#define SLOW_PWM_HEATERS // PWM with very low frequency (roughly 0.125Hz=8s) and minimum state time of approximately 1s useful for heaters driven by a relay
# define PID_FUNCTIONAL_RANGE 1 0 // If the temperature difference between the target temperature and the actual temperature
# define PID_FUNCTIONAL_RANGE 2 0 // If the temperature difference between the target temperature and the actual temperature
// is more than PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max.
//#define PID_EDIT_MENU // Add PID editing to the "Advanced Settings" menu. (~700 bytes of flash)
//#define PID_AUTOTUNE_MENU // Add PID auto-tuning to the "Advanced Settings" menu. (~250 bytes of flash)
# define PID_EDIT_MENU // Add PID editing to the "Advanced Settings" menu. (~700 bytes of flash)
# define PID_AUTOTUNE_MENU // Add PID auto-tuning to the "Advanced Settings" menu. (~250 bytes of flash)
# endif
// @section extruder
@ -814,7 +813,7 @@
* Note : For Bowden Extruders make this large enough to allow load / unload .
*/
# define PREVENT_LENGTHY_EXTRUDE
# define EXTRUDE_MAXLENGTH 20 0
# define EXTRUDE_MAXLENGTH 71 0
//===========================================================================
//======================== Thermal Runaway Protection =======================
@ -944,9 +943,9 @@
# endif
// Mechanical endstop with COM to ground and NC to Signal uses "false" here (most common setup).
# define X_MIN_ENDSTOP_INVERTING fals e // Set to true to invert the logic of the endstop.
# define Y_MIN_ENDSTOP_INVERTING fals e // Set to true to invert the logic of the endstop.
# define Z_MIN_ENDSTOP_INVERTING fals e // Set to true to invert the logic of the endstop.
# define X_MIN_ENDSTOP_INVERTING tru e // Set to true to invert the logic of the endstop.
# define Y_MIN_ENDSTOP_INVERTING tru e // Set to true to invert the logic of the endstop.
# define Z_MIN_ENDSTOP_INVERTING tru e // 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.
@ -962,11 +961,11 @@
# define U_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
# define V_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
# define W_MAX_ENDSTOP_INVERTING false // Set to true to invert the logic of the endstop.
# define Z_MIN_PROBE_ENDSTOP_INVERTING fals e // Set to true to invert the logic of the probe.
# define Z_MIN_PROBE_ENDSTOP_INVERTING tru e // Set to true to invert the logic of the probe.
// Enable this feature if all enabled endstop pins are interrupt-capable.
// This will remove the need to poll the interrupt pins, saving many CPU cycles.
//#define ENDSTOP_INTERRUPTS_FEATURE
# define ENDSTOP_INTERRUPTS_FEATURE
/**
* Endstop Noise Threshold
@ -983,7 +982,7 @@
//#define ENDSTOP_NOISE_THRESHOLD 2
// Check for stuck or disconnected endstops during homing moves.
//#define DETECT_BROKEN_ENDSTOP
# define DETECT_BROKEN_ENDSTOP
//=============================================================================
//============================== Movement Settings ============================
@ -1010,18 +1009,18 @@
* Override with M92
* X , Y , Z [ , I [ , J [ , K . . . ] ] ] , E0 [ , E1 [ , E2 . . . ] ]
*/
# define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 5 00 }
# define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 4 00 }
/**
* Default Max Feed Rate ( linear = mm / s , rotational = ° / 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 { 200, 200, 4, 50 }
//#define LIMITED_MAX_FR_EDITING // Limit edit via M203 or LCD to DEFAULT_MAX_FEEDRATE * 2
# define LIMITED_MAX_FR_EDITING // Limit edit via M203 or LCD to DEFAULT_MAX_FEEDRATE * 2
# if ENABLED(LIMITED_MAX_FR_EDITING)
# define MAX_FEEDRATE_EDIT_VALUES { 600, 600, 10, 5 0 } // ...or, set your own edit limits
# define MAX_FEEDRATE_EDIT_VALUES { 300, 300, 10, 7 0 } // ...or, set your own edit limits
# endif
/**
@ -1030,11 +1029,11 @@
* Override with M201
* X , Y , Z [ , I [ , J [ , K . . . ] ] ] , E0 [ , E1 [ , E2 . . . ] ]
*/
# define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10 000 }
# define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 3 000 }
//#define LIMITED_MAX_ACCEL_EDITING // Limit edit via M201 or LCD to DEFAULT_MAX_ACCELERATION * 2
# define LIMITED_MAX_ACCEL_EDITING // Limit edit via M201 or LCD to DEFAULT_MAX_ACCELERATION * 2
# if ENABLED(LIMITED_MAX_ACCEL_EDITING)
# define MAX_ACCEL_EDIT_VALUES { 6000, 6000, 200, 20 000 } // ...or, set your own edit limits
# define MAX_ACCEL_EDIT_VALUES { 5000, 5000, 100, 5 000 } // ...or, set your own edit limits
# endif
/**
@ -1045,9 +1044,9 @@
* M204 R Retract Acceleration
* M204 T Travel Acceleration
*/
# define DEFAULT_ACCELERATION 30 00 // X, Y, Z and E acceleration for printing moves
# define DEFAULT_RETRACT_ACCELERATION 3 000 // E acceleration for retracts
# define DEFAULT_TRAVEL_ACCELERATION 3 000 // X, Y, Z acceleration for travel (non printing) moves
# define DEFAULT_ACCELERATION 15 00 // X, Y, Z and E acceleration for printing moves
# define DEFAULT_RETRACT_ACCELERATION 2 000 // E acceleration for retracts
# define DEFAULT_TRAVEL_ACCELERATION 1 000 // X, Y, Z acceleration for travel (non printing) moves
/**
* Default Jerk limits ( mm / s )
@ -1057,11 +1056,11 @@
* When changing speed and direction , if the difference is less than the
* value set here , it may happen instantaneously .
*/
//#define CLASSIC_JERK
# define CLASSIC_JERK
# if ENABLED(CLASSIC_JERK)
# define DEFAULT_XJERK 10.0
# define DEFAULT_YJERK 10.0
# define DEFAULT_ZJERK 0.3
# define DEFAULT_ZJERK 0.5
//#define DEFAULT_IJERK 0.3
//#define DEFAULT_JJERK 0.3
//#define DEFAULT_KJERK 0.3
@ -1071,13 +1070,13 @@
//#define TRAVEL_EXTRA_XYJERK 0.0 // Additional jerk allowance for all travel moves
//#define LIMITED_JERK_EDITING // Limit edit via M205 or LCD to DEFAULT_aJERK * 2
# define LIMITED_JERK_EDITING // Limit edit via M205 or LCD to DEFAULT_aJERK * 2
# if ENABLED(LIMITED_JERK_EDITING)
# define MAX_JERK_EDIT_VALUES { 20, 20, 0.6, 1 0 } // ...or, set your own edit limits
# define MAX_JERK_EDIT_VALUES { 30, 30, 2, 2 0 } // ...or, set your own edit limits
# endif
# endif
# define DEFAULT_EJERK 5. 0 // May be used by Linear Advance
# define DEFAULT_EJERK 1 0 // May be used by Linear Advance
/**
* Junction Deviation Factor
@ -1087,7 +1086,7 @@
* https : //blog.kyneticcnc.com/2018/10/computing-junction-deviation-for-marlin.html
*/
# if DISABLED(CLASSIC_JERK)
# define JUNCTION_DEVIATION_MM 0.013 // (mm) Distance from real junction edge
# define JUNCTION_DEVIATION_MM 0.12 // (mm) Distance from real junction edge
# define JD_HANDLE_SMALL_SEGMENTS // Use curvature estimation instead of just the junction angle
// for small segments (< 1mm) with large junction angles (> 135°).
# endif
@ -1150,7 +1149,7 @@
* Use G29 repeatedly , adjusting the Z height at each point with movement commands
* or ( with LCD_BED_LEVELING ) the LCD controller .
*/
//#define PROBE_MANUALLY
# define PROBE_MANUALLY
/**
* A Fix - Mounted Probe either doesn ' t deploy or needs manual deployment .
@ -1276,14 +1275,14 @@
* | [ - ] |
* O - - FRONT - - +
*/
# define NOZZLE_TO_PROBE_OFFSET { 1 0, 1 0, 0 }
# define NOZZLE_TO_PROBE_OFFSET { 0, 0, 0 }
// 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 1 0
# define PROBING_MARGIN 0
// X and Y axis travel speed (mm/min) between probes
# define XY_PROBE_FEEDRATE (133 *60)
# define XY_PROBE_FEEDRATE (40 *60)
// Feedrate (mm/min) for the first approach when double-probing (MULTIPLE_PROBING == 2)
# define Z_PROBE_FEEDRATE_FAST (4*60)
@ -1336,8 +1335,8 @@
* A total of 2 does fast / slow probes with a weighted average .
* A total of 3 or more adds more slow probes , taking the average .
*/
//#define MULTIPLE_PROBING 2
//#define EXTRA_PROBING 1
# define MULTIPLE_PROBING 3
# define EXTRA_PROBING 1
/**
* Z probes require clearance when deploying , stowing , and moving between
@ -1353,16 +1352,16 @@
* Example : ` M851 Z - 5 ` with a CLEARANCE of 4 = > 9 mm from bed to nozzle .
* But : ` M851 Z + 1 ` with a CLEARANCE of 2 = > 2 mm from bed to nozzle .
*/
# define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
# define Z_CLEARANCE_DEPLOY_PROBE 7 // Z Clearance for Deploy/Stow
# define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
# define Z_CLEARANCE_MULTI_PROBE 5 // Z Clearance between multiple probes
//#define Z_AFTER_PROBING 5 // Z position after probing is done
# define Z_CLEARANCE_MULTI_PROBE 3 // Z Clearance between multiple probes
# define Z_AFTER_PROBING 5 // Z position after probing is done
# define Z_PROBE_LOW_POINT -2 // Farthest distance below the trigger-point to go before stopping
// For M851 give a range for adjusting the Z probe offset
# define Z_PROBE_OFFSET_RANGE_MIN -20
# define Z_PROBE_OFFSET_RANGE_MAX 20
# define Z_PROBE_OFFSET_RANGE_MIN -3
# define Z_PROBE_OFFSET_RANGE_MAX 3
// Enable the M48 repeatability test to test probe accuracy
//#define Z_MIN_PROBE_REPEATABILITY_TEST
@ -1432,10 +1431,43 @@
// @section machine
# define ALL_DRV_2208
//#define FB_4S_STOCK
//#define FB_5_STOCK
# ifdef ALL_DRV_2208
# define USR_E0_DIR true
# define USR_X_DIR false
# define USR_Y_DIR false
# define USR_Z_DIR true
# endif
# ifdef FB_4S_STOCK
# define USR_E0_DIR false
# define USR_X_DIR true
# define USR_Y_DIR true
# define USR_Z_DIR false
# endif
# ifdef FB_5_STOCK
# if MOTHERBOARD == BOARD_MKS_ROBIN_NANO_S_V13
# define USR_E0_DIR false
# define USR_X_DIR true
# define USR_Y_DIR true
# define USR_Z_DIR false
# else
# define USR_E0_DIR false
# define USR_X_DIR false
# define USR_Y_DIR false
# define USR_Z_DIR false
# endif
# endif
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
# define INVERT_X_DIR false
# define INVERT_Y_DIR true
# define INVERT_Z_DIR false
# define INVERT_X_DIR USR_X_DIR
# define INVERT_Y_DIR USR_Y_DIR
# define INVERT_Z_DIR USR_Z_DIR
//#define INVERT_I_DIR false
//#define INVERT_J_DIR false
//#define INVERT_K_DIR false
@ -1446,8 +1478,8 @@
// @section extruder
// For direct drive extruder v9 set to true, for geared extruder set to false.
# define INVERT_E0_DIR false
# define INVERT_E1_DIR fals e
# define INVERT_E0_DIR USR_E0_DIR
# define INVERT_E1_DIR tru e
# define INVERT_E2_DIR false
# define INVERT_E3_DIR false
# define INVERT_E4_DIR false
@ -1457,8 +1489,8 @@
// @section homing
//#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.
# 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.
/**
* Set Z_IDLE_HEIGHT if the Z - Axis moves on its own when steppers are disabled .
@ -1467,10 +1499,10 @@
*/
//#define Z_IDLE_HEIGHT Z_HOME_POS
//#define Z_HOMING_HEIGHT 4 // (mm) Minimal Z height before homing (G28) for Z clearance above the bed, clamps, ...
# define Z_HOMING_HEIGHT 2 // (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 10 // (mm) Height to move to after homing Z
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
@ -1487,14 +1519,14 @@
// @section machine
// The size of the printable area
# define X_BED_SIZE 20 0
# define Y_BED_SIZE 20 0
# define X_BED_SIZE 25 0
# define Y_BED_SIZE 21 0
// Travel limits (linear=mm, rotational=°) after homing, corresponding to endstop positions.
# define X_MIN_POS 0
# define Y_MIN_POS 0
# define Z_MIN_POS 0
# define X_MAX_POS X_BED_SIZE
# define X_MAX_POS X_BED_SIZE+X_MIN_POS
# define Y_MAX_POS Y_BED_SIZE
# define Z_MAX_POS 200
//#define I_MIN_POS 0
@ -1548,7 +1580,7 @@
# endif
# if EITHER(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS)
//#define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD
# define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD
# endif
/**
@ -1564,9 +1596,9 @@
* RAMPS - based boards use SERVO3_PIN for the first runout sensor .
* For other boards you may need to define FIL_RUNOUT_PIN , FIL_RUNOUT2_PIN , etc .
*/
//#define FILAMENT_RUNOUT_SENSOR
# define FILAMENT_RUNOUT_SENSOR
# if ENABLED(FILAMENT_RUNOUT_SENSOR)
# define FIL_RUNOUT_ENABLED_DEFAULT tru e // Enable the sensor on startup. Override with M412 followed by M500.
# define FIL_RUNOUT_ENABLED_DEFAULT fals e // Enable the sensor on startup. Override with M412 followed by M500.
# define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
# define FIL_RUNOUT_STATE LOW // Pin state indicating that filament is NOT present.
@ -1616,7 +1648,7 @@
// After a runout is detected, continue printing this length of filament
// before executing the runout script. Useful for a sensor at the end of
// a feed tube. Requires 4 bytes SRAM per sensor, plus 4 bytes overhead.
//#define FILAMENT_RUNOUT_DISTANCE_MM 25
# define FILAMENT_RUNOUT_DISTANCE_MM 500
# ifdef FILAMENT_RUNOUT_DISTANCE_MM
// Enable this option to use an encoder disc that toggles the runout pin
@ -1668,14 +1700,14 @@
//#define AUTO_BED_LEVELING_LINEAR
//#define AUTO_BED_LEVELING_BILINEAR
//#define AUTO_BED_LEVELING_UBL
//#define MESH_BED_LEVELING
# define MESH_BED_LEVELING
/**
* Normally G28 leaves leveling disabled on completion . Enable one of
* these options to restore the prior leveling state or to always enable
* leveling immediately after G28 .
*/
//#define RESTORE_LEVELING_AFTER_G28
# define RESTORE_LEVELING_AFTER_G28
//#define ENABLE_LEVELING_AFTER_G28
/**
@ -1692,7 +1724,7 @@
* Turn on with the command ' M111 S32 ' .
* NOTE : Requires a lot of PROGMEM !
*/
//#define DEBUG_LEVELING_FEATURE
# define DEBUG_LEVELING_FEATURE
# if ANY(MESH_BED_LEVELING, AUTO_BED_LEVELING_UBL, PROBE_MANUALLY)
// Set a height for the start of manual adjustment
@ -1717,14 +1749,14 @@
/**
* Enable the G26 Mesh Validation Pattern tool .
*/
//#define G26_MESH_VALIDATION
# define G26_MESH_VALIDATION
# if ENABLED(G26_MESH_VALIDATION)
# define MESH_TEST_NOZZLE_SIZE 0.4 // (mm) Diameter of primary nozzle.
# define MESH_TEST_LAYER_HEIGHT 0.2 // (mm) Default layer height for G26.
# define MESH_TEST_HOTEND_TEMP 205 // (°C) Default nozzle temperature for G26.
# define MESH_TEST_BED_TEMP 6 0 // (°C) Default bed temperature for G26.
# define MESH_TEST_HOTEND_TEMP 24 0 // (°C) Default nozzle temperature for G26.
# define MESH_TEST_BED_TEMP 9 0 // (°C) Default bed temperature for G26.
# define G26_XY_FEEDRATE 20 // (mm/s) Feedrate for G26 XY moves.
# define G26_XY_FEEDRATE_TRAVEL 10 0 // (mm/s) Feedrate for G26 XY travel moves.
# define G26_XY_FEEDRATE_TRAVEL 8 0 // (mm/s) Feedrate for G26 XY travel moves.
# define G26_RETRACT_MULTIPLIER 1.0 // G26 Q (retraction) used by default between mesh test elements.
# endif
@ -1733,7 +1765,7 @@
# if EITHER(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR)
// Set the number of grid points per dimension.
# define GRID_MAX_POINTS_X 3
# define GRID_MAX_POINTS_X 4
# define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
// Probe along the Y axis, advancing X after each column
@ -1743,13 +1775,13 @@
// Beyond the probed grid, continue the implied tilt?
// Default is to maintain the height of the nearest edge.
//#define EXTRAPOLATE_BEYOND_GRID
# define EXTRAPOLATE_BEYOND_GRID
//
// Experimental Subdivision of the grid by Catmull-Rom method.
// Synthesizes intermediate points to produce a more detailed mesh.
//
//#define ABL_BILINEAR_SUBDIVISION
# define ABL_BILINEAR_SUBDIVISION
# if ENABLED(ABL_BILINEAR_SUBDIVISION)
// Number of subdivisions between probe points
# define BILINEAR_SUBDIVISIONS 3
@ -1765,7 +1797,7 @@
//#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh
# define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed
# define MESH_INSET 5 // Set Mesh bounds as an inset region of the bed
# define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited.
# define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
@ -1785,7 +1817,7 @@
//=================================== Mesh ==================================
//===========================================================================
# define MESH_INSET 1 0 // Set Mesh bounds as an inset region of the bed
# define MESH_INSET 2 0 // Set Mesh bounds as an inset region of the bed
# define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited.
# define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
@ -1797,16 +1829,16 @@
* Add a bed leveling sub - menu for ABL or MBL .
* Include a guided procedure if manual probing is enabled .
*/
//#define LCD_BED_LEVELING
# define LCD_BED_LEVELING
# if ENABLED(LCD_BED_LEVELING)
# define MESH_EDIT_Z_STEP 0.025 // (mm) Step size while manually probing Z axis.
# define LCD_PROBE_Z_RANGE 4 // (mm) Z Range centered on Z_MIN_POS for LCD Z adjustment
//#define MESH_EDIT_MENU // Add a menu to edit mesh points
# define MESH_EDIT_MENU // Add a menu to edit mesh points
# endif
// Add a menu item to move between bed corners for manual bed adjustment
//#define LCD_BED_TRAMMING
# define LCD_BED_TRAMMING
# if ENABLED(LCD_BED_TRAMMING)
# define BED_TRAMMING_INSET_LFRB { 30, 30, 30, 30 } // (mm) Left, Front, Right, Back insets
@ -1870,15 +1902,15 @@
* - Allows Z homing only when XY positions are known and trusted .
* - If stepper drivers sleep , XY homing may be required again before Z homing .
*/
//#define Z_SAFE_HOMING
# define Z_SAFE_HOMING
# if ENABLED(Z_SAFE_HOMING)
# define Z_SAFE_HOMING_X_POINT X_CENTER // X point for Z homing
# define Z_SAFE_HOMING_Y_POINT Y_CENTER // Y point for Z homing
# define Z_SAFE_HOMING_X_POINT 0 // X point for Z homing
# define Z_SAFE_HOMING_Y_POINT 0 // Y point for Z homing
# endif
// Homing speeds (linear= mm/min, rotational=° /min)
# define HOMING_FEEDRATE_MM_M { (50*60), (5 0*60), (4*60) }
// Homing speeds (mm/min)
# define HOMING_FEEDRATE_MM_M { (40*60), (4 0*60), (4*60) }
// Validate that endstops are triggered on homing moves
# define VALIDATE_HOMING_ENDSTOPS
@ -1955,12 +1987,12 @@
* 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 flash. 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
# if ENABLED(EEPROM_SETTINGS)
//#define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors.
# define EEPROM_AUTO_INIT // Init EEPROM automatically on any errors.
//#define EEPROM_INIT_NOW // Init EEPROM on first boot after a new build.
# endif
@ -2012,11 +2044,11 @@
* P1 Raise the nozzle always to Z - park height .
* P2 Raise the nozzle by Z - park amount , limited to Z_MAX_POS .
*/
//#define NOZZLE_PARK_FEATURE
# define NOZZLE_PARK_FEATURE
# if ENABLED(NOZZLE_PARK_FEATURE)
// Specify a park position as { X, Y, Z_raise }
# define NOZZLE_PARK_POINT { (X_MIN_POS + 10), (Y_MAX_POS - 10) , 20 }
# define NOZZLE_PARK_POINT { (X_MIN_POS + 10), 10, 20 }
# define NOZZLE_PARK_MOVE 0 // Park motion: 0 = XY Move, 1 = X Only, 2 = Y Only, 3 = X before Y, 4 = Y before X
# define NOZZLE_PARK_Z_RAISE_MIN 2 // (mm) Always raise Z by at least this distance
# define NOZZLE_PARK_XY_FEEDRATE 100 // (mm/s) X and Y axes feedrate (also used for delta Z axis)
@ -2228,14 +2260,14 @@
* 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
*
* Use CRC checks and retries on the SD communication .
*/
//#define SD_CHECK_AND_RETRY
# define SD_CHECK_AND_RETRY
/**
* LCD Menu Items
@ -2298,7 +2330,7 @@
//
// Add individual axis homing items (Home X, Home Y, and Home Z) to the LCD menu.
//
//#define INDIVIDUAL_AXIS_HOMING_MENU
# define INDIVIDUAL_AXIS_HOMING_MENU
//#define INDIVIDUAL_AXIS_HOMING_SUBMENU
//
@ -2800,7 +2832,7 @@
// 480x320, 3.5", FSMC Display From MKS
// Usually paired with MKS Robin Nano V1.2
//
//#define MKS_ROBIN_TFT35
# define MKS_ROBIN_TFT35
//
// 480x272, 4.3", FSMC Display From MKS
@ -2878,11 +2910,11 @@
* root of your SD card , together with the compiled firmware .
*/
//#define TFT_CLASSIC_UI
//#define TFT_COLOR_UI
# define TFT_COLOR_UI
//#define TFT_LVGL_UI
# if ENABLED(TFT_LVGL_UI)
//#define MKS_WIFI_MODULE // MKS WiFi module
# define MKS_WIFI_MODULE // MKS WiFi module
# endif
/**
@ -2911,7 +2943,7 @@
//
// Touch Screen Settings
//
//#define TOUCH_SCREEN
# define TOUCH_SCREEN
# if ENABLED(TOUCH_SCREEN)
# define BUTTON_DELAY_EDIT 50 // (ms) Button repeat delay for edit screens
# define BUTTON_DELAY_MENU 250 // (ms) Button repeat delay for menus
@ -2920,10 +2952,10 @@
# define TOUCH_SCREEN_CALIBRATION
//#define TOUCH_CALIBRATION_X 12316
//#define TOUCH_CALIBRATION_Y -8981
//#define TOUCH_OFFSET_X -43
//#define TOUCH_OFFSET_Y 257
# define TOUCH_CALIBRATION_X 17880
# define TOUCH_CALIBRATION_Y -12234
# define TOUCH_OFFSET_X -45
# define TOUCH_OFFSET_Y 349
//#define TOUCH_ORIENTATION TOUCH_LANDSCAPE
# if BOTH(TOUCH_SCREEN_CALIBRATION, EEPROM_SETTINGS)
@ -2931,7 +2963,7 @@
# endif
# if ENABLED(TFT_COLOR_UI)
//#define SINGLE_TOUCH_NAVIGATION
# define SINGLE_TOUCH_NAVIGATION
# endif
# endif