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

    RRF3.2Beta4.1 Heightmap vs. Spindle/Driver Mapping

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    49
    2.5k
    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.
    • gringoundefined
      gringo
      last edited by

      Please check your M671 command.
      As I see, the Position of the Leadscrews does not match the Axis minima and maxima.
      You write your Leadscrews are 50mm outside the print bed, then they can't be at X0.

      M208 X0 Y0 Z0 S1
      M671 0:215:450 Y80:450:80 S5

      Frederikundefined 1 Reply Last reply Reply Quote 1
      • Frederikundefined
        Frederik @gringo
        last edited by Frederik

        @gringo i will change the value as soon as i am home and post the results.

        its a bit unclear whats the right settings:

        from the duet gcode dozuki:

        M671: Define positions of Z leadscrews or bed levelling screws
        Parameters

        Xnn:nn:nn... List of between 2 and 4 X coordinates of the leadscrews that drive the Z axis or the bed levelling screws
        Ynn:nn:nn... List of between 2 and 4 Y coordinates of the leadscrews that drive the Z axis or the bed levelling screws
        Snn Maximum correction to apply to each leadscrew in mm (optional, default 1.0)
        Pnnn Pitch of the bed levelling screws (not used when bed levelling using independently-driven leadscrews). Defaults to 0.5mm which is correct for M3 bed levelling screws.
        Fnn Fudge factor, default 1.0
        Order dependency

        M671 must come later in config.g than any M667 or M669 command.
        Example

        M671 X-15.0:100.0:215.0 Y220.0:-20.0:220.0 ; Z leadscrews are at (-15,220), (100,-20) and (215,220)

        but i cant find anything about the Fudge Factor ?

        Phaedruxundefined 1 Reply Last reply Reply Quote 0
        • gringoundefined
          gringo
          last edited by

          I have configured it like this:

          M671 X-132:148:428 Y-25:385:-55 S5 ;Leadscrew Position
          M208 X-88: 290 U0: 380 Y-25: 325 Z0: 270 ; Axis minima and maxima

          Frederikundefined 1 Reply Last reply Reply Quote 1
          • Phaedruxundefined
            Phaedrux Moderator @Frederik
            last edited by

            @Frederik said in RRF3.2Beta4.1 Heightmap vs. Spindle/Driver Mapping:

            but i cant find anything about the Fudge Factor ?

            It can be used to exaggerate the amount of correction in cases where it doesn't correct enough per pass.

            M558 R is a rest period after the probing move to allow the probe to settle. For the BLTouch R0.5 or so works well and causes it to rest for half a second before probing again.

            M671 defines the position of the lead screws
            The order must match the order of the motors defined in M584
            In bed.g you probe as close to the lead screws as you can in the same order as the lead screws are defined.

            Z-Bot CoreXY Build | Thingiverse Profile

            Frederikundefined 1 Reply Last reply Reply Quote 0
            • 3dMLundefined
              3dML
              last edited by

              @Frederik
              I have found that slowing down the maximum Z speed can help with tolerance. Try adding a M203 Z100 before any bed probing moves and M203 Z1000 after the bed probing is finished to restore the speed back to your config settings. You may be able to push the speed a little higher Z100.

              Once you have your setting dialed in correctly you can use a While loop to get a perfect bed level.

              while true
              	G30 P0 X40 Y80 Z-99999          ; Probe near the front left lead-screw
                      G30 P1 X215 Y395 Z-99999        ; Probe near the rear lead screw 
                      G30 P2 X415 Y80 Z-99999 S3      ; Probe near the front right lead-screw
              	M409 K"move.calibration.initial.deviation" F"f"
              	if move.calibration.initial.deviation <= 0.001 && move.calibration.initial.deviation >= -0.001
              		echo "Passed"
              		break
              	continue
              

              Please do not try this until you know your setting are correct as this code has no safety checks and will break parts if misconfigured. You can add safety checks if you wish.
              Also if your bed temp is not stable it will not pass these tolerances.

              Frederikundefined 1 Reply Last reply Reply Quote 0
              • Frederikundefined
                Frederik @gringo
                last edited by Frederik

                @gringo @Phaedrux @3dML

                Console output of 3 point Leveling:

                G32
                Leadscrew adjustments made: 0.810 0.762 0.377, points used 3, (mean, deviation) before (0.623, 0.151) after (-0.000, 0.000)
                Leadscrew adjustments made: 0.013 0.161 -0.115, points used 3, (mean, deviation) before (-0.012, 0.105) after (-0.000, 0.000)
                Height map loaded from file heightmap.csv
                

                after i edited the standard BLtouch Line to:
                ´´´
                H4 F60 T6000 A10 S0.005 B1 it got from around 0.xx1 values to 0.0xx values at the second round probing with F120 i never saw values like that. if i change the value S0.005 to 0.003 i got an Error Message: unconsistend Z Values.... i also tried to play sith the setscrew on top of the bltouch and generated makro Files for Selftest and Error Reset. after i send these 2 Makkros the sensor is working again without touching the cabling . so i think thats probably a setting /software issue.

                i try to make some photos for reference

                Head at Endstops = X0 Y0

                Nozzle Tip is at

                1 Reply Last reply Reply Quote 0
                • Frederikundefined
                  Frederik
                  last edited by

                  what a timing, the last Time i posted a question about trigger heigt Problems i ordered a few shottky diodes bat 43 -do35:

                  Bauform DO-35
                  Elektrische Werte
                  URRM 30 V
                  UF 0,33 V
                  IF(AV) 0,2 A
                  IFSM 4 A
                  IR 0,5 µA

                  I have an unsused inductive Probe here thats working witht 24 V .
                  could i connect it with that diode savely to an unused IOpin only for testing purposes , if there is a hardware error or other problem on the bltouch ?

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

                    For the BLtouch try this command

                    M558 P9 H4 F60 T6000 A10 B1 R0.5

                    Don't specify S at all, let it use the default.

                    Now if you do a test of G30 S-1 several times in a row, how consistent are the results?

                    Why do you think there is a problem with the BLTouch?

                    Error Message: unconsistend Z Values

                    That will happen if you use too tight a tolerance in S.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    Frederikundefined 2 Replies Last reply Reply Quote 0
                    • 3dMLundefined
                      3dML
                      last edited by

                      @Frederik
                      It looks like the second pass is better then the first.
                      If your setting are not prefect it may take several more rounds depending on the tolerance you want.

                      This is my output and it starts out much closer then your first attempt. I only have two Z motors instead of three hence only two probe points. As @Phaedrux said I also use the default S value and it works fine.

                      Leadscrew adjustments made: 0.005 0.005, points used 2, (mean, deviation) before (0.005, 0.000) after (-0.000, 0.000)
                      Leadscrew adjustments made: -0.007 0.016, points used 2, (mean, deviation) before (0.004, 0.004) after (0.000, 0.000)
                      Leadscrew adjustments made: -0.012 0.026, points used 2, (mean, deviation) before (0.006, 0.006) after (-0.000, 0.000)
                      Leadscrew adjustments made: -0.014 0.047, points used 2, (mean, deviation) before (0.015, 0.010) after (0.000, 0.000)
                      Leadscrew adjustments made: -0.080 0.095, points used 2, (mean, deviation) before (0.004, 0.029) after (-0.000, 0.000)
                      Leadscrew adjustments made: -0.098 0.245, points used 2, (mean, deviation) before (0.066, 0.056) after (0.000, 0.000)
                      
                      1 Reply Last reply Reply Quote 0
                      • Frederikundefined
                        Frederik @Phaedrux
                        last edited by Frederik

                        @Phaedrux I was reading on the antclabs web page that the v3. 1 is measuring within 0.005 mm and the results im getting are different every time I generate a Heightmap

                        Here are the pictures of my head and in green the position of my spindles and white the position of mgn15 rails to eliminate any z wobble

                        IMG_20201222_214450.jpg IMG_20201222_214522.jpg IMG_20201222_214657.jpg IMG_20201222_214857.jpg IMG_20201222_214936.jpg

                        Frederikundefined 1 Reply Last reply Reply Quote 0
                        • Frederikundefined
                          Frederik @Frederik
                          last edited by

                          IMG_20201222_214358.jpg

                          1 Reply Last reply Reply Quote 0
                          • 3dMLundefined
                            3dML
                            last edited by 3dML

                            @Frederik The different Heightmaps is because your Leadscrew deviation is not 0 before you generate the Heightmap.

                            Frederikundefined 1 Reply Last reply Reply Quote 0
                            • Frederikundefined
                              Frederik @Phaedrux
                              last edited by

                              @Phaedrux one moment. I probing single spots and checking the values before and after the z probe code change

                              1 Reply Last reply Reply Quote 0
                              • Frederikundefined
                                Frederik @3dML
                                last edited by

                                @3dML I delete the Heightmap and compensation bevor generating a new mesh.

                                Is that wrong?

                                And after startup only a g32 - 3 point level +loading of Heightmap.csv (bed.g)

                                1 Reply Last reply Reply Quote 0
                                • Frederikundefined
                                  Frederik @3dML
                                  last edited by

                                  @3dML the showed Heightmap was generated at room temperature. To have a baseline when starting test at different standard bed temperatures. Like 60, 90, 100 etc

                                  How Lo g would you give the bed before starting the measurements, so that the temp is as evenly as possible

                                  1 Reply Last reply Reply Quote 0
                                  • 3dMLundefined
                                    3dML
                                    last edited by 3dML

                                    If you run the 3point calibration multiple time it should return a smaller deviation each time hence the reason I use a while loop and an if statement to check the deviation value. It will continue to run until it passes the tolerance set by the if statement.

                                    You could put this code in a macro and run it multiple time to see how small you can get the deviation.

                                    G30 P0 X40 Y80 Z-99999          ; Probe near the front left lead-screw
                                    G30 P1 X215 Y395 Z-99999        ; Probe near the rear lead screw
                                    G30 P2 X415 Y80 Z-99999 S3      ; Probe near the front right lead-screw
                                    
                                    1 Reply Last reply Reply Quote 1
                                    • Frederikundefined
                                      Frederik
                                      last edited by

                                      @Phaedrux

                                      Changed bltouch config to H3 F60 T6000 A10 B1 R0.5

                                      IMG_20201222_223234.jpg

                                      1 Reply Last reply Reply Quote 0
                                      • 3dMLundefined
                                        3dML
                                        last edited by

                                        @Frederik said in RRF3.2Beta4.1 Heightmap vs. Spindle/Driver Mapping:

                                        And after startup only a g32 - 3 point level +loading of Heightmap.csv (bed.g)

                                        generate a Heightmap

                                        If you can do a 3point calibration the a deviation of 0 or as close as you can get it you should not have to generate a new Heightmap every time you do a 3point calibration.

                                        The time to temp all depends on your setup.

                                        I have a 750w heater that covers the entire 300mm bed with a temp sensor to control the heat in a slot cutout of the magnet for the flex sheet so very close to the top of the bed. I also have a temp sensor on the heater pad itself so once they both stabilize its good to go. If you are only measuring temp at the heater pad it will take a while for the top of the bed to reach an even temp unless the bed is very thin.

                                        @Frederik said in RRF3.2Beta4.1 Heightmap vs. Spindle/Driver Mapping:

                                        @Phaedrux

                                        Changed bltouch config to H3 F60 T6000 A10 B1 R0.5

                                        IMG_20201222_223234.jpg

                                        What was the max Z speed for this test? The last 4 readings look good. Too high of a Z speed can cause the shift between the second and third reading.

                                        Frederikundefined 1 Reply Last reply Reply Quote 0
                                        • Frederikundefined
                                          Frederik @3dML
                                          last edited by

                                          @3dML Z Probing speed F60 normal in the RRF config tool was F120

                                          1 Reply Last reply Reply Quote 0
                                          • 3dMLundefined
                                            3dML
                                            last edited by

                                            @Frederik said in RRF3.2Beta4.1 Heightmap vs. Spindle/Driver Mapping:

                                            @3dML Z Probing speed F60 normal in the RRF config tool was F120

                                            Yes that is used for Z- speed when probing but M203 sets the max speed which is used for Z+. Too high of max speed will cause higher deviations when probing but not enough to notice when printing.

                                            I have found that slowing down the maximum Z speed can help with tolerance. Try adding a M203 Z100 before any bed probing moves and M203 Z1000 after the bed probing is finished to restore the speed back to your config settings. You may be able to push the speed a little higher Z100.

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