BLTouch

2»

Comments

  • edited May 2020
    The autoleveling runs, but failed due to 3D touch sensor alarm (maybe the bed is not retract fast enough in point 3)
    https://vimeo.com/415442703

    May I know what settings did I got wrong?

    #define Z_PROBE_Z_OFFSET 0
    #define Z_PROBE_Z_OFFSET_MODE 0
    #define UI_BED_COATING 1
    #define FEATURE_Z_PROBE 1
    #define EXTRUDER_IS_Z_PROBE 0
    #define Z_PROBE_DISABLE_HEATERS 0
    #define Z_PROBE_BED_DISTANCE 10
    #define Z_PROBE_PIN ORIG_Z_MIN_PIN
    #define Z_PROBE_PULLUP 0
    #define Z_PROBE_ON_HIGH 1
    #define Z_PROBE_X_OFFSET 10
    #define Z_PROBE_Y_OFFSET -55
    #define Z_PROBE_WAIT_BEFORE_TEST 0
    #define Z_PROBE_SPEED 2
    #define Z_PROBE_XY_SPEED 150
    #define Z_PROBE_SWITCHING_DISTANCE 4
    #define Z_PROBE_REPETITIONS 2
    #define Z_PROBE_USE_MEDIAN 0
    #define Z_PROBE_HEIGHT 2.05
    #define Z_PROBE_DELAY 500
    #define Z_PROBE_START_SCRIPT "M340 P0 S700"
    #define Z_PROBE_FINISHED_SCRIPT "M340 P0 S1500"
    #define Z_PROBE_RUN_AFTER_EVERY_PROBE ""
    #define Z_PROBE_REQUIRES_HEATING 0
    #define Z_PROBE_MIN_TEMPERATURE 150
    #define FEATURE_AUTOLEVEL 1
    #define FEATURE_SOFTWARE_LEVELING 0
    #define Z_PROBE_X1 20
    #define Z_PROBE_Y1 40
    #define Z_PROBE_X2 160
    #define Z_PROBE_Y2 40
    #define Z_PROBE_X3 20
    #define Z_PROBE_Y3 160
    #define BED_LEVELING_METHOD 1
    #define BED_CORRECTION_METHOD 0
    #define BED_LEVELING_GRID_SIZE 5
    #define BED_LEVELING_REPETITIONS 5
    #define BED_MOTOR_1_X 0
    #define BED_MOTOR_1_Y 0
    #define BED_MOTOR_2_X 200
    #define BED_MOTOR_2_Y 0
    #define BED_MOTOR_3_X 100
    #define BED_MOTOR_3_Y 200
    #define BENDING_CORRECTION_A 0
    #define BENDING_CORRECTION_B 0
    #define BENDING_CORRECTION_C 0
    #define FEATURE_AXISCOMP 0
    #define AXISCOMP_TANXY 0
    #define AXISCOMP_TANYZ 0
    #define AXISCOMP_TANXZ 0

  • Looks like the bed is so much rotated that it can not untrigger at the back. That is bad - you should manually adjust it to be nearly correct or you get problems during print. You should only correct < 1mm.

    Increase Z_PROBE_BED_DISTANCE 10 so it starts higher also reducing the problem.
  • edited May 2020
    Thanks for the suggestion, I set the Z_PROBE_BED_DISTANCE  to 20, the autoleveling is OK for the first few points and failed due to the probe sending out too fast or the bed is retracting too slow. (After the probe was triggered on the 5th point, the bed keep going for 1mm before it stops. Then as the probe extending, it touch the downward going bed and resulted in error)
    https://vimeo.com/415853438

    Sometimes it fails at point 2, sometimes in point 3. The above video show that it failed in point 5. Any reason for that?
  • If you look closely you see here at point 5 bed does not go up again. Which means the signal was not received and only after it went into error mode there is a permanent signal which was received making bed go up. So for me it looks like the signal does not always gets triggered. Now question is where the problem lies.
    First you can try with host/server in console and send
    M111 S70
    this enables end stop reporting. So you see every time the end stop signal gets triggered. Do to bed center 20mm above bed and run
    G30 P3
    several times and see if it sometimes works or always. You also see in log now timing of end stop trigger. Compare working with failing if it fails. As it is always same situation it should result in same timing. If it switches it might be a bad contact on signal wire or something else. Maybe you should enable pullup for zprobe and zmin. In my test printer config I have done that it works reliable.
  • The cable loom for the extruder has
    -extruder stepper motor wires
    -hotend temperature sensor
    -hotend power
    -hotend fan power
    -3Dtouch servo lines
    -3Dtouch sensor line

    Will crosstalk be one of the reasons that the 3Dtouch is failing randomly?
    Do I just enable the pullup for probe and zmin in the firmware or I wire a 10k resistor between the zmin and 5v?

    Thanks.
  • I used the internal pullup on STM processor. Not sure which resistance it has. In the end it does not matter a slong as pullup is in a good range.

    Crosstalk is always a source for signal problems and we speak of 10ms signal. But it also needs high frequency or current so motor and temperature would be the possible sources, but these are off I guess during the tests. But anyhow it is a good idea to always twist the cable pairs so crosstalk gets minimized. Would also improve temperature reading. 
  • After enabled the internal pullup, the zmin signal pin without connecting the probe is 5v. The autoleveling still does not work. 

    I have also separated the probe signal wires from the cable loom, it still have the same effect. 

    I am out of idea now, unless it is a faulty 3D touch sensor.
  • you can test your 3dtouch with this script
    https://github.com/knud/BLTouchTest

    failing that, maybe post your full config.h 
  • edited May 2020
    I am using standard Arduino mega 2560 with RAMPS 1.4. 
    Other than the LED is blinking, the serial port did not print out any message even I pull or push the probe. 

    My configuration.h is in page 1 of this thread.
Sign In or Register to comment.