Page 1 of 1

Auto bed leveling strange problem

Posted: Fri Aug 12, 2016 4:32 pm
by lezabour
Hi,

I have a geeetech prusa i3 pro C. I had several issued, i managed to solve with help of this board.
Now i'm printing, but still have issues.

I add the auto bed leveling, so it would be easier to calibrate, but not so much confused smiley
I use an inductive sensor (LJ18 A3-8-Z/BX sol - 36 V 8 mm) and a sensor mount without servo. I add an aluminium paper from kitchen beetween the Bed and the Glass. Sensor work fine with this configuration.
I use Host Repertier Mac, and Slic3r (last version), MArlin Firmware 1.0.2, PLA, with bed at 70°, extruder 180°.

I don't use the Grid system, cause i can't manage to have the probe at good position. So i use the 3 points system, which works. (not really as you will see)

I used several tutorials and Youtube video, but unfortunatly i can't manage to solve my problem.


My problem is: beetween 2 auto bed leveling, i get difference results. Even if i try 2 calibration, without printing beetween, i have different result
exemple:
Bed x: 33.00 y: 30.00 z: -1.49
1min after, i redo the test
Bed x: 33.00 y: 30.00 z: 2.90

For this exemple, I didnt move anything, didn't print, didn't change conditions and any parameter, i did the 2 probing one after the other.
So at the end, i can never trust the autobed leveling, and often have to do emergency stop cause extruder is at a bad distance from glass (touching it, even if the Z stop is triger....;( or to far from glass...

I tryed to compensate this with the Z-offset parameter from Slic3r, but because the Z position is different from auto leveling each time, it doesn't change anything.


Here is my process:
I heat the bead (70°)
and have the following code as Gstart

Code: Select all

M107
M190 S70 ; set bed temperature
G90 ;
G28 X Y ; Home X Y
G29 ;
G90 ;
;G1 Z2 F4000 ; useless i thing for me, cause inductive sensor, without servo

Here is my configuration file: (the important part)

Code: Select all

// coarse Endstop Settings
#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

#ifndef ENDSTOPPULLUPS
  // fine endstop settings: Individual pullups. will be ignored if ENDSTOPPULLUPS is defined
  // #define ENDSTOPPULLUP_XMAX
  // #define ENDSTOPPULLUP_YMAX
  // #define ENDSTOPPULLUP_ZMAX
  // #define ENDSTOPPULLUP_XMIN
  // #define ENDSTOPPULLUP_YMIN
  // #define ENDSTOPPULLUP_ZMIN
#endif

#ifdef ENDSTOPPULLUPS
  #define ENDSTOPPULLUP_XMAX
  #define ENDSTOPPULLUP_YMAX
  #define ENDSTOPPULLUP_ZMAX
  #define ENDSTOPPULLUP_XMIN
  #define ENDSTOPPULLUP_YMIN
 // #define ENDSTOPPULLUP_ZMIN
#endif

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool X_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Y_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
#define DISABLE_MAX_ENDSTOPS
//#define DISABLE_MIN_ENDSTOPS


// Travel limits after homing
#define X_MAX_POS 180
#define X_MIN_POS 0
#define Y_MAX_POS 180
#define Y_MIN_POS 0
#define Z_MAX_POS 180
#define Z_MIN_POS 0

define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line)
#define Z_PROBE_REPEATABILITY_TEST  // If not commented out, Z-Probe Repeatability test will be included if Auto Bed Leveling is Enabled.

#ifdef ENABLE_AUTO_BED_LEVELING

// There are 2 different ways to pick the X and Y locations to probe:

//  - "grid" mode
//    Probe every point in a rectangular grid
//    You must specify the rectangle, and the density of sample points
//    This mode is preferred because there are more measurements.
//    It used to be called ACCURATE_BED_LEVELING but "grid" is more descriptive

//  - "3-point" mode
//    Probe 3 arbitrary points on the bed (that aren't colinear)
//    You must specify the X & Y coordinates of all 3 points

 // #define AUTO_BED_LEVELING_GRID
  // with AUTO_BED_LEVELING_GRID, the bed is sampled in a
  // AUTO_BED_LEVELING_GRID_POINTSxAUTO_BED_LEVELING_GRID_POINTS grid
  // and least squares solution is calculated
  // Note: this feature occupies 10'206 byte
  #ifdef AUTO_BED_LEVELING_GRID

    // set the rectangle in which to probe
    #define LEFT_PROBE_BED_POSITION 33
    #define RIGHT_PROBE_BED_POSITION 180
    #define BACK_PROBE_BED_POSITION 159
    #define FRONT_PROBE_BED_POSITION 30

     // set the number of grid points per dimension
     // I wouldn't see a reason to go above 3 (=9 probing points on the bed)
    #define AUTO_BED_LEVELING_GRID_POINTS 2


  #else  // not AUTO_BED_LEVELING_GRID
    // with no grid, just probe 3 arbitrary points.  A simple cross-product
    // is used to esimate the plane of the print bed

      #define ABL_PROBE_PT_1_X 20
      #define ABL_PROBE_PT_1_Y 110
      #define ABL_PROBE_PT_2_X 60
      #define ABL_PROBE_PT_2_Y 90
      #define ABL_PROBE_PT_3_X 80
      #define ABL_PROBE_PT_3_Y 50

  #endif // AUTO_BED_LEVELING_GRID


  // these are the offsets to the probe relative to the extruder tip (Hotend - Probe)
  // X and Y offsets must be integers
  #define X_PROBE_OFFSET_FROM_EXTRUDER -73
  #define Y_PROBE_OFFSET_FROM_EXTRUDER -64
  #define Z_PROBE_OFFSET_FROM_EXTRUDER -0.6 


  #define Z_SAFE_HOMING   // This feature is meant to avoid Z homing with probe outside the bed area.


Thanks for your help and suggestions

Re: Auto bed leveling strange problem

Posted: Sat Mar 17, 2018 10:10 pm
by PClough
Hi,

I am having the same problem as you, did you ever find a solution to this?

Thanks