RRF3 -> Z-Probe was not triggered during probing move



  • Dear forum ... unfortunately I am currently still struggling a lot with different topics at RRF3. So far I have always used RRF2.05 but since I am now using the DUET3 I have to use RRF3.

    As with all my other printers, I installed an inductive sensor as a Z-Probe. It also works so far! I can home and everything fits so far.

    But when I run G29, the message "Z-Probe was not triggered during probing move" always comes after a few measuring points.

    What I found out -> after homing he moves the print bed around the dive away from the nozzle.

    during the G29 command, however, it moves the print bed significantly lower (bigger dive heigth) than the dive height in the config. thus explains to me why the Z-test does not trigger!

    but why does it go too far with the G29 command?

    I added the config of the Z-Probe to my RRF 2.05 firmware, in itself the same parameters, but it doesn't work with RRF3!

    I have the latest firmware RRF 3.1.1 and tried many other parameters from M558. I hope someone can help me! šŸ™‚

    thank you

    ; Z-Probe (RRF 3)
    M558  P5 I1 C"!io5.in" H20 F100 T12000 ; Z probe type -> Induktiv
    G31 P100 X0.0 Y0.0 Z2.0
    M557 X50:410 Y00:340 P04:04      ; define mesh grid
    
    
    ;Z-Probe Settings from RRF2.05
    M558 P5 H7 I1 F150 T3000 		; Set Z probe -> Inductive
    G31 T1 P100 X0.0 Y0.0 Z0.58  
    M557 X50:410 Y00:340 P04:04
    


  • after many attempts, it worked completely for the first time. I started it with G32.

    But the error message also shows that he moves the print bed too far!

    344a13b3-02e4-4a8d-a2bd-26059f7d5d7e-image.png

    4d5f23b0-6252-4fb3-bb15-cb07b39c05ab-image.png

    For testing i changed the dive height a few times...

    this is the right config for this pics...

    ; Z-Probe 
    M558  P5 I1 C"!io5.in" H5 F500 T12000 ; Z probe type -> Induktiv
    G31 P100 X0.0 Y0.0 Z2.0
    

  • Moderator

    Please post your entire config.g, homing files, and bed.g.



  • ; Configuration file for Duet 3 (firmware version 3)
    
    
    ; General preferences
    G90            ; send absolute coordinates...
    M82            ; and absolute extruder moves
    M550 P"I444-S" ; set printer name
    
    ; Network
    M552 S1        ; enable network 
    M586 P0 S1     ; enable HTTP
    M586 P1 S0     ; disable FTP
    M586 P2 S0     ; disable Telnet
    
    ; Drives
    
    M569 P0.0 S1   ; physical drive 0.0 goes forwards Y0
    M569 P0.1 S0   ; physical drive 0.1 goes forwards Y1
    M569 P0.2 S0   ; physical drive 0.2 goes forwards X
    M569 P0.3 S0   ; physical drive 0.3 goes forwards X1 (U)
    M569 P0.4 S0   ; physical drive 0.4 goes backwards E0
    M569 P0.5 S0   ; physical drive 0.5 goes backwards E1
    
    M569 P1.0 S1   ; physical drive 1.0 goes forwards Z0
    M569 P1.1 S1   ; physical drive 1.0 goes backwards Z1
    M569 P1.2 S1   ; physical drive 1.0 goes forwards Z2
    
    
    ;New Mapping
    M584 X0.2 Y0.0:0.1 U0.3 Z1.0:1.1:1.2 E0.4:0.5  ; set drive mapping
    
    M350 X16 Y16 U16 Z16 E16:16 I1  ; configure microstepping 
    M92 X80.00 Y35.56 U80 Z1600 E415:415 ;set steps per mm
    M566 X900 Y900 U900 Z12 E120:120   ;set maximum instantaneous speed changes (mm/min)
    M203 X60000 Y60000 U60000 Z1000 E9000:9000      ;set maximum speeds (mm/min)
    M201 X2000 Y2000 U2000 Z200 E1000:1000            ;set accelerations (mm/s^2)
    M906 X1400 Y4200 U1200 Z1500 E1000:1000 I30  ;set motor currents (mA)
    M84 S30             		    ; Set idle timeout
    
    ; Axis Limits
    M208 X0 Y0 U0 Z0 S1   		    ; set axis minima
    M208 X460 Y500 U460 Z420 S0         ; set axis maxima
    
    ; Endstops
    M574 X1 S1 P"!io1.in" ; active-high endstop for low end on X via pin io0.in
    M574 U2 S1 P"!io0.in" ; active-high endstop for high end on U via pin 1.io1.in
    M574 Y2 S1 P"!io2.in" ; active-high endstop for high end on Y via pin 1.io2.in
    
    
    ; Z-Probe 
    M558  P5 I1 C"!io5.in" H5 F500 T12000 ; Z probe type -> Induktiv
    G31 P100 X0.0 Y0.0 Z2.0
    
    ;M558 P5 I1 C"!io3.in" R1.0 K0 H5 F200 T6000 ; Z probe type -> Piezo
    ;M558 P5 I1 C"!io4.in" R1.0 K1 H5 F200 T6000 ; Z probe type -> Piezo
    ;G31 K1 P100 X0.0 Y0.0 Z-0.30
    
    M557 X50:410 Y00:340 P04:04      ; define mesh grid
    
    ; Heaters
    M308 S0 P"temp0" Y"thermistor" T100000 B4092          ; configure sensor 0 as thermistor on pin temp0
    M950 H0 C"out0" T0                                    ; create bed heater output on out0 and map it to sensor 0
    M307 H0 B0 S1.00                                      ; disable bang-bang mode for the bed heater and set PWM limit
    M140 H0                                               ; map heated bed to heater 0
    M143 H0 S120                                          ; set temperature limit for heater 0 to 120C
    
    M308 S1 P"temp1" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin temp1
    M950 H1 C"out1" T1                                    ; create nozzle heater output on out1 and map it to sensor 1
    M307 H1 B0 S1.00                                      ; disable bang-bang mode for heater  and set PWM limit
    
    M308 S2 P"temp2" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 2 as thermistor on pin temp2
    M950 H2 C"out2" T2                                    ; create nozzle heater output on out2 and map it to sensor 2
    M307 H2 B0 S1.00                                      ; disable bang-bang mode for heater  and set PWM limit
    
    ; Fans
    
    M950 F0 C"out4"                                   ; create fan 2 on pin out4 and set its frequency
    M106 P0 S0 H-1                                        ; set fan 2 value. Thermostatic control is turned off
    M950 F1 C"out5"                                  ; create fan 3 on pin out5 and set its frequency
    M106 P1 S1 H2:1 T50                                   ; set fan 3 value. Thermostatic control is turned off
    
    ; Tools
    M563 P0 S"Links" D0 H1 F0:2  ; define tool 0
    G10 P0 X0 Y0 Z0 S0 R0        ; set tool 0 axis offsets
    G10 P0 R0 S0                 ; active and standby temperatures 
    M563 P1 S"Rechts" D1 H2 X3 F1:3   ; define tool 1
    G10 P1 Y0 U0 Z0 S0 R0        ; set tool 1 axis offsets
    G10 P1 R0 S0                 ; active and standby temperatures 
    
    
    
    ; Custom settings are not defined
    
    ; Open Door Switch
    M581 T0 C"1.io3.in"  S0 C0		;trigger #2 (calls trigger0 -> Emergency-Stop)
    M582 T0
    
    ; LEDs
    ; Farbe Blue
    M950 F2 C"out3" Q500  ; create fan 3 on pin out5 and set its frequency
    M106 P2 S125     ;set fan 3 value. Thermostatic control is turned off
    ; Farbe Red
    M950 F3 C"1.out0" Q500  ; create fan 3 on pin out5 and set its frequency
    M106 P3 S0     ;set fan 3 value. Thermostatic control is turned off
    ; Farbe Green
    M950 F4 C"1.out1" Q500  ; create fan 3 on pin out5 and set its frequency
    M106 P4 S150     ;set fan 3 value. Thermostatic control is turned off
    ; Farbe White
    M950 F5 C"1.out2" Q500  ; create fan 3 on pin out5 and set its frequency
    M106 P5 S0     ;set fan 3 value. Thermostatic control is turned off
    
    
    ; Miscellaneous
    
    M501          ; load saved parameters from non-volatile memory
    
    T0            ; select first tool
    
    M572 D0 S0.03
    

    Homing files:

    ; homeall.g
    ; called to home all axes
    
    
    M106 P0 S0		; Part cooling Fan off 
    G91                    ; relative positioning
    
    G1 H2 Z10 F6000         ; lift Z relative to current position
    G1 H1 X-650 Y550 U650 F5000 ; first pass XYU
    G1 H2 X5 Y-5 U-5 F6000     ; go back a few mm
    G1 H1 X-20 Y20 U20 F360  ; second pass XY
    
    
    G90                   ; absolute positioning
    G1 X270 Y170 U600 F20000    ; first bed probe point -> move X to the middle of the Bed, U outside and home Z
    
    G30
    
    ; homex.g
    ; called to home the X axis
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Fri Jun 19 2020 21:08:48 GMT+0200 (MitteleuropƤische Sommerzeit)
    G91               ; relative positioning
    G1 H2 Z5 F6000    ; lift Z relative to current position
    G1 H1 X-505 F1800 ; move quickly to X axis endstop and stop there (first pass)
    G1 H2 X5 F6000    ; go back a few mm
    G1 H1 X-505 F360  ; move slowly to X axis endstop once more (second pass)
    G1 H2 Z-5 F6000   ; lower Z again
    G90               ; absolute positioning
    
    ; homeu.g
    ; called to home the U axis
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Fri Jun 19 2020 21:08:48 GMT+0200 (MitteleuropƤische Sommerzeit)
    G91               ; relative positioning
    G1 H2 Z5 F6000    ; lift Z relative to current position
    G1 H1 U505 F1800 ; move quickly to X axis endstop and stop there (first pass)
    G1 H2 U-5 F6000    ; go back a few mm
    G1 H1 U505 F360  ; move slowly to X axis endstop once more (second pass)
    G1 H2 Z-5 F6000   ; lower Z again
    G90               ; absolute positioning
    
    ; homey.g
    ; called to home the Y axis
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Fri Jun 19 2020 21:08:48 GMT+0200 (MitteleuropƤische Sommerzeit)
    G91              ; relative positioning
    G1 H2 Z5 F6000   ; lift Z relative to current position
    G1 H1 Y550 F1800 ; move quickly to Y axis endstop and stop there (first pass)
    G1 H2 Y-5 F6000  ; go back a few mm
    G1 H1 Y455 F360  ; move slowly to Y axis endstop once more (second pass)
    G1 H2 Z-5 F6000  ; lower Z again
    G90              ; absolute positioning
    
    ; homez.g
    ; called to home the Z axis
    ;
    
    
    M106 P0 S0
    G90                   ; absolute positioning
    G1 X270 Y170 U600 F8000    ; first bed probe point -> move X to the middle of the Bed, U outside and home Z
    
    G30
    

    Bed.g

    ; bed.g
    ; called to perform automatic bed compensation via G32
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.3 on Fri Jun 19 2020 21:08:48 GMT+0200 (MitteleuropƤische Sommerzeit)
    G28
    M561 ; clear any bed transform
    G29  ; probe the bed and enable compensation
    

  • Moderator

    After homing with home all, are you able to move the Z axis where Z0 is the nozzle just touching the bed?

    ; Z-Probe 
    M558  P5 I1 C"!io5.in" H5 F500 T12000 ; Z probe type -> Induktiv
    G31 P100 X0.0 Y0.0 Z2.0
    

    You've got an extra space after the M558 (not sure that really matters)
    You can remove I1 from your M558. That gets taken care of by the !. (again not sure if it matters)
    For your G31 you need to define the X Y and Z offsets. 2mm seems too perfect. Did you measure it?

    https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe#Section_Calibrate_the_Z_probe_trigger_height

    In your bed.g try moving the M561 to be above the G28.

    Send M98 P"config.g" in the console and report back with the results.



  • @Phaedrux

    Thank you!

    The "H5" was the dive height between probe points, isnĀ“t it?
    Yes I know that i have to define the offsets in G31, X and Y i have to do, but Z 2,00mm is right!

    The hole settings work fine in RRF 2.05 at about 30 printers. Now with RRF3.1.1 there is the problem!



  • This post is deleted!

  • Moderator

    ; Z-Probe
    M558 P5 I1 C"!io5.in" H5 F500 T12000 ; Z probe type -> Induktiv
    G31 P100 X0.0 Y0.0 Z2.0

    Can you try enabling the pullup resistor by adding a ^ to the C value?

    M558 P5 C"^!io5.in"



  • @Phaedrux said in RRF3 -> Z-Probe was not triggered during probing move:

    Can you try enabling the pullup resistor by adding a ^ to the C value?

    I think that will definitely work (I will test it when I am back home). but what should it do? the Z-probe itself works with homing e.g. or at the first measuring point at G29. It is rather the problem that the z-axis in g29 moves too far from the Z-probe.



  • @CR3D I am not sure ^ will work because you use Duet 3 with pullup already installed: https://duet3d.dozuki.com/Wiki/Connecting_endstop_switches#Section_Duet_3_endstop_inputs
    But I don't have an idea what's wrong, so please try ^.

    I wonder why you don't get an error message in homeall with
    G1 X270 Y170 U600 F20000
    because U is outside your M208 limits. If this command is ignored, you would make the G30 z probe at the XY endstop positions.

    (deleted a comment about CoreXY, as it is a Cartesian printer)



  • @JoergS5

    Ok i will try it šŸ˜‰ Of course .. .:-)

    I use the same inductive sensors as endstops in X,Y and U... so thats why I am wondering... šŸ˜‰

    The printer is a Cartesian IDEX System... till now I get no error message at homeall.g

    The printer at itself is running... homing, move axis ....



  • @CR3D could be that the Duet 2 and Duet 3 have different pullup default values and your probe makes a different. If ^ does not work, I am sure a solution to add some external pullup resistor to the endstop would be also possible to set the same resitance comparable to the Duet 2 was.

    I visited your homepage, you have interesting and good quality printers!



  • @JoergS5 said in RRF3 -> Z-Probe was not triggered during probing move:

    could be that the Duet 2 and Duet 3 have different pullup default values and your probe makes a different.

    1k vs 27k hardware pull up



  • @JoergS5

    Thank you! Yes we want to build high performance Printers with High performance Electronics! šŸ˜‰

    @bearer
    Thank you -> is that difference a problem for the sensor or the result? because the sensor at itself triggers ...

    the question is still why he moves the z-axis too far after probing ..?



  • Ok i made every changes you said and nothing was the solution!

    ; Z-Probe 
    M558 P5 C"^!io5.in" H1 F500 T12000 ; Z probe type -> Induktiv
    G31 P100 X0.0 Y0.0 Z1.95
    

    I activated the Pull-Up Resistor and i changed again the DIVE Heigth ("H-Parameter").

    @dc42

    it must be a bug in the firmware, it only moves the bed with the G29 by twice the dive height without knowing this. Then, of course, the distance to the Z-Probe is too great and it gives the error message "Z-Probe was not triggered during probing move"

    the inductive sensor itself works wonderfully -> I also use it on the X, Y and U axis. So it is not a problem with the signal evaluation in my opinion!



  • @dc42 do you have any idea? Please help me...!



  • @CR3D if you start G29, is the first mesh testing point over the bed? The first point is at 50,0 and your offset setting is 0,0 which is strange (same position like nozzle?) But mesh ignores G31 setting anyway and starts at 0,50. I would try starting eg at 100,100

    Other ideas are whether Ir is reflected correctly by print bed.

    Third idea is the prebuilt pullups may be too weak. The Duet Ir Sensor mentions the smoothieboard 1k pullups being too weak eg. Maybe this hereis a similar problem. But I am no pullup expert.
    Article with section smoothieware: https://miscsolutions.wordpress.com/mini-height-sensor-board/

    One more idea, I miss the M574 Z endstop saying that the z endstop is a probe:
    "When using the Z probe to home Z, M574 Z0 should be used."

    One additional idea is that LEDs are mentioned in the config, maybe the light disturbs the IR sensor. Maybe they emit IR wavelengths partly.



  • @JoergS5 said in RRF3 -> Z-Probe was not triggered during probing move:

    Thank you for the many suggestions, but unfortunately all the points mentioned are given.
    The first rehearsal point is over the bed! That fits.

    the funny thing is that he sometimes brings the error message right after the first probe point and sometimes right in the middle or once it had worked completely to execute the G29 command, but then the complete heightmap had an offset of 5mm (see image above).

    And by the way I use an inductive sensor and no longer the IR probe -> I've had too many problems with this in the past ...



  • @CR3D This is a long shot because I don't use a probe, but try reducing the feed rate in your M558. e.g. try 300 instead of 500 just to see if that helps.



  • If looked through your code and could not find any mistakes. I had some Problems in my beginngs with RRF3 too.

    Maybe @dc42 has another Idea.

    Greets
    Max


  • Moderator

    Just to eliminate the probe entirely can you test using M558 P0 to use the manual probing option? That will prompt you to job the Z axis down. Then we can see if everything software side is working with the homing heightmap etc.

    Maybe the probe itself is failing. Do you have another to test with?



  • I have already exchanged the z-probe a few times. I have already made 20 repetitions with the homez.g and measured the trigger height, so the sensor triggers wonderfully and works very precisely (approx. 0.01mm).

    It only occurs with the G29 command.

    Again I have observed that with G29 it not only moves the dive height down, but the double dive height. In the dashboard, however, the "simple" dive height is shown as the Z value. that's why i think it moves twice its height and doesn't notice it.
    as soon as he then carries out a test point in the G29, he has to cover twice without knowing that he drove this height before, so he claims that the z-probe does not trigger.

    Another dive height does not change anything, because it then moves twice without knowing it. šŸ˜ž



  • I did an extensive code-check and talk with CR3D and also didn't come to a solution.

    For example: a 5-point bed-calibration works fine (a G32 (call to execute bed.g with 5x G30 in it)

    Every G30 command works, but as soon as you start a G29, things start getting weird.


  • administrators

    In your config.g file I see these lines:

    M584 X0.2 Y0.0:0.1 U0.3 Z1.0:1.1:1.2 E0.4:0.5 ; set drive mapping

    and:

    M558 P5 I1 C"!io5.in" H5 F500 T12000 ; Z probe type -> Induktiv

    So your Z motors are connected to the expansion board and your Z probe is connected to the main board. Unfortunately, it is a limitation of the current firmware that an endstop switch or Z probe connected to the main board cannot stop a stepper motor connected to an expansion board unless a motor connected to the main board is also moving. This was documented for endstops some time ago (at https://duet3d.dozuki.com/Wiki/Duet_3_firmware_configuration_limitations and also in the RRF 3.0 release notes at https://github.com/Duet3D/RepRapFirmware/blob/v3-dev/WHATS_NEW_RRF3.md), but unfortunately I omitted to include Z probes in those documents until recently. I apologise for that.

    Possible workarounds include:

    1. Connect the three Z motors to stepper outputs on the main board. This is the preferred solution.
    2. Connect the inductive sensor to the expansion board instead of to the main board.
    3. Configure a 4th dummy Z motor on the main board.

  • administrators

    looking at your motor use, it looks like you are using all the drivers on the mainboard so I think you need to swap Z to the main board or the sensor to the expansion board.


Log in to reply