Problem with setting my z-offset



  • Hi,
    I have recently started to re-animate my old printer and I have some troubles with setting properly offset for my BLTouch. So doesnt' really matter what I am going to put in the setting it's still probing it in the same place.

    My config.g

    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.4 on Thu Oct 15 2020 18:56:39 GMT+0100 (British Summer Time)
    
    ; General preferences
    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 S1                                     ; enable FTP
    M586 P2 S0                                     ; disable Telnet
    
    ; Drives
    M569 P0 S1                                     ; physical drive 0 goes forwards
    M569 P1 S1                                     ; physical drive 1 goes forwards
    M569 P2 S0                                     ; physical drive 2 goes backwards
    M569 P3 S1                                     ; physical drive 3 goes forwards
    M584 X0 Y1 Z2 E3                               ; set drive mapping
    M350 E128 I0                                   ; configure microstepping without interpolation
    M350 X16 Y16 Z16 I1                            ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z400.00 E1095.00             ; 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 Z180.00 E6000.00        ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z100.00 E5000.00          ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E1000 I50                  ; set motor currents (mA) and motor idle factor in per cent
    M84 S30                                        ; Set idle timeout
    
    ; Axis Limits
    M208 X0 Y0 Z0 S1                               ; set axis minima
    M208 X235 Y235 Z260 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                                     ; configure Z-probe endstop for low end on Z
    
    ; Z-Probe
    M950 S0 C"exp.heater3"                         ; create servo pin 0 for BLTouch
    M558 P9 C"^zprobe.in" H5 F120 T6000            ; set Z probe type to bltouch and the dive height + speeds
    G31 P500 X-43 Y-80 Z2.5                        ; set Z probe trigger value, offset and trigger height
    M557 X15:215 Y15:195 S20                       ; 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 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 S110                                   ; set temperature limit for heater 0 to 110C
    M308 S1 P"e0temp" Y"thermistor" T100000 B4092  ; configure sensor 1 as thermistor on pin e0temp
    M950 H1 C"e0heat" T1                           ; create nozzle heater output on e0heat and map it to sensor 1
    M307 H1 B0 S1.00                               ; disable bang-bang mode for heater  and set PWM limit
    
    ; 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 T35                              ; 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 S"MicroSwiss" 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 B57600                              ; enable support for PanelDue
    M501                                           ; load saved parameters from non-volatile memory
    T0                                             ; select first tool
    

    and config-override.g

    ; config-override.g file generated in response to M500 at 2020-10-15 18:38
    ; This is a system-generated file - do not edit
    ; Heater model parameters
    M307 H0 A61.5 C233.7 D1.5 S1.00 V23.9 B0
    M307 H1 A375.7 C136.8 D4.6 S1.00 V24.1 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
    
    ; Filament sensor
    M591 P1 C"e0_stop" S1 D0
    

    I believe offset should be properly set via G31 P500 X-43 Y-80 Z2.5 but somehow whenever I change to anything probe probes in the same place. My probe is in front left of the printer.
    Did I do some stupid mistake anywhere?



  • @Torin

    Hi,

    The X and Y parameters of G31 specify the location of the probe relative to the nozzle tip.

    Are those values correct?

    To position the probe on X and Y you use a normal G1 movement command taking into account the probe offsets in G31.

    Let's call Xd and Yd the co-ordinates of the desired location to probe.

    Let's call Xo and Yo the offsets specified in G31.

    The command to position the probe would G1 X(Xd-Xo) Y(Yd-Yo).

    Now you cannot do the math in the G1 command like I have shown, you simply first determine what those values would be and use them directly.

    For example, let's assume a bed of 300 x 300 and you wish to probe at 150,150.

    Let's also assume probe offsets of X10 and Y20.

    The command would be G1 X140 Y130

    You also have to be sure that you can move the probe to the desired point(s) without other parts of the extruder assembly hitting something.

    Frederick



  • That makes sense, but what I should do if I want to home Z and the probe goes slightly outside bed and doesn't hit anything? I would assume z probe offset is for that and firmware should compsensate that?
    No matter what I will set in

    G31 P500 X43 Y13 Z2.5                        ; set Z probe trigger value, offset and trigger height
    M557 X80:140 Y80:140 S20                       ; define mesh grid
    

    it still wants to probe in the same place outside bed.



  • @Torin said in Problem with setting my z-offset:

    home Z and the probe goes slightly outside bed and doesn't hit anything? I

    see homez.g for the location for homing



  • Good shout, but unfortunately not enough 😞

    home-z.g contents

    ; homez.g
    ; called to home the Z axis
    ;
    ; generated by RepRapFirmware Configuration Tool v3.1.4 on Thu Oct 15 2020 18:56:39 GMT+0100 (British Summer Time)
    G91              ; relative positioning
    G1 H2 Z5 F6000   ; lift Z relative to current position
    G90              ; absolute positioning
    G1 X58 Y48 F6000 ; go to first probe point
    G30              ; home Z by probing the bed
    

    After changing and restarting it still probes the old place, despite me adjusting it in G1 over there. When I invoke G1 X58 Y48 it goes to the good point though where the probe wouldn't hit air...



  • are you executing home z or homeall?

    check your homeall as well in case you are homing all axis



  • Yeah I was doing home-all. Cheers dude. That did the trick.
    Happy Friday.

    Sid stupid question, any chance I can put those in reprap configuration tool somehow just in case I will forget about those changes and have them in JSON file?



  • @Torin
    if you had put the offset in the configurator, it would have generated correct positions to begin with.



  • I thought I did, I will double check that bit later and report my findings. Thanks!


Log in to reply