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

    Mesh Compensation

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    5
    38
    1.4k
    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.
    • Corexyundefined
      Corexy
      last edited by Corexy

      That start script in the slicer was setup with some advice here back in the day. If it's no good I'll change it.

      My probe offset is set and checked pretty carefully. It's always been consistent and reliable, but I've just fitted a new hot end that required me to adjust the mount to get the bottom of the IR sensor board close to 1.5mm above the tip of the nozzle.

      Here we go:

      ([url=https://imgur.com/lhDZMzc][img]http://i.imgur.com/lhDZMzc.png[/img][/url]
      )
      ; Configuration file for Duet WiFi
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool on Sat Oct 22 2016 18:28:19 GMT+1100 (AUS Eastern Daylight Time)

      ; General preferences

      G90 ; Send absolute coordinates...
      M83 ; ...but relative extruder moves

      ; Network
      M550 P"Zortrax M200" ; Set machine name
      M552 S1 ; Enable network and acquire dynamic address via DHCP

      ; Drives
      M584 X0 Y1 Z2 E3 ; Set drive mapping
      M569 P0 S1 ; Drive 0 goes forwards
      M569 P1 S1 ; Drive 1 goes forwards
      M569 P2 S0 ; Drive 2 goes backwards
      M569 P3 S1 ; Drive 3 goes forwards
      M350 X16 Y16 Z16 E16 I1 ; Configure microstepping without interpolation
      M92 X80 Y80 Z800 E118 ; Set steps per mm
      M566 X1600 Y1600 Z12 E800 ; Set maximum instantaneous speed changes (mm/min)
      M203 X18000 Y18000 Z1200 E8000 ; Set maximum speeds (mm/min)
      M201 X1200 Y1200 Z20 E1200 ; Set accelerations (mm/s^2)
      M906 X1100 Y1100 Z800 E500 I30 ; Set motor currents (mA) and motor idle factor in per cent
      M84 S30 ; Set idle timeout

      ; Endstops
      M574 Z0 S0 ; Define active low and unused microswitches
      M574 X1 Y1 S1 ; Define active high microswitches
      M208 X0 Y0 Z0 S1 ; Set axis minima
      M208 X195 Y195 Z175 S0 ; Set axis maxima

      ; Z-Probe
      M558 P1 X0 Y0 Z1 H5 F600 T6000 ; Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds
      G31 P500 X0 Y0 Z2.465 ; Set Z probe trigger value, offset and trigger height
      M557 X20:180 Y20:180 S40

      ; Heaters
      M143 S280 ; Set maximum extruder temperature to 280C
      M143 H0 S140 ; Set maximum bed temperature to 140C
      M305 P0 T100000 B4000 C0 R4700 L0 H0 ; Set thermistor + ADC parameters for heater 0
      M305 P1 X200 ; Set thermistor + ADC parameters for heater 1 and remap it to channel 200
      M307 H0 A144.9 C625.3 D1.0 B0
      M307 H1 A892.1 C396.5 D6.4 V24.3 B0

      ; Tools
      M563 P0 D0 H1 ; Define tool 0
      G10 P0 X0 Y0 ; Set tool 0 axis offsets
      G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
      T0

      ; Fans
      M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
      M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
      M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

      ; Custom settings are not configured

      Vetiundefined 1 Reply Last reply Reply Quote 0
      • Vetiundefined
        Veti @Corexy
        last edited by

        @Corexy said in Mesh Compensation:

        M558 P1 X0 Y0 Z1 H5 F600 T6000 ; Set Z probe type to unmodulated, the axes for which it is used and the probe + travel speeds
        M557 X20:180 Y20:180 S40

        depending on your bed S40 is to large to be effective.

        if you dont have a probe? how do you do mesh calibration? manually?

        1 Reply Last reply Reply Quote 0
        • Corexyundefined
          Corexy
          last edited by

          I have the mini IR probe.

          My bed is 195x195 square build area (the actual plate is 240x240 but it can't all be reached).

          Mate I don't even know what S40 means, so if you don't mind telling me what you'd put in your bed.g, config.g and start script, I'll take your word for it and appreciate your help.

          Cheers again,

          Neil.

          1 Reply Last reply Reply Quote 0
          • Vetiundefined
            Veti
            last edited by Veti

            @Corexy said in Mesh Compensation:

            G31 P500 X0 Y0

            ok you need to configure the probe position.

            X and Y is the offset of the probe from the nozzle. X postive is to the your Y positive is behing. Without this your mesh will be inaccurate.

            M557 X20:180 Y20:180 S40

            change S40 to S15 or S10

            M574 Z0 S0 ; Define active low and unused microswitches

            change to
            M574 Z1 S2 ; set endstops controlled by probe

            post your homing scripts. they will prob be wrong.

            1 Reply Last reply Reply Quote 1
            • Corexyundefined
              Corexy
              last edited by

              I should point out that x and y have homing switches...the probe only does the bed level.

              Does that change anything?

              Thanks for helping with this. What's crazy is that despite me using this thing for years with little tuning/adjustment, I knock out some pretty good prints.

              Vetiundefined 1 Reply Last reply Reply Quote 0
              • Vetiundefined
                Veti @Corexy
                last edited by

                @Corexy said in Mesh Compensation:

                I should point out that x and y have homing switches...the probe only does the bed level.
                Does that change anything?

                no

                1 Reply Last reply Reply Quote 0
                • Corexyundefined
                  Corexy
                  last edited by Corexy

                  OK,

                  So my nozzle/probe offsets are:

                  X 4mm
                  Y 28mm

                  So my M557 becomes:

                  M557 X4:195 Y28:195 S10 (?)

                  Just a bit worried that the fans might bang into some hardware with these offsets. It's a tight fit in there.

                  My slicer start script:

                  G28 (home all?)
                  G29 (mesh probe?)

                  Nothing else at all? I should really tack the purge/wipe I was asking about in my other thread on here while I'm at it?

                  Any changes to bed.g?

                  Homing files...

                  homeall.g:

                  ; homeall.g
                  ; called to home all axes
                  ;
                  ; generated by RepRapFirmware Configuration Tool v2.1.2 on Thu Nov 21 2019 10:53:58 GMT+1100 (Australian Eastern Daylight Time)
                  G91 ; relative positioning
                  G1 H2 Z5 F6000 ; lift Z relative to current position
                  G1 H1 X-200 Y-200 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
                  G1 H2 X5 Y5 F6000 ; go back a few mm
                  G1 H1 X-200 Y-200 F360 ; move slowly to X and Y axis endstops once more (second pass)
                  G90 ; absolute positioning
                  G1 H2 X97.5 Y97.5 F6000 ; go to first bed probe point and home Z
                  G30 ; home Z by probing the bed

                  ; Uncomment the following lines to lift Z after probing
                  G91 ; relative positioning
                  G1 S2 Z5 F100 ; lift Z relative to current position
                  G90 ; absolute positioning

                  homex.g:

                  ; homex.g
                  ; called to home the X axis
                  ;
                  ; generated by RepRapFirmware Configuration Tool v2.1.2 on Thu Nov 21 2019 10:53:59 GMT+1100 (Australian Eastern Daylight Time)
                  G91 ; relative positioning
                  G1 H2 Z5 F6000 ; lift Z relative to current position
                  G1 H1 X-200 F1800 ; move quickly to X axis endstop and stop there (first pass)
                  G1 H2 X5 F6000 ; go back a few mm
                  G1 H1 X-200 F360 ; move slowly to X axis endstop once more (second pass)
                  G1 H2 Z-5 F6000 ; lower Z again
                  G90 ; absolute positioning

                  homey.g:

                  ; homey.g
                  ; called to home the Y axis
                  ;
                  ; generated by RepRapFirmware Configuration Tool v2.1.2 on Thu Nov 21 2019 10:53:59 GMT+1100 (Australian Eastern Daylight Time)
                  G91 ; relative positioning
                  G1 H2 Z5 F6000 ; lift Z relative to current position
                  G1 H1 Y-200 F1800 ; move quickly to Y axis endstop and stop there (first pass)
                  G1 H2 Y5 F6000 ; go back a few mm
                  G1 H1 Y-200 F360 ; move slowly to Y axis endstop once more (second pass)
                  G1 H2 Z-5 F6000 ; lower Z again
                  G90 ; absolute positioning

                  homez.g:

                  ; homez.g
                  ; called to home the Z axis
                  ;
                  ; generated by RepRapFirmware Configuration Tool v2.1.2 on Thu Nov 21 2019 10:53:59 GMT+1100 (Australian Eastern Daylight Time)
                  G91 ; relative positioning
                  G1 H2 Z5 F6000 ; lift Z relative to current position
                  G90 ; absolute positioning
                  G1 H2 X15 Y15 F6000 ; go to first probe point
                  G30 ; home Z by probing the bed

                  ; Uncomment the following lines to lift Z after probing
                  ;G91 ; relative positioning
                  ;G1 H2 Z5 F100 ; lift Z relative to current position
                  ;G90 ; absolute positioning

                  I do suspect my files are messy. I come on here asking things and get a line to add here and there. Would really love to have an expert here with me in front of the thing for a day...

                  Vetiundefined 1 Reply Last reply Reply Quote 0
                  • Vetiundefined
                    Veti @Corexy
                    last edited by

                    @Corexy said in Mesh Compensation:

                    M557 X4:195 Y28:195 S10 (?)

                    no you change the probe offset in the G31 command like i posted.

                    Nothing else at all? I should really tack the purge/wipe I was asking about in my other thread on here while I'm at it?

                    lets get your mesh working first.

                    Any changes to bed.g?

                    bed.g is for G32 command which you are not using.

                    your homing files look fine

                    Corexyundefined 1 Reply Last reply Reply Quote 0
                    • Corexyundefined
                      Corexy @Veti
                      last edited by Corexy

                      Ok, sorry my mistake

                      X and Y is the offset of the probe from the nozzle. X postive is to the your Y positive is behind. Without this your mesh will be inaccurate.

                      Not quite sure what you mean here...you mean that I enter a positive value offset if the probe is further "along" the axis than the nozzle tip, and negative if it is "behind"?

                      Thank you for your patience by the way.

                      1 Reply Last reply Reply Quote 0
                      • Vetiundefined
                        Veti
                        last edited by

                        that was posted regarding your
                        G31 P500 X0 Y0
                        command.

                        that command means the probe is at the same place as the nozzle is, which it is not as you are using a ir probe.

                        so you need to tell the duet where the ir senssor actualy is while assuming that the nozzle is at 0,0.

                        post a picture of your carriage.

                        Corexyundefined 1 Reply Last reply Reply Quote 0
                        • Corexyundefined
                          Corexy @Veti
                          last edited by

                          @Veti said in Mesh Compensation:

                          that was posted regarding your
                          G31 P500 X0 Y0
                          command.

                          that command means the probe is at the same place as the nozzle is, which it is not as you are using a ir probe.

                          so you need to tell the duet where the ir senssor actualy is while assuming that the nozzle is at 0,0.

                          post a picture of your carriage.

                          OK, so I just went out there and moved the nozzle around the absolute outside of the build area via the touchscreen, and the nozzle travels the absolute limits of the build area and obstacles as it is. If I add these offsets is there any chance I'll bump into things, or should I do something to avoid that.

                          [img]https://i.imgur.com/kCMHC1Q.jpg[/img]

                          [img]https://i.imgur.com/bC9SaMB.jpg[/img]

                          Vetiundefined 1 Reply Last reply Reply Quote 0
                          • Vetiundefined
                            Veti @Corexy
                            last edited by

                            @Corexy

                            try it with the hand on the power switch.

                            but if i remember correctly the offset does not change the mesh coordinates, as they are absolute nozzle parameter.

                            Vetiundefined 1 Reply Last reply Reply Quote 0
                            • Vetiundefined
                              Veti @Veti
                              last edited by

                              @Veti

                              also
                              M208 X0 Y0 Z0 S1 ; Set axis minima
                              M208 X195 Y195 Z175 S0 ; Set axis maxima

                              this is a hard limit for your axis. if at X195 Y195 there is no problem. then you can not cause a problem with the mesh leveling.

                              1 Reply Last reply Reply Quote 0
                              • Corexyundefined
                                Corexy
                                last edited by

                                Yes, I'll keep the switch handy ha ha. But It still must home the axis' against the limit switches, so yes no offset was probably only messing up my mesh.

                                G31 P500 X2 Y28 Z2.465

                                I measured it a bit more accurately. So I run G29 and see what happens??

                                Vetiundefined 1 Reply Last reply Reply Quote 0
                                • Vetiundefined
                                  Veti @Corexy
                                  last edited by

                                  @Corexy
                                  yes

                                  1 Reply Last reply Reply Quote 0
                                  • Corexyundefined
                                    Corexy
                                    last edited by Corexy

                                    M557 X20:180 Y20:180 S10

                                    Ok, it's ticking over happily with the mesh (cold build plate), but it's going to take a lot longer with these 10mm intervals. Which is fine if it will give me a better first layer.

                                    To probe the entire (195x195) bed, should I take it out to the edges?

                                    M557 X5:190 Y5:190 S10

                                    And I'm also thinking should I:

                                    1. Warm build plate
                                    2. Home all
                                    3. Mesh probe (each time, as different bed temps will make different mesh)
                                    4. Purge/wipe
                                    5. Start print

                                    It would be really good to do the mesh probe with a cold nozzle as the ooze is a pain and I'm using an IR probe anyway. I don't mind at all the mesh taking a long time if I'm not picking ooze off the nozzle with tweezers the whole time.

                                    Vetiundefined 1 Reply Last reply Reply Quote 0
                                    • Vetiundefined
                                      Veti @Corexy
                                      last edited by

                                      @Corexy said in Mesh Compensation:

                                      Ok, it's ticking over happily with the mesh (cold build plate), but it's going to take a lot longer with these 10mm intervals. Which is fine if it will give me a better first layer.
                                      To probe the entire (195x195) bed, should I take it out to the edges?
                                      M557 X5:190 Y5:190 S10

                                      post the picture of the mesh grid.

                                      going to a higher spacing depends on the quality of your build plate. the wider the spacing the less details it has to correct with.
                                      so if there are no irregulaties, you can get away with a wider spacing.

                                      with the bigger mesh: if your Y offset is 28 to probe at 5 it would need to move to Y-23, which is not allowed. for X it would work

                                      1 Reply Last reply Reply Quote 0
                                      • Corexyundefined
                                        Corexy
                                        last edited by Corexy

                                        Yes, I can't "reclaim" the Y offset...mechanical obstacles. Makes a case for ally extrusion chassis in my next printer, built well oversize to the build plate.

                                        Running this now regardless, and it seems to be just doing what it can reach.

                                        M557 X5:190 Y5:190 S10

                                        Mate I really appreciate this help so much, but it's late now and the other half wants me to give it a rest for tonight.

                                        I'll have another look in the morning, but this has been a win so far.

                                        Cheers and thanks!

                                        [img]https://i.imgur.com/3hQysIH.png[/img]

                                        1 Reply Last reply Reply Quote 0
                                        • Vetiundefined
                                          Veti
                                          last edited by

                                          that picture suggests that the surface is not suited very well for ir probing.

                                          see
                                          https://miscsolutions.wordpress.com/mini-height-sensor-board/

                                          1 Reply Last reply Reply Quote 0
                                          • Corexyundefined
                                            Corexy
                                            last edited by

                                            OK, really?

                                            It's the original Printbite, supposedly OK. It does give very consistent readings when calibrating the Z height.

                                            I have wondered about those BL touch probes, are they better?

                                            I would really like to keep the Printbite, just because I don't have to replace it. That surface is 3 years old and going strong.

                                            Are there any other surfaces that are similar out there that do work well with IR? I have really liked this probe to be honest, but the Printbite has been tricky with ABS.

                                            I'll see how it performs with this new mesh tomorrow.

                                            @dc42 @deckingman

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