BLTouch on Duet2Wifi z-offset not working



  • Dear Members of this humble community, I hereby kindly ask you for your wisdom since the journey of my 3D printar will soon end badly. I will just throw this little piece of hardware out of the window... 😉

    Hardware: Duet2Wifi, ender 3 + full blv mod (linear), original BLTouch, dual z with double motors, Paneldue. All is working fine.
    Software: DWC3.2.0 and most up to date RRF.
    Problem: My probe z-offset is 2.685. Measured following official guide. Set in config.h Whenever I try to print it is just a bit too high to properly squish and usually leads to failed print. Whenever I try to adjust using babystepping it just does not work at all. I have increased Z minima to -10. When I want to move Z to 0 the nozzle is still not touching the bed. Please help. Below is my config.g.

    G90                                            ; send absolute coordinates...
    M83                                            ; ...but relative extruder moves
    M550 P"Ender 3 Pro"                            ; set printer name
    M918 P1 E4 F2000000                            ; configure direct-connect display
    
    ; Network
    M552 S1                                        ; enable network
    M586 P0 S1                                     ; enable HTTP
    M586 P1 S0                                     ; disable FTP
    M586 P2 S0                                     ; disable Telnet
    
    ; Drives
    M569 P0 S0                                     ; physical drive 0 goes backwards
    M569 P1 S0                                     ; physical drive 1 goes backwards
    M569 P2 S1                                     ; physical drive 2 goes forwards
    M569 P3 S0                                     ; physical drive 3 goes backwards
    M584 X0 Y1 Z2:4 E3; two Z motors connected to driver outputs Z and E1
    M671 X-20:220 Y0:0 S5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
    ;M671 X30:30:205:205 Y30:205:205:30 P0.5 ;to wykomentowac po assisted bed level
    
    M350 X16 Y16 Z16 E16 I1                        ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z400.00 E436.54              ; set steps per mm
    M566 X1200.00 Y1200.00 Z24.00 E300.00          ; set maximum instantaneous speed changes (mm/min)
    M203 X9000.00 Y9000.00 Z500.00 E6000.00        ; set maximum speeds (mm/min)
    M201 X600.00 Y600.00 Z100.00 E5000.00          ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E450 I10                  ; set motor currents (mA) and motor idle factor in per cent
    M84 S1                                        ; Set idle timeout
    
    ; Axis Limits
    M208 X0 Y0 Z-10 S1                               ; set axis minima
    M208 X235 Y220 Z250 S0                         ; set axis maxima
    
    ; Endstops
    M574 X1 S1 P"xstop"                            ; configure active-high endstop for low end on X via pin xstop
    M574 Y1 S1 P"ystop"                            ; configure active-high endstop for low end on Y via pin ystop
    M574 Z1 S2										; Dodane
    
    ; Z-Probe
    M950 S0 C"exp.heater3"                         ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.in" H5 F300 T12000            ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X30 Y0 Z2.685                          ; set Z probe trigger value, offset and trigger height
    M557 X30:220 Y5:220 S40                       ; define mesh grid
    
    ; Heaters
    M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin bedtemp
    M950 H0 C"bedheat" T0                          ; create bed heater output on bedheat and map it to sensor 0
    M307 H0 R0.302 C622.800:622.800 D2.81 S1.00 V24.0 B0
    
    M140 H0                                        ; map heated bed to heater 0
    M143 H0 S130                                   ; set temperature limit for heater 0 to 150C
    M308 S1 P"e0temp" Y"thermistor" T100000 B4092  ; configure sensor 1 as thermistor on pin e0temp
    M308 S2 A"Chamber" P"e1temp" Y"thermistor" T100000 B3950 C0
    
    M307 H1 R2.906 C232.0 D3.44 S1.00 V24.1
    M950 H1 C"e0heat" T1                           ; create nozzle heater output on e0heat and map it to sensor 1
    M143 H1 S300                                   ; set temperature limit for heater 1 to 300C
    
    ; Fans
    M950 F0 C"!fan0" Q500                           ; create fan 0 on pin fan0 and set its frequency
    M106 P0 S0 H-1					               ; set fan 0 value. Thermostatic control is turned off
    M950 F1 C"fan1" Q500                           ; create fan 1 on pin fan1 and set its frequency
    M106 P1 S1 H1 T45                              ; set fan 1 value. Thermostatic control is turned on
    M950 F2 C"fan2" Q500                           ; create fan 2 on pin fan2 and set its frequency
    M106 P2 S1 H1:0 T45                            ; set fan 2 value. Thermostatic control is turned on
    
    ; Tools
    M563 P0 D0 H1 F0                               ; define tool 0
    G10 P0 X0 Y0 Z0                                ; set tool 0 axis offsets
    G10 P0 R0 S0                                   ; set initial tool 0 active and standby temperatures to 0C
    
    ; Custom settings are not defined
    
    ; Miscellaneous
    M575 P1 S1 B115200                              ; enable support for PanelDue
    M501
    T0                                             ; select first tool
    M572 D0 S0.1								; Pressure Advance 0.1
    

    config-override.g

    M307 H0 R0.302 C622.800:622.800 D2.81 S1.00 V24.0 B0
    M307 H1 R2.429 C140.000:140.000 D5.50 S1.00 V0.0 B0
    ; Workplace coordinates
    G10 L2 P1 X0.00 Y0.00 Z0.00
    G10 L2 P2 X0.00 Y0.00 Z0.00
    G10 L2 P3 X0.00 Y0.00 Z0.00
    G10 L2 P4 X0.00 Y0.00 Z0.00
    G10 L2 P5 X0.00 Y0.00 Z0.00
    G10 L2 P6 X0.00 Y0.00 Z0.00
    G10 L2 P7 X0.00 Y0.00 Z0.00
    G10 L2 P8 X0.00 Y0.00 Z0.00
    G10 L2 P9 X0.00 Y0.00 Z0.00
    M486 S-1
    

    start.g

    G28; Home XYZ
    G32; Poziomowanie X
    G29 S1; Wczytanie mesh
    M593 F40; ringing
    

    bed.g

    G30 P0 X30 Y115 Z-99999 ; probe near a leadscrew, half way along Y axis
    G30 P1 X220 Y115 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
    

    homeall.g

    G91                     ; relative positioning
    G1 H2 Z5 F9000          ; lift Z relative to current position
    G1 H1 X-240 Y-240 F9000 ; move quickly to X and Y axis endstops and stop there (first pass)
    G1 H2 X5 Y5 F9000       ; go back a few mm
    G1 H1 X-240 Y-240 F300  ; move slowly to X and Y axis endstops once more (second pass)
    M280 P0 S10
    G1 H1 Z-255 F600        ; move Z down stopping at the endstop
    G90                     ; absolute positioning
    G92 Z0                  ; set Z position to axis minimum (you may want to adjust this)
    
    ; Uncomment the following lines to lift Z after probing
    G91                    ; relative positioning
    G1 Z5 F600             ; lift Z relative to current position
    G90                    ; absolute positioning
    

    Please, be so kind and help me to solve the following issue. Also if you would notice any misconfiguration, be so kind to let me know.

    Cheers,
    S.


  • Moderator

    You aren't using the probe to set the Z0 position at all. Your homeall is still using the Z endstop.

    This isn't a problem in itself, but you must set the Z0 position with the probe eventually.

    I suggest you modify beg.g like this

    G90
    G1 X100 Y100 Z5 F6000 ; move the probe to center of bed
    G30 ; probe center of bed
    G30 P0 X30 Y115 Z-99999 ; probe near a leadscrew, half way along Y axis
    G30 P1 X220 Y115 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
    G1 X100 Y100 Z5 F6000 ; move the probe to center of bed
    G30 ; probe center of bed
    

    You'll need to recreate your mesh after doing that as well.


Log in to reply