Skip to content

Commit

Permalink
Faster homing, smoother Z, improved encoder on long moves.
Browse files Browse the repository at this point in the history
  • Loading branch information
Sophist-UK committed Mar 1, 2024
1 parent 7ca7e7f commit 60dfe09
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 13 deletions.
8 changes: 4 additions & 4 deletions Marlin/Configuration.h
Original file line number Diff line number Diff line change
Expand Up @@ -1497,8 +1497,7 @@
* Override with M201
* X, Y, Z [, I [, J [, K...]]], E0 [, E1[, E2...]]
*/
//#define DEFAULT_MAX_ACCELERATION { 3000, 1000, 20, 10000 }
#define DEFAULT_MAX_ACCELERATION { 3000, 1000, 16, 10000 }
#define DEFAULT_MAX_ACCELERATION { 3000, 1000, 20, 10000 }

//#define LIMITED_MAX_ACCEL_EDITING // Limit edit via M201 or LCD to DEFAULT_MAX_ACCELERATION * 2
#if ENABLED(LIMITED_MAX_ACCEL_EDITING)
Expand Down Expand Up @@ -1531,7 +1530,8 @@
#if ENABLED(CLASSIC_JERK)
#define DEFAULT_XJERK 20.0 // If you change X/YJERK then the Junction Deviation distance will need recalculating
#define DEFAULT_YJERK 20.0
#define DEFAULT_ZJERK 0.4
//#define DEFAULT_ZJERK 0.4
#define DEFAULT_ZJERK 0.2
//#define DEFAULT_IJERK 0.3
//#define DEFAULT_JJERK 0.3
//#define DEFAULT_KJERK 0.3
Expand Down Expand Up @@ -2291,7 +2291,7 @@
* at which point movement will be level to the machine's XY plane.
* The height can be set with M420 Z<height>
*/
#define ENABLE_LEVELING_FADE_HEIGHT
//#define ENABLE_LEVELING_FADE_HEIGHT
#if ENABLED(ENABLE_LEVELING_FADE_HEIGHT)
#define DEFAULT_LEVELING_FADE_HEIGHT 5.0 // (mm) Default fade height.
#endif
Expand Down
18 changes: 9 additions & 9 deletions Marlin/Configuration_adv.h
Original file line number Diff line number Diff line change
Expand Up @@ -882,7 +882,7 @@
//#define SENSORLESS_BACKOFF_MM { 2, 2, 0 } // (linear=mm, rotational=°) Backoff from endstops before sensorless homing

#define HOMING_BUMP_MM { 5, 5, 1 } // (linear=mm, rotational=°) Backoff from endstops after first bump
#define HOMING_BUMP_DIVISOR { 2, 2, 4 } // Re-Bump Speed Divisor (Divides the Homing Feedrate)
#define HOMING_BUMP_DIVISOR { 5, 5, 5 } // Re-Bump Speed Divisor (Divides the Homing Feedrate)

//#define HOMING_BACKOFF_POST_MM { 2, 2, 2 } // (linear=mm, rotational=°) Backoff from endstops after homing
//#define XY_COUNTERPART_BACKOFF_MM 0 // (mm) Backoff X after homing Y, and vice-versa
Expand Down Expand Up @@ -1358,18 +1358,19 @@
// Dagoma value for extruder manual rate is 60 not 2*60, but IME this is too slow.
// However there is now a feedrate multiplier so we might want to change this back to 60.
#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 FINE_MANUAL_MOVE 0.025 // (mm) Smallest manual move (< 0.1mm) applying to Z on most machines
#define FINE_MANUAL_MOVE 0.01 // (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"
#define ULTIPANEL_FEEDMULTIPLY // Encoder sets the feedrate multiplier on the Status Screen
#endif
#endif

// Change values more rapidly when the encoder is rotated faster
//#define ENCODER_RATE_MULTIPLIER
#define ENCODER_RATE_MULTIPLIER
#if ENABLED(ENCODER_RATE_MULTIPLIER)
#define ENCODER_10X_STEPS_PER_SEC 30 // (steps/s) Encoder rate for 10x speed
#define ENCODER_100X_STEPS_PER_SEC 80 // (steps/s) Encoder rate for 100x speed
//#define ENCODER_10X_STEPS_PER_SEC 30 // (steps/s) Encoder rate for 10x speed
#define ENCODER_10X_STEPS_PER_SEC 20 // (steps/s) Encoder rate for 10x speed
//#define ENCODER_100X_STEPS_PER_SEC 80 // (steps/s) Encoder rate for 100x speed
#endif

