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

    M48 Measure Z Probe repeatability and print to serial output.

    Scheduled Pinned Locked Moved
    Firmware wishlist
    12
    28
    6.2k
    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.
    • veng1undefined
      veng1
      last edited by

      The M48 without an X and Y location appears to simply move right to the end of travel.

      Could it be changed so that without X an Y, it probes at the current location?

      The intended use is:

      Probe_Corners.g
      ; Test repeatability at mesh bed compensation locations
      G1 X5 Y5
      M48
      G1 X300 Y5
      M48
      G1 X300 Y200
      M48
      G1 X5 Y200
      M48

      1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators
        last edited by

        M48 in RepRapFirmware does nothing, unless you have a file called M48.g in the /sys folder (in which case, it executes that macro).

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        joehsmashundefined 1 Reply Last reply Reply Quote 0
        • veng1undefined
          veng1
          last edited by

          @dc42 I understand that. The macro early in this thread that takes 10 measurements at the point X151 Y161 works fine in the /sys folder. However, if it is edited to remove the X and Y co-ordinates like:

          M291 P"Probe will be tested 10 times and return mean and standard deviation. Ok or Cancel?" R"WARNING" S3 ; User must click OK or cancel.
          G28
          G30 P0 Z-9999
          G30 P1 Z-9999
          G30 P2 Z-9999
          G30 P3 Z-9999
          G30 P4 Z-9999
          G30 P5 Z-9999
          G30 P6 Z-9999
          G30 P7 Z-9999
          G30 P8 Z-9999
          G30 P9 Z-9999 S-1

          it does not stay at the current position but moves in X. I believe it should just take 10 points at the current location without moving.

          1 Reply Last reply Reply Quote 1
          • joehsmashundefined
            joehsmash @dc42
            last edited by

            @dc42 sorry to bring up such an old thread, but im having trouble trying to get this IR sensor to work.

            ive got the macro saved, but where to do i view the SD from the probed points?

            dc42undefined 1 Reply Last reply Reply Quote 0
            • dc42undefined
              dc42 administrators @joehsmash
              last edited by

              @joehsmash said in M48 Measure Z Probe repeatability and print to serial output.:

              @dc42 sorry to bring up such an old thread, but im having trouble trying to get this IR sensor to work.

              ive got the macro saved, but where to do i view the SD from the probed points?

              The final G30 command (with the S-1 parameter) should display the mean and standard deviation.

              Duet WiFi hardware designer and firmware engineer
              Please do not ask me for Duet support via PM or email, use the forum
              http://www.escher3d.com, https://miscsolutions.wordpress.com

              1 Reply Last reply Reply Quote 0
              • BoAundefined
                BoA
                last edited by BoA

                Oh boy, this is some old thread. But... I actually tried G30 without X and Y parameters (G30 P0 Z-9999 - to be specific).
                What it does it moves head according to pobe offset and basically probes in Z. However... it does not move the head back to original position. As soon as You give the X and Y this is not a problem, but probing current location few times basically requires explicitly moving head to the original position using relative move with X and Y set to Z probe offset after each G30. Is that intended behavior of G30?

                1 Reply Last reply Reply Quote 0
                • Phaedruxundefined
                  Phaedrux Moderator
                  last edited by

                  @BoA said in M48 Measure Z Probe repeatability and print to serial output.:

                  Is that intended behavior of G30?

                  That's normally how it's used in homeall. You position the probe manually with a G1 XY command to place the probe where you want, and then send G30 by itself to probe the bed, then you manually position the head where you want it with another G1 XYZ move.

                  Z-Bot CoreXY Build | Thingiverse Profile

                  BoAundefined 1 Reply Last reply Reply Quote 0
                  • BoAundefined
                    BoA @Phaedrux
                    last edited by

                    @Phaedrux Yes. G30 without ANY parameter works fine, but as soon You use it like that: G30 P0 Z-9999 it move the head according to z probe offset.

                    Phaedruxundefined 1 Reply Last reply Reply Quote 0
                    • Phaedruxundefined
                      Phaedrux Moderator @BoA
                      last edited by

                      @BoA https://duet3d.dozuki.com/Wiki/Gcode#Section_G30_Single_Z_Probe

                      Using the P parameter implies providing an X Y coordinate.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      BoAundefined 1 Reply Last reply Reply Quote 0
                      • BoAundefined
                        BoA @Phaedrux
                        last edited by

                        @Phaedrux So shoudn't it return an error if X and Y are not given?

                        Phaedruxundefined 1 Reply Last reply Reply Quote 0
                        • Phaedruxundefined
                          Phaedrux Moderator @BoA
                          last edited by

                          @BoA I'll check.

                          Z-Bot CoreXY Build | Thingiverse Profile

                          BoAundefined 1 Reply Last reply Reply Quote 0
                          • BoAundefined
                            BoA @Phaedrux
                            last edited by

                            @Phaedrux Also... executing this G30 Px sequence causes printhead going outside of XY limits (which is understandable, as it allows to probe outside of bed area).

                            Phaedruxundefined 1 Reply Last reply Reply Quote 0
                            • Phaedruxundefined
                              Phaedrux Moderator @BoA
                              last edited by

                              @BoA Yes that is mentioned too.

                              Caution: the XY coordinates are permitted to be outside the normal printable bed area! This is intentional, because some printers (e.g. delta printers) benefit from probing areas not used for printing.

                              Z-Bot CoreXY Build | Thingiverse Profile

                              BoAundefined 1 Reply Last reply Reply Quote 0
                              • BoAundefined
                                BoA @Phaedrux
                                last edited by

                                @Phaedrux That is true, and it is acceptable and even desired, but ONLY if you specify X and Y. And probing "current location" by G30 P0 Z-9999 should not lead to "brrr-brrr-brrr" noise from steppers 🙂

                                But perhaps this is just my opinion.

                                1 Reply Last reply Reply Quote 0
                                • Leavundefined
                                  Leav
                                  last edited by Leav

                                  This is similar enough that I don't think it warrants its own thread.

                                  Is there a way to use multiple probes per point and use the average of those measurement as the Z height for that point.

                                  The script above gives me pretty good deviation (±0.005mm, and it's consistant enough that I imagine this is a actually the stepper resolution), but I still feel like double or triple probing would be a better practice.

                                  Is there a way to do this today? do you think it's worth implementing?

                                  BoAundefined fcwiltundefined 2 Replies Last reply Reply Quote 0
                                  • BoAundefined
                                    BoA @Leav
                                    last edited by BoA

                                    @Leav When You define z probe with M558 there are params:

                                    Snnn Tolerance when probing multiple times, default 0.03mm

                                    and

                                    Annn Maximum number of times to probe each point, default 1.

                                    This probes until results are within defined tolerance.

                                    Not sure if this does averaging measurements tho

                                    Leavundefined 1 Reply Last reply Reply Quote 1
                                    • Leavundefined
                                      Leav @BoA
                                      last edited by Leav

                                      @BoA

                                      Thanks! (link to g-code reference page)

                                      The A and S parameters control multiple probing. Probing is repeated until two consecutive probe attempts produce results that differ by no more than the S parameter; then the average of those two results is used. However, if the number of attempts specified by the A parameter is reached without getting two consecutive results within tolerance of each other, no further probe attempts are made and the average result of all the attempts is used.

                                      Looks like I could manipulate this to do exactly what I wanted! (1 femtometer repeatability goal, here I come!)

                                      1 Reply Last reply Reply Quote 0
                                      • fcwiltundefined
                                        fcwilt @Leav
                                        last edited by

                                        @Leav said in M48 Measure Z Probe repeatability and print to serial output.:

                                        Is there a way to use multiple probes per point and use the average of those measurement as the Z height for that point.

                                        Using a S parameter of -1 results in averaging the number of readings specified by the A parameter.

                                        Frederick

                                        Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                                        1 Reply Last reply Reply Quote 1
                                        • ignacmcundefined
                                          ignacmc @dc42
                                          last edited by

                                          @dc42 If I use the macro:

                                          M291 P"Probe will be tested 10 times and return mean and standard deviation. Ok or Cancel?" R"WARNING" S3 ; User must click OK or cancel.
                                          G28
                                          M401
                                          G30 P0 X151 Y161 Z-9999
                                          G30 P1 X151 Y161 Z-9999
                                          G30 P2 X151 Y161 Z-9999
                                          G30 P3 X151 Y161 Z-9999
                                          G30 P4 X151 Y161 Z-9999
                                          G30 P5 X151 Y161 Z-9999
                                          G30 P6 X151 Y161 Z-9999
                                          G30 P7 X151 Y161 Z-9999
                                          G30 P8 X151 Y161 Z-9999
                                          G30 P9 X151 Y161 Z-9999 S-1
                                          M402

                                          It probes on the center of the bed X=0, Y=0 (I am using a Delta). Shouldn't it probe on X=151, Y=161????

                                          Predator with Duet3 Mini 5+, Smarteffector v4 and LGX Lite Extruder

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