MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.26k stars 19.23k forks source link

Unwanted Z movement when ABL_BILINEAR_SUBDIVISION is enabled. #20865

Closed ahmetcemturan closed 3 years ago

ahmetcemturan commented 3 years ago

Bug Description

When moving in X axis the Z axis makes a sudden jerk when it is passing the 4th (I measure a grid of 5x5 points) probe point. It is not affected by Extrapolate beyond grid. Everything works fine when ABL_BILINEAR_SUBDIVISION is disabled.

This is the same as https://github.com/MarlinFirmware/Marlin/issues/14963#. I don't know why it was marked as fixed.

Configuration Files

*//#define AUTO_BED_LEVELING_3POINT //#define AUTO_BED_LEVELING_LINEAR

define AUTO_BED_LEVELING_BILINEAR

//#define AUTO_BED_LEVELING_UBL //#define MESH_BED_LEVELING

/**

/**

if ANY(MESH_BED_LEVELING, AUTO_BED_LEVELING_BILINEAR, AUTO_BED_LEVELING_UBL)

// Gradually reduce leveling correction until a set height is reached, // at which point movement will be level to the machine's XY plane. // The height can be set with M420 Z

define ENABLE_LEVELING_FADE_HEIGHT

// For Cartesian machines, instead of dividing moves on mesh boundaries, // split up moves into short segments like a Delta. This follows the // contours of the bed more closely than edge-to-edge straight moves.

define SEGMENT_LEVELED_MOVES

define LEVELED_SEGMENT_LENGTH 5.0 // (mm) Length of all segments (except the last one)

/**

endif

if EITHER(AUTO_BED_LEVELING_LINEAR, AUTO_BED_LEVELING_BILINEAR)

// Set the number of grid points per dimension.

define GRID_MAX_POINTS_X 5

define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X

// Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST

if ENABLED(AUTO_BED_LEVELING_BILINEAR)

// Beyond the probed grid, continue the implied tilt?
// Default is to maintain the height of the nearest edge.
#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  //ACT
#if ENABLED(ABL_BILINEAR_SUBDIVISION) 
  // Number of subdivisions between probe points
  #define BILINEAR_SUBDIVISIONS 3
#endif

endif

If you've made any other modifications describe them in detail here.

Steps to Reproduce

  1. enable AUTO_BED_LEVELING_BILINEAR
  2. enable ABL_BILINEAR_SUBDIVISION
  3. execute ABL
  4. Move towards and over the 4th probeposition in x
daleckystepan commented 3 years ago

Try latest bugfix-2.0.x branch. Should be already fixed in #20122.

ahmetcemturan commented 3 years ago

https://github.com/ahmetcemturan/Marlin/tree/Sapphire-Pro_MKS-Nano-1.2-3.5inch-w-Probe
it is the latest...

daleckystepan commented 3 years ago

Unfortunately your version does not seem to be latest bugfix. It doesnt include fix https://github.com/MarlinFirmware/Marlin/pull/20143/files

sjasonsmith commented 3 years ago

Closing, since this issue has already been fixed in the bugfix-2.0.x branch. Please reply if you still have problems after updating to bugfix-2.0.x.

github-actions[bot] commented 3 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.