• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Bltouch offset resetting

Scheduled Pinned Locked Moved
Tuning and tweaking
2
8
719
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    Nightreaver
    last edited by Nightreaver 13 Jun 2021, 20:49

    Hello, ich recently upgraded from RRF2 to RRF 3.2.2RC2,

    I took my time to exchange all the commands and everything seem to be working well, almost.

    I have setup my z-probe to BLtouch via

    M558 P9 C"zprobe.in" F100 H11 R0.4 T250 A30 B1
    M950 S0 C"exp.heater7"
    G31 X2 Y57 Z1.95

    which works well, I guess

    To calibrate z (with my leadscrew adjustment) I have been using the M558 (old command)

    M558 P9 F750 H10 R0.3 T4000 A1 B1 ; Set single probing at faster feed rate

    to change the feed rate (to be faster is Z ist off a lot) and then change it back after initial first probing to get more accurate result.
    I have migrated the command accordingly to

    M558 P9 C"zprobe.in" F750 H10 R0.3 T4000 A1 B1 ; Set single probing at faster feed rate

    (F750 instead of F100 mainly)

    but I have noticed that whenever I do M558 to change feed rate, my G31 settings with offset etc are reset fully.

    Is there a new preferred way to just change feed rate for bltouch which doesn't reset G31, or do i have to set G31 again always after each M558? How can i avoid resetting that G31 ?

    Edit:

    I just tested the M558 F750:100 but that is pretty useless.

    ; homez.g
    ; called to home the Z axis
    ;
    G91 ; relative positioning
    M280 P0 S160 ; Alarm Release and Push-Pin UP
    G1 H2 Z5 F6000 ; lift Z relative to current position
    G90 ; absolute positioning
    G1 X162.3 Y115.7 F6000 ; Go to first bed probe point and home Z
    ;M558 P9 C"zprobe.in" F750:100 H10 R0.3 T4000 A1 B1 ; Set single probing at faster feed rate
    G30 ; Do a single probe to home our Z axis
    ;M558 P9 C"zprobe.in" F100 H5 R0.3 T4000 A15 B1 ; Set multi probing at slower feed rate
    G30 P0 X10 Y115.7 Z-99999 ; probe near a leadscrew, half way along Y axis
    G30 P1 X320 Y115.7 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
    G1 X162.3 Y105.7 F6000 ; go to first bed probe point and home Z
    G30 ; Probe again to get a more accurate position
    G1 H1 X0 ; home X axis
    G1 H1 Y0 ; home Y axis

    The F750:100 i kind of messed up
    It will cause the G30 probing to be at 750 when going down and 100 when going up for second probe, then down with 750 again for second probing then stay at 100 for the travel for leadscrew adjustment.
    I guess its resetting between 750 and 100 the wrong way

    1 Reply Last reply Reply Quote 0
    • undefined
      Phaedrux Moderator
      last edited by 13 Jun 2021, 21:41

      You can specify two feed rates in M558 now to do a fast then slow dive, but I don't know why your G31 offset would be reset. How are you confirming that it's reset? If you send G31 by itself it should reply with the current settings.

      Example:
      M558 F600:100

      Z-Bot CoreXY Build | Thingiverse Profile

      undefined 1 Reply Last reply 13 Jun 2021, 21:41 Reply Quote 0
      • undefined
        Nightreaver @Phaedrux
        last edited by Nightreaver 13 Jun 2021, 21:41

        @phaedrux just added to my OpenPost - it doesnt work (for me?!)
        Maybe it works, but hell... thats kind of useless... even X/Y travel speed is at 100 for Z probing

        1 Reply Last reply Reply Quote 0
        • undefined
          Phaedrux Moderator
          last edited by 13 Jun 2021, 21:43

          What firmware version are you using specifically? Check with M115

          From RRF 3.3beta2 you can provide two F parameters instead of one, where the second is lower than the first, for example F1000:500. When doing a plain G30 command, an additional probe will be done using the first speed to establish the approximate bed position, before one or more additional probes are done using the second speed. The first speed will not be used when probing at a defined point or when mesh bed probing.

          3.3 RC3 is currently available.

          Z-Bot CoreXY Build | Thingiverse Profile

          undefined 1 Reply Last reply 13 Jun 2021, 21:57 Reply Quote 0
          • undefined
            Nightreaver @Phaedrux
            last edited by 13 Jun 2021, 21:57

            @phaedrux I just updated to 3.3RC2 but it only fixed 1 issue.

            still persisting issues:

            • first probe lift is also at F100, instead of F750 as the probe move
            • why on earth is the travel speed for X/Y on a CoreXY at F100 when I use G30 P0/1 with coords ? Im traveling across a 330mm printbed at F100 - what a pleasure
              Shouldnt it only affect Z travel speeds?
            1 Reply Last reply Reply Quote 0
            • undefined
              Phaedrux Moderator
              last edited by 13 Jun 2021, 22:42

              Can you share your full set of files? Config.g, homeall.g, bed.g any other macros you're using.

              Z-Bot CoreXY Build | Thingiverse Profile

              undefined 1 Reply Last reply 16 Jun 2021, 10:58 Reply Quote 0
              • undefined
                Nightreaver @Phaedrux
                last edited by Nightreaver 16 Jun 2021, 10:58

                @phaedrux

                config.g

                ; Configuration file for Duet WiFi (firmware version 1.21)
                ; executed by the firmware on start-up
                ; General preferences
                G90 ; Send absolute coordinates...
                M83 ; ...but relative extruder moves
                M667 S1 ; Select CoreXY mode
                ; Network
                M550 P"Tronxy X5S" ; Set machine name
                M552 S1 ; Enable network
                M586 P0 S1 ; Enable HTTP
                M586 P1 S1 ; Enable FTP
                ;M586 P2 S1 ; Enable Telnet
                ; Drives
                M584 X0 Y1 Z2:3 E4 ; define driver per axis
                M671 x-90:420 Y0:0 S4 ; define axis position relative to the bed
                M569 P0 S1 ; Drive 0 goes forwards (X)
                M569 P1 S1 ; Drive 1 goes forwards (Y)
                M569 P2 S0 ; Drive 2 goes backwards (Z1)
                M569 P3 S0 ; Drive 3 goes backwards (Z2)
                M569 P4 S1 ; Drive 3 goes backwards (E)
                M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
                M92 X80.00 Y80.00 Z400.00 E406.16 ; Set steps per mm
                M98 P"/sys/motor_speeds.g" ; Set motor settings
                M84 S30 ; Set idle timeout
                ; Axis Limits
                M208 X0 Y0 Z0 S1 ; Set axis minima
                M208 X330 Y330 Z345 S0 ; Set axis maxima
                ; Endstops
                M574 X1 S1 P"!xstop" ; X min active high endstop switch
                M574 Y1 S1 P"!ystop" ; Y min active high endstop switch
                ; Z-Probe
                M574 Z1 ; Set endstops controlled by probe
                M558 P9 C"zprobe.in" F800:150 H6 R0.4 T250 A30 B1 ; Set Z probe type to bltouch and the dive height + speeds
                M950 S0 C"exp.heater7" ; assign GPIO port 7 (S0) to heater7 on expansion connector, servo mode
                G31 X2 Y57 Z2.155 ; Set Z probe trigger value, offset and trigger height
                M557 X30:300 Y60:270 P7:5 ; Define mesh grid
                ;;M557 X30:300 Y60:270 P7:7 ; Define mesh grid
                ; Heaters
                M308 S0 P"bedtemp" Y"thermistor" A"Heatbed" T100000 B4138 R4700 ; define bed temperature sensor
                M308 S1 P"e0temp" Y"thermistor" A"Extruder" T100000 B4138 R4700 ; define E0 temperature sensor
                M308 S2 Y"mcu-temp" A"MCU" ; define msu temperature sensor
                M950 H0 C"bedheat" T0 ; heater 0 uses the bedheat pin, T0 = sensor 0
                M950 H1 C"e0heat" T1 ; heater 1 uses the e0heat pin, T1 = sensor 1
                M140 H0 ; set heater H0 zu BedTemp M140 = Bed Temp
                M143 H0 S90 ; Set temperature limit for heater 0 to 90C
                M143 H1 S230 ; Set temperature limit for heater 1 to 230C
                ; Fans
                M950 F0 C"fan0" Q500
                M950 F1 C"fan1" Q500
                M106 P0 S0 H-1 ; Set fan 0 (), Thermostatic control is turned off
                M106 P1 S0 H1 T40 ; Set fan 1 () value, at Temp Sensor 1, Thermostatic control is turned on at 40 degree
                ;paneldue 5" V3
                M575 P1 S1 B57600
                ; Tools
                M563 P0 S"E0" D0 H1 ; Define ("create") 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
                ; Automatic power saving
                M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss
                ; Custom settings
                ; M915 X Y Z S10 R2 ; stall detection for axis motors
                ; Miscellaneous
                M501 ; Load saved parameters from non-volatile memory
                T0 ; Select first tool
                M200 D1.75 ; volumetric extrusion
                ;M572 D0 S0.1 ; pressure advance (0.65 for 600mm bowden?)
                ; trigger ATX power button / power on ATX
                M80
                M556 S70 X0.60 ; axis compensation
                ; homeall.g
                ; called to home all axes
                M98 P"/sys/homex.g" ;start homing x
                M98 P"/sys/homey.g" ;start homing y
                M98 P"/sys/homez.g" ;start homing z
                G1 H1 X0 ; return 0 X axis
                G1 H1 Y0 ; return 0 Y axis

                homex.g

                ; homex.g
                ; called to home the X axis
                G91 ; relative positioning
                G1 H2 Z5 F6000 ; lift Z relative to current position
                G1 H1 X-335 F3600 ; move quickly to X axis endstop and stop there (first pass)
                G1 X5 F6000 ; go back a few mm
                G1 H1 X-335 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
                G91 ; relative positioning
                G1 H2 Z5 F6000 ; lift Z relative to current position
                G1 H1 Y-335 F3600 ; move quickly to Y axis endstop and stop there (first pass)
                G1 Y5 F6000 ; go back a few mm
                G1 H1 Y-335 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
                G91 ; relative positioning
                M280 P0 S160 ; Alarm Release and Push-Pin UP
                G1 H2 Z5 F6000 ; lift Z relative to current position
                G90 ; absolute positioning
                G1 X162.3 Y115.7 F6000 ; Go to first bed probe point and home Z
                ;M558 P9 C"zprobe.in" F750:100 H10 R0.3 T4000 A1 B1 ; Set single probing at faster feed rate
                G30 ; Do a single probe to home our Z axis
                ;M558 P9 C"zprobe.in" F100 H5 R0.3 T4000 A15 B1 ; Set multi probing at slower feed rate
                G1 X10 Y108.7 F6000 ; go to the probe point before "probing" Y - 57 (offset)
                G30 P0 X10 Y165.7 Z-99999 ; probe near a leadscrew, half way along Y axis
                G1 X320 Y108.7 F6000 ; go to the probe point before "probing" , Y - 57 (offset)
                G30 P1 X320 Y165.7 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
                G1 X162.3 Y105.7 F6000 ; go to first bed probe point and home Z
                G30 ; Probe again to get a more accurate position
                G1 H1 X0 ; home X axis
                G1 H1 Y0 ; home Y axis
                ; bed.g
                ; called to perform automatic bed compensation via G32
                M98 P"/sys/motor_speeds.g" ; re-Set motor settings
                M561 ; clear any bed transform
                M280 P0 S160 ; Alarm Release and Push-Pin UP
                ; bed leveling takes some approaches to level "perfectly"
                G30 P0 X10 Y110 Z-99999 ; probe near a leadscrew, half way along Y axis
                G30 P1 X320 Y110 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
                ; go back near home before probing
                G1 H1 X20 ; return 0 X axis
                G1 H1 Y50 ; return 0 Y axis
                M558 T250 ; Set Z probe type to bltouch and the dive height + speeds
                ; probe the bed using mesh compensation
                G29 ; probe the bed and enable compensation
                M98 P"/sys/motor_speeds.g" ; re-Set motor settings
                ; motor-speeds.g
                M203 X30000.00 Y30000.00 Z1200.00 E3000.00 ; Set maximum speeds (mm/min)
                M201 X3000.00 Y3000.00 Z100.00 E250.00 ; Set accelerations (mm/s^2)
                M566 X900.00 Y900.00 Z12.00 E160.00 ; Set maximum instantaneous speed changes (mm/min) (Jerk)
                M906 X800.00 Y800.00 Z800.00 E800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent

                I added the "motor_speeds.g" to get rid of the issues I got with latest update ( from RRF V2 to V3.3 )

                undefined 1 Reply Last reply 16 Jun 2021, 17:41 Reply Quote 0
                • undefined
                  Phaedrux Moderator @Nightreaver
                  last edited by 16 Jun 2021, 17:41

                  @nightreaver said in Bltouch offset resetting:

                  G31 X2 Y57 Z2.155 ; Set Z probe trigger value, offset and trigger height

                  Your G31 is missing a trigger value (P). For BLTouch add P25.

                  You can also send G31 by itself at any time to get a read back of what the firmware has configured so you can check if it's actually getting reset somewhere or not.

                  https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_G31_Set_or_Report_Current_Probe_status

                  M558 T250 is a very slow travel speed between probe points. 2mm/s basically. T6000 would be more bearable.

                  Can you send M98 P"config.g" to check for any syntax errors?

                  At the start of your homez you may want to add M561 as well to make sure any compensation is removed before homing Z. This may be the cause of the issue you're seeing and not the offset actually being changed.

                  Z-Bot CoreXY Build | Thingiverse Profile

                  1 Reply Last reply Reply Quote 0
                  7 out of 8
                  • First post
                    7/8
                    Last post
                  Unless otherwise noted, all forum content is licensed under CC-BY-SA