BL-Touch fährt nicht aus

Hallo together,

ich habe ein Problem mit meinem BL-Touch. Wenn ich den Drucker einschalte, dann fährt der Sensor zweimal aus und wieder ein und leuchtet danach rot. Wenn ich die z-Achse dann leveln möchte, dann fährt die Z-Achse in Richtung des Betts aber der Sensor fährt nicht aus. Ich muss den Strom dann wieder ausschalten, damit der Druckkopf nicht auf den Tisch fährt. Außerdem funktionieren die ganzen M-Befehle für den BL-Touch auch nicht.

Kann mir hierbei jemand helfen?

Der Bl-Touch ist richtig angeschlossen und die Config.h habe ich auch schon mehrmals überprüft.  Kann mir dabei jemand weiterhelfen?


// ################ Endstop configuration #####################
#define ENDSTOP_PULLUP_X_MIN true
#define ENDSTOP_X_MIN_INVERTING false
#define MIN_HARDWARE_ENDSTOP_X true
#define ENDSTOP_PULLUP_Y_MIN true
#define ENDSTOP_Y_MIN_INVERTING false
#define MIN_HARDWARE_ENDSTOP_Y false
#define ENDSTOP_PULLUP_Z_MIN false
#define ENDSTOP_Z_MIN_INVERTING false
#define MIN_HARDWARE_ENDSTOP_Z true
#define ENDSTOP_PULLUP_X_MAX true
#define ENDSTOP_X_MAX_INVERTING false
#define MAX_HARDWARE_ENDSTOP_X false
#define ENDSTOP_PULLUP_Y_MAX true
#define ENDSTOP_Y_MAX_INVERTING false
#define MAX_HARDWARE_ENDSTOP_Y true
#define ENDSTOP_PULLUP_Z_MAX true
#define ENDSTOP_Z_MAX_INVERTING false
#define MAX_HARDWARE_ENDSTOP_Z false
#define max_software_endstop_r true

#define min_software_endstop_x false
#define min_software_endstop_y true
#define min_software_endstop_z true   //geändert
#define max_software_endstop_x true
#define max_software_endstop_y false
#define max_software_endstop_z true
#define ENDSTOP_X_BACK_MOVE 5
#define ENDSTOP_Y_BACK_MOVE 5
#define ENDSTOP_Z_BACK_MOVE 2
#define ENDSTOP_X_RETEST_REDUCTION_FACTOR 3
#define ENDSTOP_Y_RETEST_REDUCTION_FACTOR 3
#define ENDSTOP_Z_RETEST_REDUCTION_FACTOR 3
#define ENDSTOP_X_BACK_ON_HOME 10
#define ENDSTOP_Y_BACK_ON_HOME 10
#define ENDSTOP_Z_BACK_ON_HOME 20
#define ALWAYS_CHECK_ENDSTOPS 0

======== Servos =======
Control the servos with
M340 P<servoId> S<pulseInUS>   / ServoID = 0..3  pulseInUs = 500..2500
Servos are controlled by a pulse width normally between 500 and 2500 with 1500ms in center position. 0 turns servo off.
WARNING: Servos can draw a considerable amount of current. Make sure your system can handle this or you may risk your hardware!
*/
#define FEATURE_SERVO 1
#define SERVO0_PIN 5
#define SERVO1_PIN -1
#define SERVO2_PIN -1
#define SERVO3_PIN -1
#define SERVO0_NEUTRAL_POS  1500
#define SERVO1_NEUTRAL_POS  -1
#define SERVO2_NEUTRAL_POS  -1
#define SERVO3_NEUTRAL_POS  -1
#define UI_SERVO_CONTROL 1    //geändert
#define FAN_KICKSTART_TIME  200

        #define FEATURE_WATCHDOG 1    //geändert

### Z-Probing #####################

