Bed Auto Leveling feature
Check the Readme for instruction how to enable and configure the feature
This commit is contained in:
@ -26,6 +26,10 @@
|
||||
|
||||
#include "Marlin.h"
|
||||
|
||||
#ifdef ENABLE_AUTO_BED_LEVELING
|
||||
#include "vector_3.h"
|
||||
#endif // ENABLE_AUTO_BED_LEVELING
|
||||
|
||||
// This struct is used when buffering the setup for each linear movement "nominal" values are as specified in
|
||||
// the source g-code and may never actually be reached if acceleration management is active.
|
||||
typedef struct {
|
||||
@ -67,15 +71,33 @@ typedef struct {
|
||||
volatile char busy;
|
||||
} block_t;
|
||||
|
||||
#ifdef ENABLE_AUTO_BED_LEVELING
|
||||
// this holds the required transform to compensate for bed level
|
||||
extern matrix_3x3 plan_bed_level_matrix;
|
||||
#endif // #ifdef ENABLE_AUTO_BED_LEVELING
|
||||
|
||||
// Initialize the motion plan subsystem
|
||||
void plan_init();
|
||||
|
||||
// Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in
|
||||
// millimaters. Feed rate specifies the speed of the motion.
|
||||
|
||||
#ifdef ENABLE_AUTO_BED_LEVELING
|
||||
void plan_buffer_line(float x, float y, float z, const float &e, float feed_rate, const uint8_t &extruder);
|
||||
|
||||
// Get the position applying the bed level matrix if enabled
|
||||
vector_3 plan_get_position();
|
||||
#else
|
||||
void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder);
|
||||
#endif // ENABLE_AUTO_BED_LEVELING
|
||||
|
||||
// Set position. Used for G92 instructions.
|
||||
#ifdef ENABLE_AUTO_BED_LEVELING
|
||||
void plan_set_position(float x, float y, float z, const float &e);
|
||||
#else
|
||||
void plan_set_position(const float &x, const float &y, const float &z, const float &e);
|
||||
#endif // ENABLE_AUTO_BED_LEVELING
|
||||
|
||||
void plan_set_e_position(const float &e);
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user