// Play a beep when the feedrate is changed from the Status Screen
Expand Down Expand Up @@ -1850,21 +1851,20 @@
* Custom status screens can forcibly override these settings.
*/
//#define STATUS_COMBINE_HEATERS // Use combined heater images instead of separate ones
// DE200 Save memory by using numberless hotends - position is obvious
//#define STATUS_HOTEND_NUMBERLESS // Use plain hotend icons instead of numbered ones (with 2+ hotends)
#define STATUS_HOTEND_INVERTED // Show solid nozzle bitmaps when heating (Requires STATUS_HOTEND_ANIM for numbered hotends)
#define STATUS_HOTEND_ANIM // Use a second bitmap to indicate hotend heating
#define STATUS_LAYERS_DISPLAY // Enable layer icon
#define STATUS_LAYERS_ANIM // Use a second bitmap to indicate layer count
#define STATUS_TIMER_DISPLAY // Enable timer icon
//#define STATUS_CHAMBER_ANIM // Use a second bitmap to indicate chamber heating
#define STATUS_TIMER_DISPLAY // Enable countdown timer icon
//#define STATUS_CHAMBER_ANIM // Use a second bitmap to indicate chamber heating
//#define STATUS_CUTTER_ANIM // Use a second bitmap to indicate spindle / laser active
//#define STATUS_COOLER_ANIM // Use a second bitmap to indicate laser cooling
//#define STATUS_FLOWMETER_ANIM // Use multiple bitmaps to indicate coolant flow
//#define STATUS_ALT_BED_BITMAP // Use the alternative bed bitmap
//#define STATUS_ALT_FAN_BITMAP // Use the alternative fan bitmap
#define STATUS_FAN_FRAMES 3 // :[0,1,2,3,4] Number of fan animation frames
//#define STATUS_HEAT_PERCENT // Show heating in a progress bar
#define STATUS_HEAT_PERCENT // Show heating in a progress bar
#define BOOT_MARLIN_LOGO_ANIMATED // Animated Marlin logo. Costs ~3260 (or ~940) bytes of flash.

// Frivolous Game Options
Expand Down
36 changes: 36 additions & 0 deletions Marlin/src/pins/ramps/pins_MKS_BASE_15_DAGOMA.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,10 @@
/**
* Dagoma modifications
*/

#undef BOARD_INFO_NAME
#define BOARD_INFO_NAME "MKS BASE 1.5 Dagoma"

#undef X_MIN_PIN
#undef X_MAX_PIN
#undef Y_MIN_PIN
Expand All @@ -47,3 +51,35 @@
#undef FIL_RUNOUT2_PIN
#define FIL_RUNOUT_PIN 19
#define FIL_RUNOUT2_PIN 14

// From https://github.com/MarlinFirmware/Marlin/issues/12003
// #if IS_U8GLIB_ST7920
// #define BOARD_ST7920_DELAY_1 0
// #define BOARD_ST7920_DELAY_2 250 or 400
// #define BOARD_ST7920_DELAY_3 0
// #endif

// From https://github.com/MarlinFirmware/Marlin/issues/12003 for long cables
// #define ST7920_DELAY_1 DELAY_NS (0)
// #define ST7920_DELAY_2 DELAY_NS (250)
// #define ST7920_DELAY_3 DELAY_NS (250)


// From Github PRs for other boards
// Alter timing for graphical display
#if HAS_MARLINUI_U8GLIB
// #ifndef BOARD_ST7920_DELAY_1
//#define BOARD_ST7920_DELAY_1 DELAY_NS(96)
// #define BOARD_ST7920_DELAY_1 DELAY_NS(120)
// #endif
// #ifndef BOARD_ST7920_DELAY_2
//#define BOARD_ST7920_DELAY_2 DELAY_NS(48)
// #define BOARD_ST7920_DELAY_2 DELAY_NS(80)
// #endif
#ifndef BOARD_ST7920_DELAY_3
//#define BOARD_ST7920_DELAY_3 DELAY_NS(600)
// #define BOARD_ST7920_DELAY_3 DELAY_NS(580)
// From reprap site for RRD_FGDC
#define BOARD_ST7920_DELAY_3 DELAY_NS(63)
#endif
#endif

0 comments on commit 60dfe09

Please sign in to comment.