Duet2 Wifi & Duet 3 Repeatability Issues

  • Hello!

    Some may have followed the z-probe issue I had, unfortunately it wasn't the z-probe after all, rather a coordinate system problem.

    When i repeatedly probe the same spot 100 times I get a strong drift of the coordinate system. So much so I get a funny looking curve that shows a drift of apprx 200-300 mue for roughly the first 30 attempts and than levels out. You may think this is not important as I will not be probing the same point 100 times ever anyway, however when doing the mesh bed leveling, 30 points that are constantly off a couple of mue give you a very tilted bed. Let alone when you are using more than one tool.

    So the first thing I did was to eliminate the "Idle" Setting, setting the I Value from 30 to 100. This resulted for me in a reduction of the drift of roughly 100 mue leaving me with a total drift of apprx. 150 mue. This is the whole test including the setup I used that you may verify. 150mue is still too much for my taste, as it should actually be 0 or at least oscillating around a value and not drifting into one direction.

    I have the same issue with my duet3 on a similar system, with only a 150 mue drift. I also set up a klipper, using the same drivers, with the same result. Inly my Kossel Mini running on the Mega/Ramps/Marlin setup does not have this issue.

    Please if anyone has an idea, please let me know what you think could be causing this drift!

    Best regards!

  • @Deltasquare said in Duet2 Wifi & Duet 3 Repeatability Issues:

    I also set up a klipper, using the same drivers, with the same result.

    That's a key statement. It flatly rules out any of the three controllers. Unless I misunderstand something, time to look at mechanics, or dropped steps, or something else.

  • administrators

    @Deltasquare said in Duet2 Wifi & Duet 3 Repeatability Issues:

    Inly my Kossel Mini running on the Mega/Ramps/Marlin setup does not have this issue

    what is this setup? other than using a RAMPS, what drivers? What does the drift test results look like on that with all the same hardware?

  • Hi Danal!

    I was evaluating the theory of dropped steps, however as I have 200 stp/rev Steppers a 16T GT2 pulley the min amount of lost steps should be 0,16 mm. So when the Idle value is low, we get a (repeatable) drift of roughly 0,15. So if it was losing the 0,15 in one jump I would agree with you, however, it gradually approaches the max offset. Which would indicate losing microsteps which obviously does not work. Therefor I am unsure whether this is the problem. And I seem to remember that the stepper motor cannot lose a single step, but only multiples of 2 (or 4?). Maybe @T3P3Tony can verify this as he appears to have joined the conversation.

    If I evaluate the possibility that it loses one step in each stepper (why would it only lose one step, I dont know) than I would see plateaus developing in the measurements, which are not there either.

    Mechanics could be at fault, however the behaviour of the movement, when you look at the curve does not look like an elastic deformation, as this would be more gradual which would exclude the Belt and softness in the parts. So in therms of mechanical assembly errors I checked the Motor mount, it is not turning. As well as the Pulley, Idler and the belt-fastener. None show real movement when I wiggle them around.

    @T3P3Tony The Kossel is running Arduino Mega 2560 + RAMPS + 4x DRV8825. I will switch the Klipper to the Kossel now, as the Duet is hard-mounted on the large Delta. I may have time to test the Duet on the Kossel tonight. Any more suggestions of what I can try?

  • @T3P3Tony Any thoughts on this?

    Further food for thought: I am running all this with 17HS19-1684S1 Stepper motors from Stepperonline. Could it be the motors & their quality/inductance/resistance or maybe they are just broken?

    Here is a spec-sheet of a comparable motor from another supplier as the stepperonline resource pdf is a broken link.

  • administrators

    It's true that if you probe too fast then you may get dropped steps, because when the Z probe triggers, the drivers attempt to stop the motor(s) immediately. If they are moving too quickly then the inertia may cause them to overshoot.

    The number of dropped steps will always be a multiple of 4 full steps. Is that what you observe?

    PS - I use 17HM19-1684 motors in my delta. That's the 0.9deg version of the same motor. I probe quite fast (1000mm/min AFAIR) and I don't see any dropped steps.

  • Hi David and thanks for joining in!

    I am afraid it is not the speed, as I have already reduced it to F150 which is rather slow. The problem persists whether I measure with dial gauge OR with piezo precision z-probe. The coordinate system slumps as a whole as I show in this video. Don't follow it along all the time, rather download it (its large) and use a slider in a local program to move it from one pause to the next. You will see that the coordinate system as a whole is lowering itself down.

    I just made a test without any resistance other than the weigth of the delta-kinematic and the linear rail bearing. I did not measure the position this time, in order not to scew the results, but attached a camera so I was able to record the turning angle of the motor. Drifting of the coordinate system yet again.

    Unfortunately no, it is losing only 150-300mue. My setup is a 16T pulley with a GT2 belt, so circumference is 32mm. Motor is 200 Steps (1.8°) thus 32/200=0,16mm/step.

    If it was in fact only losing multiples of 160mue (0,16mm) it would mean at least 640mue (0,64mm) for a lost step.

    My settings are as follows:

    ; General preferences
    G90							; Send absolute coordinates...
    M83							; ...but relative extruder moves
    M665 R242.280 L408.55 B105 H471.703 X0.054 Y-0.053 Z0	; Set delta radius, diagonal rod length, printable radius, homed height
    M666 X-0.01 Y0.31 Z-0.30 A0.48 B-0.52				; Put your endstop adjustments here, or let auto calibration find them
    ; Drives
    M584 X0 Y1 Z2 E3:4:5 W6 A7 B8 C9			; Drive Mapping
    M569 P0 S1						; Drive 0 goes forwards A-Tower
    M569 P1 S1						; Drive 1 goes forwards B-Tower
    M569 P2 S1						; Drive 2 goes forwards C-Tower
    M569 P3 S1						; Drive 3 goes clockwise Extr 1
    M569 P4 S1						; Drive 4 goes clockwise Extr 2
    M569 P5 S1						; Drive 4 goes clockwise Extr 3
    M569 P6 S1						; Drive 6 goes forwards Function X
    M569 P7 S1						; Drive 7 goes forwards cA
    M569 P8 S1						; Drive 8 goes forwards cB
    M569 P9 S1						; Drive 9 goes forwards cC
    M350 X16 Y16 Z16 A16 B16 C16 I1				; Configure microstepping with interpolation (C16)
    M350 W16 E16:16:16 I1					; Configure microstepping with interpolation
    M92 X100 Y100 Z100 A84 B84 C84			; Set steps per mm (100 bei 16fach)
    M92 W1500 E438:450:450					; Set steps per mm (E bei 5mms, B2D Extruder 263.00)
    M566 X1200.00 Y1200.00 Z1200.00 A1200 B1200 C1200	; Set axis maximum instantaneous speed changes (mm/min) before adapt 3000
    M566 W1200 E1200.00:1200:1200				; Set extruder & x-stepper max instant speed changes (mm/min)
    M203 X60000.00 Y60000.00 Z60000.00 A10000.00 B10000.00 C10000.00	; Set maximum speeds (mm/min)
    M203 W3000 E3400.00:2000:2000				; Set maximum speeds extruders & wechsler (mm/min)
    M201 X900.00 Y900.00 Z900.00  A600.00 B600.00 C600.00	; Set accelerations axis (mm/s^2) before tune 2500 (C900.00)
    M201 W900.00 E1000.00:1000.00:1000.00			; Set accelerations extruders & x-stepper (mm/s^2) before tune 2500
    M906 X1428.00 Y1428.00 Z1428.00 I100			; Set axis motor currents (mA) at 85% of max Amps/Phase and idle factor in per cent
    M906 A700 B700 C700 I90					; Set c-stepper motor currents (mA) and idle factor in per cent
    M906 W500.00 E1275.00:1275.00:1275.00 I30		; Set x-stepper and extruder motor currents (mA) and idle factor in per cent
    M84 S30							; Set idle timeout

  • administrators

    Maybe it's just the printer warming up that you are seeing?

  • But if the printer was just warming up and I do a G28, than probe again another 100x it shouldnt do the same drift again, or am I mistaken?