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

    Double checking settings before I install my Duet Wifi + Duex

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    30
    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.
    • iamthebest22undefined
      iamthebest22
      last edited by

      Hi everyone! I finally have time now (Spring Break) to try and fix my big HEVO which has z wobble on one side above 650mm print height, I'm changing couplers to high quality jaw/plum couplers, and will try out oldham couplers if it comes to that (still on the way).

      Anyways, my question is I'm going to replace the FYSETC F6 board with the Duet Wifi + Duex 5, and my machine has 3 motors/lead screws, I'm wondering if I have the correct settings done; here's what I need:
      Using firmware 2.0 (RTOS)
      probing a grid of 6 x 6 (it's a big 500 x 500 bed) when G32
      Using a Piezo Orion z probe
      independent z motor leveling for 3 motor/lead screws
      Core XY

      I've attached the system directory files here in case no one wants to read all this on a forum, here is the file: https://www.dropbox.com/s/5012b2lo8zesm7b/download(1).zip?dl=0

      but below are for each, hopefully that's okay. Thank you very much for the help!
      ; bed.g
      ; called to perform automatic bed compensation via G32
      ;
      ; generated by RepRapFirmware Configuration Tool v2 on Fri Jan 04 2019 20:50:30 GMT-0800 (Pacific Standard Time)
      M561 ; clear any bed transform
      G28 ; Home all axis
      G29 ; probe the bed and enable compensation and save height map to file
      G29 S1 ; Load height map from file

      FOR config.g:
      G90 ; Send absolute coordinates...
      M83 ; ...but relative extruder moves

      M667 S1 ; Select CoreXY mode
      ; Drives
      M569 P0 S1 ; Drive 0 goes forwards
      M569 P1 S1 ; Drive 1 goes forwards
      M569 P2 S1 ; Drive 2 goes forwards
      M569 P3 S1 ; Drive 3 goes forwards
      M584 X0 Y1 Z2:5:6 ; three Z motors connected to driver outputs 2, 5 and 6
      M671 X10:505:505 Y250:118:382 S0.5 ; leadscrews at middle left, front right and rear right
      M350 Z4 I0 ; Configure microstepping without interpolation
      M350 X16 Y16 E16 I1 ; Configure microstepping with interpolation
      M92 X78.00 Y78.00 Z1505.00 E2700.00 ; Set steps per mm
      M566 X900.00 Y900.00 Z30.00 E120.00 ; Set maximum instantaneous speed changes (mm/min)
      M203 X11400.00 Y6000.00 Z180.00 E1200.00 ; Set maximum speeds (mm/min)
      M201 X500.00 Y500.00 Z20.00 E250.00 ; Set accelerations (mm/s^2)
      M906 X1700.00 Y1700.00 Z1900.00 E1710.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
      M84 S60 ; Set idle timeout

      ; Axis Limits
      M208 X0 Y0 Z0 S1 ; Set axis minima
      M208 X500 Y500 Z800 S0 ; Set axis maxima

      ; Endstops
      M574 X2 Y2 S1 ; Set active high endstops

      ; Precision PIEZO Orion
      M574 Z1 S2
      M558 P5 I1 R0.4 F420 X0 Y0 Z0 H5
      G31 X0 Y0 Z-0.18 P100

      ; Z-Probe
      ;M574 Z1 S2 ; Set endstops controlled by probe
      ;M558 P5 R0.4 H5 F1200 T6000 ; Set Z probe type to effector and the dive height + speeds
      ;G31 P500 X0 Y0 Z0.06 ; Set Z probe trigger value, offset and trigger height

      M557 X12:490 Y12:490 S95.6 ; Define mesh grid probe from x=12 to 490, Y=12 to 490 with a mesh spacing of 20mm

      ; Heaters
      M305 P0 T100000 B4700 R4700 ; Set thermistor + ADC parameters for heater 0
      M143 H0 S120 ; Set temperature limit for heater 0 to 120C
      M305 P1 T100000 B4700 R4700 ; Set thermistor + ADC parameters for heater 1
      M143 H1 S280 ; Set temperature limit for heater 1 to 280C

      ; 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 T49 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on

      ; Tools
      M563 P0 D0 H1 ; 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

      ; Automatic saving after power loss is not enabled

      ; Custom settings are not configured

      For homeall.g

      ; homeall.g
      ; called to home all axes
      ;
      ; generated by RepRapFirmware Configuration Tool v2 on Fri Jan 04 2019 20:50:31 GMT-0800 (Pacific Standard Time)
      G91 ; relative positioning
      G1 Z5 F6000 S2 ; lift Z relative to current position
      G1 S1 X-505 Y-505 F1800 ; move quickly to X or Y endstop and stop there (first pass)
      G1 S1 X-505 ; home X axis
      G1 S1 Y-505 ; home Y axis
      G1 X5 Y5 F6000 ; go back a few mm
      G1 S1 X-505 F360 ; move slowly to X axis endstop once more (second pass)
      G1 S1 Y-505 F360 ; then move slowly to Y axis endstop
      G90 ; absolute positioning
      G1 X250 Y250 F6000 ; go to middle of the bed 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

      for home X.g:

      ; homex.g
      ; called to home the X axis
      ;
      ; generated by RepRapFirmware Configuration Tool v2 on Fri Jan 04 2019 20:50:31 GMT-0800 (Pacific Standard Time)
      G91 ; relative positioning
      G1 Z5 F6000 S2 ; lift Z relative to current position
      G1 S1 X-505 F1800 ; move quickly to X axis endstop and stop there (first pass)
      G1 X5 F6000 ; go back a few mm
      G1 S1 X-505 F360 ; move slowly to X axis endstop once more (second pass)
      G1 Z-3 F6000 S2 ; lower Z again
      G90 ; absolute positioning

      For Home Y.g:
      ; homey.g
      ; called to home the Y axis
      ;
      ; generated by RepRapFirmware Configuration Tool v2 on Fri Jan 04 2019 20:50:31 GMT-0800 (Pacific Standard Time)
      G91 ; relative positioning
      G1 Z5 F6000 S2 ; lift Z relative to current position
      G1 S1 Y-505 F1800 ; move quickly to Y axis endstop and stop there (first pass)
      G1 Y5 F6000 ; go back a few mm
      G1 S1 Y-505 F360 ; move slowly to Y axis endstop once more (second pass)
      G1 Z-3 F6000 S2 ; lower Z again
      G90 ; absolute positioning

      and last but not least, homez.g:
      ; homez.g
      ; called to home the Z axis
      ;
      ; generated by RepRapFirmware Configuration Tool v2 on Fri Jan 04 2019 20:50:31 GMT-0800 (Pacific Standard Time)
      G91 ; relative positioning
      G1 Z5 F6000 S2 ; lift Z relative to current position
      G90 ; absolute positioning
      G1 X250 Y250 F6000 ; go to middle of the bed
      G30 ; home Z by probing the bed
      G1 Z5 F6000 S2 ; lift Z relative to current position

      ; 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

      deckingmanundefined 1 Reply Last reply Reply Quote 0
      • deckingmanundefined
        deckingman @iamthebest22
        last edited by

        @iamthebest22 At a quick glance, there area few things that leap out at me.

        M584 X0 Y1 Z2:5:6. You haven't shown the mapping for the "E" motor. By default it would be drive 3 and you haven't re-purposed that drive so it should be OK. But if it was me, I would explicitly define it by adding "E3" to that M584 command.

        M569 - you haven't specified drive directions for motors 5 and 6. The default is S1 which is the same as what you have specified for drive 2 but again, I would explicitly define it (then if you need to change the direction for drive 2, it will act to remind you to change drives 5 and 6 as well).

        What extruder are you using? The steps per mm seem very high. Something like an E3D Titan or Bondtech with 3:1 gearing use around 400 with a 1.8 degree motor or 800 with a 0.9 degree motor (at 16X). Yours is set to 2700 which would indicate very high gearing. I can't comment on your other steps per mm but I'm guessing you are using imperial belts and lead screws yes?

        Is there a reason why you you have chosen 4X micro-stepping for the Z axis?

        M671 X10:505:505 Y250:118:382 S0.5. I'm not best place to comment on this as I don't need or use any form of bed levelling but you've defined the axis max as being 500 x 500 so the 505 position looks odd to me.

        If you are going to use config-overide.g, then you'll need to add M501 to the end of config.g.

        That's all I can see at a glance.

        HTH

        Ian
        https://somei3deas.wordpress.com/
        https://www.youtube.com/@deckingman

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

          @deckingman said in Double checking settings before I install my Duet Wifi + Duex:

          M584 X0 Y1 Z2:5:6. You haven't shown the mapping for the "E" motor. By default it would be drive 3 and you haven't re-purposed that drive so it should be OK. But if it was me, I would explicitly define it by adding "E3" to that M584 command.

          @iamthebest22, you should definitely do as @deckingman suggests there, otherwise changes to extruder current may affect the current in the additional Z motors too.

          M671 X10:505:505 Y250:118:382 S0.5. I'm not best place to comment on this as I don't need or use any form of bed levelling but you've defined the axis max as being 500 x 500 so the 505 position looks odd to me.

          The M671 coordinates are those of the leadscrews, so it's usual for them to be outside the bed. This means it is the 10 that is odd, not the 505.

          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

          deckingmanundefined 1 Reply Last reply Reply Quote 0
          • deckingmanundefined
            deckingman @dc42
            last edited by

            @dc42 said in Double checking settings before I install my Duet Wifi + Duex:

            The M671 coordinates are those of the leadscrews, so it's usual for them to be outside the bed. This means it is the 10 that is odd, not the 505.

            For some reason, I kind of assumed it was levelling screws, which could be inboard of the bed edge. But then, if he is using 3 motors then it would make more sense to use the lead screws for automatic bed levelling.

            So, in that case, they all look a bit odd to me as it would mean that the centre of the "505 ones" is only 5mm from the edge of the bed. Just about doable with an 8mm diameter screw and 1mm of clearance but a 10mm diameter one will foul.

            Ian
            https://somei3deas.wordpress.com/
            https://www.youtube.com/@deckingman

            1 Reply Last reply Reply Quote 0
            • iamthebest22undefined
              iamthebest22
              last edited by iamthebest22

              Thanks deckingman and dc42! Ohhh okay so for the lead screw position they should be bigger than the bed size itself okay.

              I'm using the Zesty Nimble, which is a 30:1 ratio, hence why it's so high.

              I'm using 4x micro for Z because I'm using T8 x 2 lead screws, which means with a 1.8 degree, each turn is only doing 0.01mm already, so 4x would mean 0.0025mm per turn. Any more and I'll lose unnn power can't remember what it's called hold weight something?

              Here's my new one:

              ; Drives
              M569 P0 S1 ; Drive 0 goes forwards
              M569 P1 S1 ; Drive 1 goes forwards
              M569 P2 S1 ; Drive 2 goes forwards
              M569 P3 S1 ; Drive 3 goes forwards
              M569 P5 S1 ; Drive 5 goes forwards
              M569 P6 S1 ; Drive 6 goes forwards
              M584 X0 Y1 E3 Z2:5:6 ; three Z motors connected to driver outputs 2, 5 and 6
              M671 X-35:535:535 Y250:118:382 S0.5 ; leadscrews at middle left, front right and rear right
              M350 Z4 I0 ; Configure microstepping without interpolation
              M350 X16 Y16 E16 I1 ; Configure microstepping with interpolation
              M92 X78.00 Y78.00 Z1505.00 E2700.00 ; Set steps per mm
              M566 X900.00 Y900.00 Z30.00 E120.00 ; Set maximum instantaneous speed changes (mm/min)
              M203 X11400.00 Y6000.00 Z180.00 E1200.00 ; Set maximum speeds (mm/min)
              M201 X500.00 Y500.00 Z20.00 E250.00 ; Set accelerations (mm/s^2)
              M906 X1700.00 Y1700.00 Z1900.00 E1710.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
              M84 S60 ; Set idle timeout

              hopefully that's alot better, does my M557 look correct btw?
              M557 X12:490 Y12:490 S95.6 ; Define mesh grid probe from x=12 to 490, Y=12 to 490 with a mesh spacing of 95.6mm

              and I guess my other ones are fine too? especially my bed.g cause that's what I'm worried about.

              I updated my bed.g:
              ; bed.g
              ; called to perform automatic bed compensation via G32
              ;
              ; generated by RepRapFirmware Configuration Tool v2 on Fri Jan 04 2019 20:50:30 GMT-0800 (Pacific Standard Time)
              M561 ; clear any bed transform
              G28 ; Home all axis
              M401 ; deploy Z probe (omit if using bltouch)
              G30 P0 X10 Y250 Z-99999 ; probe near a leadscrew
              G30 P1 X505 Y382 Z-99999 ; probe near a leadscrew
              G30 P2 X505 Y118 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors
              M402 ; retract probe (omit if using bltouch)
              G29 ; probe the bed and enable compensation and save height map to file
              G29 S1 ; Load height map from file

              Oh and I forgot to ask, for my precision piezo up there, is the R to set the wait time before probing? cause mine has a slight issue where it needs 0.8 sec wait after it reaches each probe point before it actually probes or else it'll somehow "detect" it hits the bed when it didn't at like 2 of the probe points

              I'm also using slic3r PE for this, is there a way to not turn on the heater ONLY (bed is on) until probing is finished, that's because I'm using a bed that's the flex magnetic bed, so if the heater is on, the piezo will well melt the bed. What would be the proper gcode starting for that?

              Sorry for the multiple questions.

              deckingmanundefined 1 Reply Last reply Reply Quote 0
              • deckingmanundefined
                deckingman @iamthebest22
                last edited by

                @iamthebest22 said in Double checking settings before I install my Duet Wifi + Duex:

                I'm using 4x micro for Z because I'm using T8 x 2 lead screws, which means with a 1.8 degree, each turn is only doing 0.01mm already, so 4x would mean 0.0025mm per turn. Any more and I'll lose unnn power can't remember what it's called hold weight something?

                I think you are getting things a bit confused here. T8 x 2 is a bit meaningless - or maybe a better way putting that is that T8 x 2 can mean different things depending on the what the supplier decides it means. The T8 is fine - it's the diameter. The x 2 is ambiguous. It usually means pitch which is the distance between thread peaks. BUT the important thing to know is the "lead". This is sometimes listed as being the helical pitch. The lead is how far a nut would travel in one turn of the screw. It just happens that if the screw has a single start thread, then the lead is the same as the pitch. But lead screws often have multiple threads offset from each other. So a 2 start screw would have two helical threads offset by 180 degrees. The pitch between thread peak would be 2mm but the lead (or helical pitch) is double - i.e. 4 mm. Likewise a 4 start thread might have a pitch of 2mm but the lead would be 8mm. So T8 x 2 is meaningless unless the number of thread starts is also quoted.

                However, assuming your screws are 2mm pitch single start, then the lead is also 2mm. So one turn of the screw will move a nut or the bed) 2mm, not 0.01 mm. I think you are confusing whole steps with turns. So a 1.8 degree motor would have 200 full steps per revolution and as one revolution equals 2mm of linear movement, then you have 100 full steps per mm. So one full step equates to 0.01mm, not one turn. That's all fine because it means that any layer height that is a multiple of 0.01mm will use full steps. You can use any value micro-stepping you like to divide the full steps into smaller units. 4x is fine but your reasoning for it is a bit flawed if I may say so.

                But going back to your steps per mm for the Z axis, if the lead of the screw is 2mm, then as I have shown above, that equates to 100 full steps per mm. So using 4 x micro stepping, your steps per mm ought to be 400 but you've set it to 1505. In fact, whatever value of micro stepping you use, the steps per mm will be that value multiplied by 100 - so 100, 200, 400, 800, 1600, 3200 etc. If the screws are 2 start, then those values would be halved. So 1505 isn't valid number for a metric screw which is why I asked if they were imperial screws.

                Ian
                https://somei3deas.wordpress.com/
                https://www.youtube.com/@deckingman

                1 Reply Last reply Reply Quote 0
                • iamthebest22undefined
                  iamthebest22
                  last edited by

                  Ohhh I see what you mean, that's my fault, that 1505 is a placeholder, that is not the number I'll be using, it's copied pasta from someone else who is using imperial screws

                  Yeah I'm getting my terms confused (also doesn't help that the people I talk with uses multiple different terms incorrectly >.<) Yes I am using a T8 lead screw, single start, 2mm pitch, so a full turn is 2mm, while a whole step on the motor is 0.01mm.

                  Oh and I meant holding torque, it's from this (I'm not very good at articulating myself) https://www.machinedesign.com/archive/microstepping-myths

                  hence why I'm using 4x microsteps. I just changed the Z to 400 anyways since that's what it's suppose to be.

                  Other than that, is everything else looking good? like my bed.g and about how to keep heater cartridge off during probing (but bed still on at 60C to 80C whatever I'm printing). Thanks!

                  deckingmanundefined 1 Reply Last reply Reply Quote 0
                  • deckingmanundefined
                    deckingman @iamthebest22
                    last edited by

                    @iamthebest22
                    Ref holding torque. If you were using multi start screws, then the helix angle is very steep, which means that downward pressure (i.e. the weight) of the bed can make the screws rotate. However, in your case, you have single start screws with a shallow helix angle so even if you disconnect power to the motors completely, the bed won't move. So 4x micro stepping is OK but you could also use 16x with interpolation and it will run quieter. But you'll only notice that when you do a long Z move like homing after a tall print.
                    Ref the bed.g - I can't help because I don't use any form of levelling or flatness compensation.
                    Ref the order of things happening in the slicer. I've found that the best way is to encompass all the pre and post print commands in a macro. Then simply call the relevant macro from the slicer start and end gcodes. By not setting any temperatures in the slicer, I now have full control over what happens and in what order. Slic3R PE does things the way that are best suited to Prusa printers which isn't necessarily the best way to do things on other printers.

                    Ian
                    https://somei3deas.wordpress.com/
                    https://www.youtube.com/@deckingman

                    1 Reply Last reply Reply Quote 0
                    • iamthebest22undefined
                      iamthebest22
                      last edited by

                      ah okay thanks Deckingman.

                      Here's what I have tried with my other small HEVO to no avail in Simplify3D, keep in mind though that this small hevo that I was testing still uses an old firmware (haven't had time to update it yet), for this new build it'll be using the newest firmware available
                      in the starting gcode:

                      G28 ; home all axes
                      M104 S0 ; set nozzle to ensure 0 temp while auto bed leveling
                      G92 E0
                      M104 S0 ; set nozzle AGAIN to ensure 0 temp while auto bed leveling
                      M140 S[first_layer_bed_temperature] ; set bed temp
                      M190 S[first_layer_bed_temperature] ; wait for bed temp
                      M104 S0 ; set nozzle to ensure 0 temp while auto bed leveling
                      G4 S60 ; Dwell for 60 seconds or 1 minute to ensure bed gets evenly heated
                      G28
                      G32 ; ABL for Duet Wifi
                      G1 Z5 F300 ; lift nozzle
                      M104 S[first_layer_temperature] ; set extruder temp
                      M109 S[first_layer_temperature] ; wait for extruder temp
                      G92 E0
                      G1 F4000 X5 Y5 Z0.2 ; position for priming
                      G1 F200 E4

                      Again this is with S3D, but I can change to another slicer that works if necessary. Thanks!

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

                        x4 microstepping will probably sound like a blender. Use x16 with interpolation.

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • deckingmanundefined
                          deckingman @iamthebest22
                          last edited by

                          @iamthebest22 I'm a bit confused because further up you said you were using Slic3R but the code you just posted was what you were using in S3D.

                          No matter.......You said that the above start code was "to no avail". What was the issue when you tried it?

                          Ian
                          https://somei3deas.wordpress.com/
                          https://www.youtube.com/@deckingman

                          1 Reply Last reply Reply Quote 0
                          • iamthebest22undefined
                            iamthebest22
                            last edited by

                            Hi @ Phaedrux, I will

                            @deckingman oh sorry yeah so what I meant is this, I have another small HEVO that I was testing uses S3D , this big one that will have the Duet installed currently has an 8 bit board and uses slic3r PE.

                            The issue was basically, despite that code, it still turned on the heater to desired temperature before probing, instead of waiting till after probing was done to turn heater cartridge to desired temperature.

                            deckingmanundefined 1 Reply Last reply Reply Quote 0
                            • deckingmanundefined
                              deckingman @iamthebest22
                              last edited by deckingman

                              @iamthebest22 Yes OK.

                              It kind of depends of what order the slicer puts commands into the gcode file. I suspect what happens is the slicer starts off by selecting the tool and/or starts heating the hot end, then it inserts the start gcode commands. Rather than doing the start code commands first, then setting the temperatures. You should be able to tell. Try putting a comment at the beginning of your start gcode such as ";begin". Then slice an object and look at the generated gcode. I suspect you'll find something like M109 Snnn before the "begin" comment.

                              Which gets me back to what I said about using a macro instead of the start gcode. But when I use my macros, I still have to set the hot end and bed temperatures to zero for exactly that reason.

                              A possible way around it is to do similar to what I do in a macro but in your start gcode. i.e. Set the hot end and bed temperatures to zero in the slicer itself, then use your start gcode to heat the bed, do the probing, then heat the hot end. If the slicer gives you the option of using different temperatures for the first layer and subsequent layers, then all you need do is set the first layer temperature to zero. Of course this does mean that you can't use placeholders like [first_layer_temperature] and instead you'll have to use fixed values.

                              So your start gcode could look something like this:

                              M140 Snn ; start heating bed but don't wait (where nn is the bed temperature you want)
                              G28 ; home all
                              M190 Snn ; wait for bed to finish heating
                              G4 S60; Dwell as in your code above
                              G32; bed levelling
                              G1 Z5; lift nozzle as in your code above
                              G1 F4000 X5 Y5; position for priming as above
                              M109 Snnn; heat nozzle and wait
                              G1 F200 E4 prime nozzle.

                              I notice that you had some G92 E0 commands in your start code. This is to zero the extruder when using absolute extrusion. You've set Duet to use relative extrusion (M83) in your config.g so as long as you stick with this (which I recommend) then you don't need to zero the extruder (but make sure the slicer is also set to give relative extrusion values).

                              Also, you used both M140 followed immediately by M190 and also M104 followed immediately by M109. You don't need do that. M104 and M140 both set the temperature but don't wait. M190 and M109 both set temperatures but also wait.

                              Ian
                              https://somei3deas.wordpress.com/
                              https://www.youtube.com/@deckingman

                              1 Reply Last reply Reply Quote 0
                              • iamthebest22undefined
                                iamthebest22
                                last edited by iamthebest22

                                Ah okay I will try that as soon as I can, but another problem has popped up in the meantime:

                                Installed my Duet Wifi, everything works really well, the independent motor bed leveling and ABL all works after that. The problem I have now is, the independent Z leveling seems to make things worse and worse. It started out fine, but then after each one (followed by a G29 for a 6 x 6 probe) which I did for more testing, it made the right side with one leadscrew lower and lower away from the right side (which has two lead screws). When I first started, it had a small variation of front to back 0.3mm height difference, but after more G32, it got bigger and bigger and now the probe can't compensate for the difference because it's bigger than 0.5mm now, really confused what's going on @_@

                                EDIT: Here's a pic to show what I mean, the side where's it's much higher has the two motors, the one on the left is the one with one motor. It wasn't like this, it was almost within 0.3mm of each other before, and now like I said above to big it can't compensate.
                                https://www.dropbox.com/s/5bls0r2x0c3skpm/2019-03-20 20.57.30.jpg?dl=0

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

                                  https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors

                                  Are you sure you have the motors listed in the right order?
                                  Can you also confirm that your 0,0 origin point is at the front left of the printer? Maybe you have an axis mirrored.

                                  Z-Bot CoreXY Build | Thingiverse Profile

                                  1 Reply Last reply Reply Quote 0
                                  • iamthebest22undefined
                                    iamthebest22
                                    last edited by

                                    That's what I used, maybe I'm not sure since this is my first time doing this. I can confirm 0,0 is at the front left of the printer, the axis' are not mirrored.

                                    here is my bed.g

                                    ; bed.g
                                    ; called to perform automatic bed compensation via G32
                                    ;
                                    ; generated by RepRapFirmware Configuration Tool v2 on Fri Jan 04 2019 20:50:30 GMT-0800 (Pacific Standard Time)
                                    M561 ; clear any bed transform
                                    G28 ; Home all axis
                                    G28 Z ; Home Z again for more accuracy
                                    M401 ; deploy Z probe (omit if using bltouch)
                                    G30 P0 X10 Y250 Z-99999 ; probe near a leadscrew
                                    G30 P1 X495 Y382 Z-99999 ; probe near a leadscrew
                                    G30 P2 X495 Y118 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors
                                    M402 ; retract probe (omit if using bltouch)
                                    G29 ; probe the bed and enable compensation and save height map to file
                                    G29 S1 ; Load height map from file

                                    and the M671 code in the config.g :

                                    M584 X0 Y1 E3 Z2:5:6 ; three Z motors connected to driver outputs 2, 5 and 6
                                    M671 X-35:535:535 Y250:118:382 S0.5 ; leadscrews at middle left, front right and rear right

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

                                      @iamthebest22 said in Double checking settings before I install my Duet Wifi + Duex:

                                      Y250:118:382

                                      118 and 382 look backwards compared to what you have in bed.g

                                      G30 P1 X495 Y382 Z-99999 ; probe near a leadscrew
                                      G30 P2 X495 Y118 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      1 Reply Last reply Reply Quote 0
                                      • iamthebest22undefined
                                        iamthebest22
                                        last edited by

                                        Oh those have to be in the same order too o.o Oh okay here's the new one:

                                        G30 P0 X10 Y250 Z-99999 ; probe near a leadscrew
                                        G30 P1 X495 Y118 Z-99999 ; probe near a leadscrew
                                        G30 P2 X495 Y382 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors

                                        gonna try that now and report back

                                        1 Reply Last reply Reply Quote 0
                                        • iamthebest22undefined
                                          iamthebest22
                                          last edited by

                                          Okay I'm at a lost, so with this new bed.g here:
                                          M561 ; clear any bed transform
                                          G28 ; Home all axis
                                          G28 Z ; Home Z again for more accuracy
                                          M401 ; deploy Z probe (omit if using bltouch)
                                          G30 P0 X10 Y250 Z-99999 ; probe near a leadscrew
                                          G30 P1 X495 Y118 Z-99999 ; probe near a leadscrew
                                          G30 P2 X495 Y386 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors
                                          M402 ; retract probe (omit if using bltouch)
                                          G29 ; probe the bed and enable compensation and save height map to file
                                          G29 S1 ; Load height map from file

                                          and the same M671 in config.g:
                                          M671 X-35:535:535 Y250:118:386 S0.5 ; leadscrews at middle left, front right and rear right

                                          STill the same thing:
                                          here are the results in order (from 1st to 3rd test):
                                          https://www.dropbox.com/s/qmsah7ugzzd3oju/2019-03-20 22.59.03.jpg?dl=0
                                          https://www.dropbox.com/s/zkvr63qdu63wifi/2019-03-20 23.06.10.jpg?dl=0
                                          https://www.dropbox.com/s/g4muizvuubdfsr9/2019-03-20 23.09.24.jpg?dl=0

                                          would the firmware have anything to do with it? The one I'm using is according to the general section in the webui:

                                          Firmware Name: RepRapFirmware for Duet 2 WiFi/Ethernet
                                          Firmware Electronics: Duet WiFi 1.02 or later + DueX5
                                          Firmware Version: 2.0(RTOS) (2018-06-05b3)
                                          WiFi Server Version: 1.21
                                          Web Interface Version: 1.21.2-dc42

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

                                            I'm not an expert on independent motor leveling.

                                            You're a little out of date on the firmware but I don't think that would explain it

                                            Z-Bot CoreXY Build | Thingiverse Profile

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