#define Z_PROBE_Z_OFFSET 0
#define Z_PROBE_Z_OFFSET_MODE 0
#define UI_BED_COATING 1
#define FEATURE_Z_PROBE 1
#define Z_PROBE_BED_DISTANCE 5
#define Z_PROBE_PIN ORIG_Z_MIN_PIN
#define Z_PROBE_PULLUP 1
#define Z_PROBE_ON_HIGH 1
#define Z_PROBE_X_OFFSET 0
#define Z_PROBE_Y_OFFSET 0
#define Z_PROBE_WAIT_BEFORE_TEST 0
#define Z_PROBE_SPEED 2
#define Z_PROBE_XY_SPEED 150
#define Z_PROBE_SWITCHING_DISTANCE 5
#define Z_PROBE_REPETITIONS 2
#define Z_PROBE_HEIGHT 5
#define Z_PROBE_START_SCRIPT "M340 P0 S700"
#define Z_PROBE_FINISHED_SCRIPT "M340 P0 S1500"
#define Z_PROBE_REQUIRES_HEATING 0
#define Z_PROBE_MIN_TEMPERATURE 150
#define FEATURE_AUTOLEVEL 1
#define Z_PROBE_X1 20
#define Z_PROBE_Y1 20
#define Z_PROBE_X2 160
#define Z_PROBE_Y2 20
#define Z_PROBE_X3 100
#define Z_PROBE_Y3 260
#define BED_LEVELING_METHOD 0     // geändert
#define BED_CORRECTION_METHOD 0
#define BED_LEVELING_GRID_SIZE 2
#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


Vielen Dank und viele Grüße

Hans-Gustav

Comments

  • what control board does your printer have ?
  • I have an Arduino Due with a radds 1.6
  • Are you supplying an external 5 volt source for the servos ?
  • Yes, I have an external 5V supply for the servos. The red light of the bl touch is on, but the pin does not come out by levelling.

  • Your config looks ok, only other thing i can think of is wrong pin number for the servo pwm, googling radds 1.6 there seems to be some confusion regarding pin numbers for the due ports.
  • Thank you, but the pin numer should be the right one. I checked it several times
  • several months ago i installed a BLTouch using the ramps board and repetier firmware.
    Used BLTouch as Z-Min.
    1. The first step is hardware connection:
      wiring: 3-pin cable: brown-> GND, red -> 5V, Orange - servo pin of board2-pin cable: black -> GND, white -> Z_Min-Pin
    2. configuration.h: I think, minimum is:
      FEATURE_SERVO 1
      SERVO0_PIN 5
      SERVO0_NEUTRAL_POS  -1  (other than yours)
    3. Check commands to control BLTouch
      (The two ups and downs after power on are just selftest, no control signal is necessary for this. But GND and 5V seems to be ok in your case if this happens)

    1. M340 P0 S700: Probe Start --> Needle down
    2. M340 P0 S1500: Probe End --> Needle up
    3. M340 P0 S1800: Self test start --> needle up/ down in endless loop
      Self test stop: for example M340 P0 S1500
    4. M340 P0 S2200 : Alarm Release (Cancel Error status)
      After Alarm Release (should be part of your start script you need a brake until Proe start is sent. For example I have:
      M340 P0 S2200
      G4 P310
      M340 P0 S700
    If the commands do not work, you need to check the servo pin at your board (must be an pwm signal). Can the board drive the 5V for the servo? (max 300mA)

    Do you use BLTouch as Z-Min? If yes, the Z-Min settings are wrong. At my printer, if the BLTouch is in error state, sends 4,2V to Z-Min pin of board which means, that Z_Min is reached and Z-Homing stops.

    Hope this helps!


  • Thank you. 

    Yes, I use the BL-touch for z-min. But what is wrong with my z-min settings. I can not find the mistake.
  • I really would start to reach manual control of BLTouch using the M340 P0 commands as step 1.
    There are the least preconditions.
    As far as I know only two:
    #define FEATURE_SERVO 1
    #define SERVO0_PIN 5
    the Pin number depends on your board and where you want to connect.
    There I can't help, i have a rumba board.

    Its necessary to find the right pin on your board to provide the PWM servo signal to BLTouch.
    If 5V, GND are ok and the BLTouch as the control signal is ok, you'll see the needle movement.
    Only then I would procees with next steps.
  • Good morning,

    I have still a problem with my BL-Touch. The BL-Touch makes the self test and all commands are working. The only command which is not working is M340 P0 S700, to start the probing.

    Does somebody have an idea why?


    Best Regards Hans

  • So if those commands are working:
       M340 P0 S1500: Probe End --> Needle up
       M340 P0 S1800: Self test start --> needle up/ down in endless loop
    and M340 P0 S700 does not, 

    try M340 P0 S650 or M340 P0 S750 or even 800
    This would help if your board or your BLTouch has a timing which is not optimal.

    The BLTouch Probe Start should be activated by a whole range of values from x to y, for example 500 to 900.
    If the timing is correct, 700 is mid of x to y. So another value could do the job in your case.
Sign In or Register to comment.