G30 won't go far enough to reach probe



  • I have an endstop setup as a Z probe so it can be assigned to multiple axes
    https://forum.duet3d.com/topic/10918/one-endstop-for-multiple-axes

    When I run G30 the printer only goes down about 10mm (default dive height x2?) then throws the error:

    Error: Z probe was not triggered during probing move
    

    I've been searching around but I haven't found anything that can get it to move down further to hit the probe.

    homeall.g

    ; Home All
    G91 ; relative movement
    G1 Z4 F100 H1; ensure head is clear of the bed
    G1 S1 X-200 F3000 ; move radius towards minimum until the endstop switch is triggered
    G1 S2 X5 ; move radius out by 5mm
    G1 S1 X-20 F600 H1; move radius slowly to the endstop switch again
    ; Home Bed
    G90 ; absolute movement
    G1 S2 X10 ; move to 10mm from centre of bed 
    G92 X10 Y0 ; define current position as X10 Y0
    ; Home Z
    G30 ; lower head, stop when probe triggered and set Z to trigger height
    

    homez.g

    G91 ; relative movement
    G1 Z4 F200 H1; raise head 4mm to ensure it is above the Z probe trigger height
    G90 ; back to absolute mode
    G30 ; lower head, stop when probe triggered and set Z to trigger height
    

    My best guess is to assign a Z endstop to the Z probe so I can do a G1 move down until the endstop is triggered but that seems unnecessarily convoluted.

    Printer is a Polar3D.
    config.g

    ; Configuration file for factory testing Duet Ethernet and Wifi with V2.02 firmware
    
    *******************************************************************************************************************
    FOR TESTING ONLY! USE https://configurator.reprapfirmware.org/ to generate configuration files for your printer!
    *******************************************************************************************************************
    
    
    ; Communication and general
    M111 S0                            		; Debug off
    M550 PDuetTest					; Machine name and Netbios name (can be anything you like)
    M551 redacted              			; Machine password (used for FTP)
    
    ;*** Networking
    M587 redacted 
    M552 S1						; Turn network on
    
    M555 P2						; Set output to look like Marlin
    G21						; Work in millimetres
    G90						; Send absolute coordinates...
    M83						; ...but relative extruder moves
    
    ; No bed heater
    M140 H-1
    
    ; Disable Fan 1 thermostatic mode
    M106 P1 H-1
    
    ; Axis and motor configuration
    M569 P0 S0					; Drive 0 goes forwards
    M569 P1 S1					; Drive 1 goes forwards
    M569 P2 S0					; Drive 2 goes forwards
    M569 P3 S1					; Drive 3 goes forwards
    M558 P4 I1
    M574 X1 S2
    M574 Y0					; radius homing switch present, no turntable homing switch
    M669 K7 R0:150 H0.3 F30 A30 			; set Polar kinematics parameters
    M666 X0 Y0 Z0					; put your endstop adjustments here, or let auto calibration find them
    M350 X16 Y16 Z16 E16:16 I1			; Set 16x microstepping with interpolation
    M92 X80 Y80 Z2560			 	; Set axis steps/mm
    M906 X1000 Y1000 Z1000 E800 I60			; Set motor currents (mA) and increase idle current to 60%
    M201 X1000 Y1000 Z1000 E1000			; Accelerations (mm/s^2)
    M203 X6000 Y6000 Z100 E3600 			; maximum linear speeds mm/minute
    M566 X1200 Y1200 Z1200 E1200			; Maximum instant speed changes mm/minute
    
    ; Thermistors
    M305 P1 T100000 B3974 R4700 H30 L0		; Put your own H and/or L values here to set first nozzle thermistor ADC correction
    
    M570 S180					; Hot end may be a little slow to heat up so allow it 180 seconds
    
    ; Fans
    M106 P1 S-1					; disable thermostatic mode for fan 1
    
    ; Tool definitions
    M563 P0 D0 H1					; Define tool 0
    G10 P0 S0 R0					; Set tool 0 operating and standby temperatures
    M92 E80:80					; Set extruder steps per mm
    
    ; Z probe and compensation definition
    ;*** If you have a switch instead of an IR probe, change P1 to P4 in the following M558 command. 
    ; M558 P4 F100 T6000 X0 Y0 Z0 H3		; Z probe is a Smart Effector and is not used for homing any axes R0.4 not used. Reduced F300 to 100
    ; G31 P100 X0 Y0 Z-0.25				; Set the zprobe height and threshold for Smart Effector
    
    ;*** If you are using axis compensation, put the figures in the following command
    M556 S78 X0 Y0 Z0				; Axis compensation here
    
    M208 S1 Z-0.2					; set minimum Z
    
    T0						; select first hot end
    ; M117 Use https://configurator.reprapfirmware.org/ to set up your printer config
    


  • @redwagon said in G30 won't go far enough to reach probe:

    ; Z probe and compensation definition
    ;*** If you have a switch instead of an IR probe, change P1 to P4 in the following M558 command.
    ; M558 P4 F100 T6000 X0 Y0 Z0 H3 ; Z probe is a Smart Effector and is not used for homing any axes R0.4 not used. Reduced F300 to 100
    ; G31 P100 X0 Y0 Z-0.25 ; Set the zprobe height and threshold for Smart Effector

    All your probe definition commands are commented out.


  • administrators

    You need to set the Z axis maximum using M208. A plain G30 with no other parameters or just one S parameter will go down up to 1.1 times the length of the Z axis that you declare using M208.



  • That happens to me once in a while. For homeall and homez is replaced all G30 with G30 Z-99999

    I think that fixes it.



  • Sorry, I commented out the default ones but the probe is defined earlier with:

    M558 P4 I1
    

    I've tried several combinations of the suggestions above but they all do the same thing.

    G20
    G30 Z-99999
    G30 Z-200
    M208 Z200
    G30
    G30 Z-99999
    G30 Z-200
    M208 S1 Z-200
    G30
    G30 Z-9999
    M208 Z0:200
    G30 
    G30 Z-999999
    M208 Z-200:200sG30 Z-9999
    G30
    G30 Z-99999
    

    I measured and it dives for 10mm then returns to its original height.

    From reading the docs it doesn't really sound like I should be doing a large dive for G30. Do I need to run G28 first with the endstop assigned to Z probe?


  • administrators

    Does your Z axis move the correct amount? For example, if you send G91 followed by G1 S2 Z50 does it move the print head up or the bed down 50mm?



  • It's off by a little bit; right now it's travelling 8mm per 10mm. Shouldn't be enough for it to run through the max axis settings and not trigger the probe. I tested by doing a G92 Z0 then moving it around manually.


  • administrators

    @redwagon said in G30 won't go far enough to reach probe:

    It's off by a little bit; right now it's travelling 8mm per 10mm. Shouldn't be enough for it to run through the max axis settings and not trigger the probe. I tested by doing a G92 Z0 then moving it around manually.

    It sounds to me that either your Z steps/mm is a little off, or your Z speed or acceleration is set too high. I suggest you find out which:

    • Calculate the Z steps/mm from the pitch/lead of your leadscrew mor the belt pitch and number of pulley teeth
    • If you think you have set the correct Z steps/mm, try reducing Z speed and/or acceleration in M203 and M201

    When you have the Z movement sorted, try plain G30 with no parameters.



  • I've adjusted the Z steps/mm and lowered speed and acceleration. No changes; G30 by itself still lowers 10mm and throws the "Z probe was not triggered during probing move" error.



  • config.g

    M555 P2						; Set output to look like Marlin
    G21						; Work in millimetres
    G90						; Send absolute coordinates...
    M83						; ...but relative extruder moves
    
    ; No bed heater
    M140 H-1
    
    ; Disable Fan 1 thermostatic mode
    M106 P1 H-1
    
    ; Axis and motor configuration
    M569 P0 S0					; Drive 0 goes forwards
    M569 P1 S1					; Drive 1 goes forwards
    M569 P2 S0					; Drive 2 goes forwards
    M569 P3 S1					; Drive 3 goes forwards
    M558 P4 I1					; use E0 endstop as Z probe
    M574 X1 S2					; bind X homing switch to Z probe
    M574 Y0						; radius homing switch present, no turntable homing switch
    M669 K7 R0:150 H0.3 F30 A30 			; set Polar kinematics parameters
    M666 X0 Y0 Z0					; put your endstop adjustments here, or let auto calibration find them
    M350 X16 Y16 Z16 E16:16 I1			; Set 16x microstepping with interpolation
    M92 X80 Y80 Z3200			 	; Set axis steps/mm
    M906 X1000 Y1000 Z1000 E800 I60			; Set motor currents (mA) and increase idle current to 60%
    M201 X1000 Y1000 Z100 E1000			; Accelerations (mm/s^2)
    M203 X6000 Y6000 Z100 E3600 			; maximum linear speeds mm/minute
    M566 X1200 Y1200 Z1200 E1200			; Maximum instant speed changes mm/minute
    
    ; Thermistors
    M305 P1 T100000 B3974 R4700 H30 L0		; Put your own H and/or L values here to set first nozzle thermistor ADC correction
    
    M570 S180					; Hot end may be a little slow to heat up so allow it 180 seconds
    
    ; Fans
    M106 P1 S-1					; disable thermostatic mode for fan 1
    
    ; Tool definitions
    M563 P0 D0 H1					; Define tool 0
    G10 P0 S0 R0					; Set tool 0 operating and standby temperatures
    M92 E80:80					; Set extruder steps per mm
    
    ;*** If you are using axis compensation, put the figures in the following command
    M556 S78 X0 Y0 Z0				; Axis compensation here
    
    M208 Z-0.2:200					; set axis travel limits
    
    T0						; select first hot end
    

    homeall.g

    ; Home All
    G91 ; relative movement
    G1 Z4 F100 H1; ensure head is clear of the bed
    G1 S1 X-200 F3000 ; move radius towards minimum until the endstop switch is triggered
    G1 S2 X5 ; move radius out by 5mm
    G1 S1 X-20 F600 H1; move radius slowly to the endstop switch again
    ; Home Bed
    G90 ; absolute movement
    G1 S2 X10 ; move to 10mm from centre of bed 
    G92 X10 Y0 ; define current position as X10 Y0
    ; Home Z
    ; G1 X0 Y0 ; put head over the centre of the bed, or wherever you want to probe
    G30 ; lower head, stop when probe triggered and set Z to trigger height
    

    homebed.g

    G91 ; relative movement
    G1 Z4 F100 H1 ; ensure head is clear of the bed
    G90 ; absolute movement
    G1 S2 X0 ; move to centre of bed 
    G92 X0 Y0 ; define current position as X0 Y0
    G91 ; relative movement
    G1 Z-4 F100 H1; restore original Z position
    

    homedelta.g

    ; Example Homing file for RepRapFirmware on delta printer
    
    ;M117 Use https://configurator.reprapfirmware.org/ to set up your printer config
    
    ;G91							; use relative positioning
    ;******* Change F250 in the following line to F2500 when you are finished commissioning
    ;******* Change 320 in the following to a higher value if your Kossel has taller towers
    ;G1 S1 X320 Y320 Z320 F2500	; move all carriages up 320mm, stopping at the endstops
    ;G1 S2 X-3 Y-3 Z-3			; move all carriages down 3mm
    ;G1 S1 X6 Y6 Z6 F250			; move carriages slowly up 6mm, stopping at the endstops
    ;G1 Z-5 F2000				; down a few mm so that we can centre the head
    ;G90							; back to absolute positioning
    ;G1 X0 Y0 F2000				; centre the head and set a reasonable feed rate
    

    homeradius.g

    G91 ; relative movement
    G1 Z4 F100 H1; ensure head is clear of the bed
    G1 S1 X-200 F3000 ; move radius towards minimum until the endstop switch is triggered
    G1 S2 X5 ; move radius out by 5mm
    G1 S1 X-20 F600 ; move radius slowly to the endstop switch again
    G1 Z-4 F100 H1; restore original Z position
    

    homez.g

    G91 ; relative movement
    G1 Z4 F200 H1; raise head 4mm to ensure it is above the Z probe trigger height
    G90 ; back to absolute mode
    ;G1 X0 Y0 ; put head over the centre of the bed, or wherever you want to probe
    G30 ; lower head, stop when probe triggered and set Z to trigger height
    

  • administrators


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.