Duet 2 Wifi Dual Z issue after increasing esteps
-
Hey Everyone,
I am setting up a Duet 2 Wifi in a Lulzbot mini and am having some weird issue with my z steppers. I got everything connected and working, then tried to calibrate my esteps. The X and Y worked just fine after I added the additional steps. However on the Z axis, I would command 10mm and receive 1-2mm. I did the math and added the needed esteps (1600 was new number) and thats where the problem starts. When I go to home or move the Z axis the motors skip and stall out. The link below will take you to a video of what is happening. The steppers would work fine before adding the additional esteps, when I homed it or just moved them up and down. I tried different firmware versions, but am currently on 3.0 to 3.2. I also tried new stepper motors, but they did the same thing with the new or old motors. I tried bumping the motor current up for the Z axis, and adding D3 V40 on the M569 line in my config but neither made a difference. The printer does have a bl touch installed, but does not have a PanelDue installed yet. Not sure if those could affect anything! I am sorta lost on what to try next, any help is greatly appreciated.
https://youtube.com/shorts/ZXy_10ZrqHg?feature=share
; Configuration file for Duet WiFi (firmware version 3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.3.13 on Sat Sep 24 2022 04:07:34 GMT-0400 (Eastern Daylight Time); General preferences
M575 P1 S1 B57600 ; enable support for PanelDue
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"LulzBot Mini" ; set printer name
M918 P1 E4 F2000000 ; configure direct-connect display; Network
M551 P"" ; set password
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0 S1 D3 V40 ; physical drive 0 goes forwards
M569 P1 S0 D3 V40 ; physical drive 1 goes backwards
M569 P2 S1 D3 V40 ; physical drive 2 goes forwards
M569 P3 S0 ; physical drive 3 goes backwards
M584 X0 Y1 Z2 E3 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X101.26 Y100.00 Z2000 E436.54 ; set steps per mm
M566 X1200.00 Y1200.00 Z24.00 E300.00 ; set maximum instantaneous speed changes (mm/min)
M203 X9000.00 Y9000.00 Z1200.00 E6000.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z100.00 E5000.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z2500 E1000 I50 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X170 Y180 Z148 S0 ; set axis maxima; Endstops
M574 X1 S1 P"xstop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin xstop
M574 Y1 S1 P"ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop
M574 Z2 S1 P"zstop" ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin zstop; Z-Probe
M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
M557 X15:170 Y15:180 S20 ; define mesh grid; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S110 ; set temperature limit for heater 0 to 110C
M308 S1 P"e0temp" Y"thermistor" T100000 B4092 ; configure sensor 1 as thermistor on pin e0temp
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S275 ; set temperature limit for heater 1 to 275C; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 C"Extruder Fan" S1 H1 T160 ; set fan 0 name and value. Thermostatic control is turned on
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 C"Case Fan" S1 H0 T50 ; set fan 1 name and value. Thermostatic control is turned on
M950 F2 C"fan2" Q500 ; create fan 2 on pin fan2 and set its frequency
M106 P2 C"Part Cooling" S1 H-1 ; set fan 2 name and value. Thermostatic control is turned off; Tools
M563 P0 S"Extruder" D0 H1 F0 ; 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; Custom settings are not defined
-
@slabstations you're probably trying to move them too fast. What are the stepper motor part numbers?
-
@jay_s_uk I havent changed anything on the speeds, and even just homing it causes it. The motors on it currently are Creality 42-34(z) motors. The old motors are SY42STH47-1504A. https://download.lulzbot.com/TAZ/3.1/production_parts/electronics/SY42STH47-1504A_stepperMotors.pdf I started with an ender 3 config in the configurator, just changed the dimensions to fit the LulzBot Mini v1
-
@slabstations
The parameters D3 and V40 in the M569 command line have to go because the Duet-Wifi cannot stealth chop.
The Duet Wifi has TMC2660 drivers.In the video it looks as if the right Z-Stepper motor is not running and is only moving when the spindle is pressed.
How did you connect the two Z-Stepper motors to the Duet Wifi?
Does each spindle have its own end stop?Google Translate
-- Original Text --Der Parameter D3 und V40 in der M569 Befehlszeile müssen weg, da das Duet-Wifi kein StealthChop kann.
Das Duet-Wifi hat TMC2660 Treiber.In dem Video sieht es so aus als würde der rechte Z-Stepper Motor nicht laufen und nur durch den Druck auf die Spindel in Bewegung kommen.
Wie hast Du die beiden Z-Stepper Motoren auf dem Duet Wifi angeschlossen ?
Hat jede Spindel einen eigenen Endstop ? -
@slabstations
Since you don't have a PanelDue connected, comment out (;) the following lines.
; M575 P1 S1 B57600 ; enable support for PanelDue
; M918 P1 E4 F2000000 ; configure direct-connect displayJust to avoid that these settings can cause errors.
If you should connect a PanelDue, you can remove the comment function (;) again. -
@slabstations
The steps for Z with 2000 at 16 microsteps are clearly too many for normal 1.8° stepper motors with a 1.25mm (8mm pitch per revolution) spindle.
Normal value would be 400 steps.The 2500mA for the steppers is also too much, since the steppers are specified as 800mA.
Please enter Z800 there, and if you go higher with the mA, then pay attention to the temperature after a long press.
I adjusted my mA values down with the motors at 60°C.I have 0.9° stepper motors and exactly 800 steps for the Z axis and 1000mA.
P.S.:
One more thing I noticed...
In the command line G31 P500 X0 Y0 Z2.5 you have not entered the X Y offset of the BLTouch.
In order to avoid problems later, such as the BLTouch trying to measure outside the print bed or an inaccurate MBL, you should measure the offset of the BLTouch to the nozzle tip.Inaccurate MBL...
The BLTouch measures an unevenness on the print bed and creates the heightmap. But the measured bump is eg 42mm further to the right on the X-axis and 12mm lower on the Y-axis because the offset of the BLTouch X-42 is Y-12.
And you always wonder why a printed part always has an elephant's foot on one corner and almost detaches itself from the print bed on the other corner.Google Translate
-- Original Text --Die Steps für Z mit 2000 bei 16 Microsteps sind eindeutig zu viel für normale 1,8° Stepper Motoren mit einer 1,25mm (8mm Steigung pro Umdrehung) Spindel.
Normaler Wert wäre 400 Steps.Auch die 2500mA für die Stepper ist zu viel, da die Stepper mit 800mA angegeben sind.
Trage dort bitte Z800 ein, und wenn Du mit den mA höher gehst, dann achte auf die Temperatur nach einem langen Druck.
Ich habe meine mA Werte bei einer Temperatur der Motoren von 60°C herunter geregelt.Ich habe 0,9° Stepper Motoren und exakt 800 Steps für die Z Achse und 1000mA.
P.S.:
Eines ist mir noch aufgefallen...
In der Kommandozeile G31 P500 X0 Y0 Z2.5 hast Du den X Y Offset des BLTouch nicht eingetragen.
Um spätere Probleme wie zB dass der BLTouch außerhalb vom Druckbett versucht zu messen oder ein ungenaues MBL zu vermeiden, solltest Du den Offset des BLTouch zur Düsenspitze ausmessen.Ungenaues MBL...
Der BLTouch misst eine Unebenheit auf dem Druckbett und erzeugt die heightmap. Aber die gemessene Unebenheit ist zB 42mm weiter rechts auf der X-Achse und 12mm tiefer auf der Y-Achse, weil eben der Offset des BLTouch X-42 Y-12 beträgt.
Und Du wunderst Dich immer warum ein Druckteil an einer Ecke immer ein Elefantenfuß hat und sich auf der anderen Ecke fast vom Druckbett löst. -
@norder I have removed the D3 V40 and commented out the M575 and M918 lines. I have not gotten far enough for me to setup the probe offset yet, ran into this problem and have been messing with it since. I do one highend mounted endstop connected to the board. The motors are connected in the Z spot, I removed the jumpers in the second Z spot to plug in the second motor. I had it at 400 esteps originally but when I asked it to move 10mm, it would only move 1-2mm so that is why I bumped them up. But once I added the addition esteps, it started to do what its doing in the video.
-
@slabstations said in Duet 2 Wifi Dual Z issue after increasing esteps:
M906 X800 Y800 Z2500 E1000 I50 ; set motor currents (mA) and motor idle factor in per cent
Then the last and I think the most important step to solve your problem would be to edit the mA for Z.
The 2500mA (Z2500) is important, they are much too high and could cause irreparable damage in the long run.
Here 800mA (Z800) should be entered for the beginning.
My stepper motors are also designed for 800mA, but I have set them to 1000mA and constantly monitored the temperatures and made sure that the motors do not get hotter than 60°C. Without housing or closed pressure room.Motors behave exactly like in the video when they are allocated too much mA.
Google Translate
-- Original Text --Dann wäre der letzte und ich denke es ist der wichtigste Schritt um Dein Problem zu lösen, die mA für Z zu editieren.
Wichtig ist die 2500mA (Z2500), die sind viel zu hoch und könnten auf Dauer einen irreperablen Schaden verursachen.
Hier sollten 800mA (Z800) für den Anfang eingetragen werden.
Meine Stepper Motoren sind auch für 800mA ausgelegt, ich habe sie aber auf 1000mA eingestellt und die Temperaturen ständig überwacht und darauf geachtet das die Motoren nicht über 60°C heiß werden. Ohne Umhausung oder geschlossenen Druckraum.Motoren verhalten sich genau so wie in dem Video wenn sie zu viel mA zugeteilt bekommen.
-
@norder I change the mA back down to 800mA and change the esteps to 400 but now it doesnt move the correct amount of mm. Back to where it seems as if it needs more esteps.
-
@slabstations
But the two Z motors are now both running normally again, so not like in the video where only one moved normally and the other stuttered?
After what you wrote what kind of engines you have, 400 steps should be correct.
But maybe they are 0.9° motors or the spindles have a different pitch?
You can easily adjust the steps, but the mA should be in the range of 800mA to about 1000mA without the temperatures being too high.
At 2500mA, the motors can overheat, but so can the stepper driver chips on the Duet board.First of all, it is important that the motors run evenly with 800mA.
Can you measure how far the z-axis moves if you enter 100mm, for example.
If the axis then only moves 50mm, you probably have 0.9° motors, because they need twice as many steps (800 instead of 400).Google Translate
-- Original Text --Aber die beiden Z-Motoren laufen jetzt beide wieder normal, also nicht mehr so wie im Video wo sich nur einer normal bewegt hat und der andere stotterte ?
Nachdem was Du geschrieben hast was für Motoren Du hast, sollten 400 Steps richtig sein.
Aber vielleicht sind es doch 0,9° Motoren oder die Spindeln haben eine andere Steigung ?
Die Steps kannst Du problemlos anpassen aber die mA sollten so im Bereich von 800mA bis etwa 1000mA liegen ohne das zu hohe Temperaturen entstehen können.
Bei 2500mA können die Motoren überhitzen aber auch die Chips der Stepper Treiber auf dem Duet Board.Wichtig ist erst einmal dass die Motoren mit 800mA gleichmäßig laufen.
Kannst Du mal messen wie weit die z-Achse verfährt wenn Du zB 100mm eingibst.
Sollte sich die Achse dann nur 50mm bewegen, hast Du vermutlich 0,9° Motoren, denn die brauchen doppelt so viele Steps (800 statt 400). -
@slabstations
I just watched your video again.
Most 3D printers have a spindle with 8mm Lead per revolution and thus 400 steps with a 1.8° motor and 800 steps with a 0.9° motor.When I look at the lead of your spindle, it looks more like a 2mm lead.
If your information about your Z motors is correct, then you would have to enter 1600 steps (Z1600) for your Z axis.Google Translate
-- Original Text --Ich habe mir gerade noch einmal Dein Video angesehen.
Die meisten 3D-Drucker haben eine Spindel mit 8mm Steigung (Lead) pro Umdrehung und somit 400 Steps bei einem 1,8° Motor und 800 Steps bei einem 0,9° Motor.Wenn ich mir die Steigung Deiner Spindel so ansehe, sieht es eher nach einer Steigung von 2mm aus.
Wenn Deine Angaben zu Deinen Z-Motoren richtig sind, dann müsstest Du 1600 Steps (Z1600) für Deine Z-Achse eintragen. -
@norder You can't tell what the lead if a screw is by looking at the side. The reason being that lead screws are often multi-start. Also, don't confuse pitch with lead. Pitch is the distance between thread peaks (or troughs) while lead is how far a nut will travel in one revolution. So a two start screw might have a pitch of 2mm but the lead will be 4mm.
-
@deckingman
You're right, I mistakenly put pitch and lead together.
I already know what the meaning is.
But I am of the opinion that since threaded spindles in commercially available 3D printers almost always have a multi-start thread, which can be roughly recognized by the angle of the thread path to the longitudinal axis, that the threaded spindle is not a threaded spindle with 8mm lead per revolution, even though I can't see the front end.
The lead screw in the video has less than 8mm lead per revolution, don't you think?I correct my previous comments on pitch and lead !
Not that anyone is misled.P.S.:
I only had to correct the text translated by Google.
The German word "Steigung" was translated as "Pitch", which is incorrect.
"Steigung" or "Verfahrweg" is the German term for the English "lead".
Google is to blame.Google Translate
-- Original Text --Da gebe ich Dir Recht, ich habe Pitch und Lead irrtümlich zusammengebracht.
Ich weiß schon was die Bedeutung ist.
Aber ich bin der Meinung, da Gewindespindeln bei handelsüblichen 3D Druckern so gut wie immer eine mehrgängiges Gewinde haben, das man anhand des Winkels der Gewindebahn zur Längsachse grob erkennen kann das es sich bei der Gewindespindel nicht um eine Gewindespindel mit 8mm Lead pro Umdrehung handelt, auch wenn ich die Stirnseite nicht sehen kann.
Die Gewindespindel in dem Video hat weniger wie 8mm Lead pro Umdrehung, oder glaubst Du etwa nicht ?Ich korrigiere meine vorherigen Kommentare zum Thema Pitch und Lead !
Nicht das jemand in die irre geführt wird.P.S.:
Ich musste nur den von Google übersetzen Text korrigieren.
Das deutsche Wort "Steigung" wurde als Pitch übersetzt, was falsch ist.
Steigung oder Verfahrweg ist der deutsche Befriff für das englische lead.
Google hat Schuld. -
@norder Yea I had bumped the esteps up to 1600 and thats why the motors would stall out like they did in the video. They both move and stutter out, with one side tending to move a little bit more then the other.
-
@norder Here is the leadscrews used on the lulzbot mini if that helps!
-
@norder I also had the same issue when I was running the stock stepper motors. 400 esteps it would move fine but if I commanded 10mm it would give me 1-2mm, I though something could be wrong with the motors since they are older and thats when I tried the new creality ones and same issue.
-
@slabstations You refer to Z steppers in the plural yet your configuration only has one Z stepper defined. So I assume that you have wired the two motors in series to a single driver. IIRC on the Duet 2, that means connecting one motor to ZA and the other the ZB. Is that what you'd done? If so, have you remembered to remove the jumpers?
-
@slabstations said in Duet 2 Wifi Dual Z issue after increasing esteps:
@norder I have removed the D3 V40 and commented out the M575 and M918 lines. I have not gotten far enough for me to setup the probe offset yet, ran into this problem and have been messing with it since. I do one highend mounted endstop connected to the board. The motors are connected in the Z spot, I removed the jumpers in the second Z spot to plug in the second motor. I had it at 400 esteps originally but when I asked it to move 10mm, it would only move 1-2mm so that is why I bumped them up. But once I added the addition esteps, it started to do what its doing in the video.
@deckingman I've already asked him that.
-
@slabstations
Recently there was a similar problem here, the motors must be identical, otherwise problems arose when Z1 and Z2, i.e. one driver for both steppers, were used.If both spindles each have an endstop, or you have a second endstop to spare, then you could set up a Dual-Z so that each Z motor has its own driver. E1 should still be free!?
My printer also runs Dual-Z. It has the advantage that the X-axis can be leveled.
I have self-made HAL sensor endstops, each with an adjustable magnet.Would Dual-Z be conceivable for you?
Google Translate
-- Original Text --Letztens gab es hier ein ähnliches Problem, die Motoren müssen identisch sein sonst kam es zu Problemen wenn Z1 und Z2, also ein Treiber für beide Stepper, genutzt wurden.
Wenn beide Spindeln je einen Endstop haben oder Du einen zweiten Endstop übrig hast, dann könntest Du ein Dual-Z einrichten so das jeder Z-Motor seinen eigenen Treiber hat. E1 sollte doch noch frei sein !?
Bei meinem Drucker läuft auch Dual-Z. Es hat den Vorteil das die X-Achse nivelliert werden kann.
Ich habe selbst gebaute HAL-Sensoren Endstops mit je einem justierbaren Magneten.Wäre Dual-Z für Dich denkbar ?
-
So 1600 steps are correct.