My "2 Wifi" is un-baby-stepping
-
@gnydick AFAIR baby stepping honors axis minima (and maxima). But it should never even try and later undo it so that should not be the source of this issue.
-
Reason I ask is because I just had baby stepping kind of freak out on me, but not exactly how you were describing. I was trying to lower it quite a bit, (-0.3ish) and it started to throw G1/G2/G3 errors something about moving outside machine limits and the XY movement would kind of reverse. It was doing the skirt at the time. When it started moving unexpectedly I killed the power and lost the error messages.
-
@phaedrux I've seen those too. Sometimes the board actually locks up or reboots the web host portion.
-
@dc42 OK, Now I saw it happen with a regular move, no print was happening, I was just calibrating Z.
I homed it, moved my head to the center of the bed, brought it to zero. Then I +.5 to see if the head dropped at all (indicating that the bed was pushing up on the head) and it wasn't pushing on the bed, so I -.5 and the bed came back up to meet the nozzle, and then it, all on it's own, the bed moved back down +.5.
I CAN'T be the only one experiencing this on multiple revisions of firmware. And I'm pretty sure I saw it on my Maestro too.
This has to be looked at. I'm not very happy that you just kinda ignore it because you think I'm the only one experiencing it. To be totally honest, I'm not your average person. I tinker with things, explore all of the ins and outs, as well as am more observant than 99.999999999% of people. It's a curse. In my career, I'm constantly pointing out things that are broken that nobody has seen, sometimes for decades.
You can take it from me, if I say something is broken, it's broken.
Now, I'll ask again, is there any debugging help I can provide?
-
I have a possibly interesting update....
One of my Z motors was apparently dying. It finally died today. Is it possible that a faulty motor in a 2 motor series could cause this behavior?
-
@phaedrux said in My "2 Wifi" is un-baby-stepping:
Were you able to figure out of your motors were cooked? Did you try any of the other suggestions above?
I guess that answers that?
-
@gnydick said in My "2 Wifi" is un-baby-stepping:
I have a possibly interesting update....
One of my Z motors was apparently dying. It finally died today. Is it possible that a faulty motor in a 2 motor series could cause this behavior?
It's unusual for stepper motors to die. In what way did it die: an open circuit coil, or something else?
If a coil of one Z stepper goes open circuit, then power to the series-connected coil of the other stepper motor will be cut too. When this happens, it is quite possible that commands to move the bed up will move it down instead. Whether it does that or just vibrates will depend on the weight of the bed and other factors.
When you have replaced the faulty stepper motor, let us know whether you are still having this un-babystepping problem.
-
@dc42 oh well, I replaced the motor and it's still happening.
I'm not sure how it died. I think it's bearings though. It was really hard to turn the motor by hand while it was disconnected, and made a soft grinding sound. -
@phaedrux I've tried everything.
-
@gnydick said in My "2 Wifi" is un-baby-stepping:
@dc42 oh well, I replaced the motor and it's still happening.
I'm not sure how it died. I think it's bearings though. It was really hard to turn the motor by hand while it was disconnected, and made a soft grinding sound.That can be caused by swarf in the motor. If so, it can usually be cleared by dismantling the motor, blowing or brushing out the swarf, and re-assembling it.
-
@dc42 yeah, I disassembled it and cleaned everything as much as possible and it won't even budge now.
-
@gnydick said in My "2 Wifi" is un-baby-stepping:
@dc42 yeah, I disassembled it and cleaned everything as much as possible and it won't even budge now.
I've found that rotating the back half of the motor 90 degrees with respect to the front half before screwing them together sometimes helps.
-
@dc42 thanks for the advice.
-
I'm getting more than furious. I've used 2 different Maestro's, and now a 2-Wifi and it still un-baby-steps. It happened with 2 z motors, 3 motors and 4 motors. This cannot be a fluke.
I'm also getting ridiculous z-positions.
With the machine perfectly leveled, z-homed to perfectly 0, I start a print, and the first layer immediately starts at at-least 1mm off the bed. I will then re-home the machine and the Z height is perfect. Start another print, and it starts over 1mm off the bed again. This is with no baby-stepping at the beginning.
The other bizarre part is, when I pause the print after I see that it's 1+mm away, I manually G1 Z0 and it goes right to the bed. I G1 Z5.2 and it goes back to the previous position. I G1 Z0.2 and it goes to a C-hair away from the bed. I resume the print and the bed moves down and up, and the position reads 0.2mm, but the bed is still over 1mm away.
These behaviors seem to be intermittent. I'll have a streak of awesome prints, then it'll just go bat-shit crazy. I do leave my printer on for very long periods of time.
My prints, when successful, have the correct layer height, and when I measure 100mm of Z movement with calipers, it's correct.
There is something wrong.
Also, when I do baby-step, the Z position on the screen reads positive, when I baby-step negative in a 1-1 ratio. I baby-step -0.8mm and the Z position reads 0.8mm.
WTF is going on????
I've uploaded video, I can reproduce it anytime I want, why is this being ignored like it's some kind of fluke?
-
-
Have you tried reducing Z max speed (M203) or acceleration (M201)? It could be that the initial move to Z=0.2 (or whatever your layer height is) is skipping steps.
-
Have you checked that your slicer isn't inserting M201 or M203 commands into the GCode? Slicers should leave these settings alone because they are used to set machine limits, but unfortunately at least one slicer tries to change them.
-
Try running the Z stepper(s) in spreadcycle mode. Stealthchop mode is much more likely to result in skipped steps.
-
-
@dc42 these are not skipped steps, that would result in the bed not being far enough away. It would also not explain any of the symptoms.
Speed and acceleration are not high at all.
-
@gnydick After all these modifications can you please repost your firmware version,
config.g
, yourhome*.g
and one GCode file where this issue is happening?Also the current Z axis configuration (mechanical - please also describe your leadscrew or whatever you are using) as well as the specs of the currently used motors.
In other words: we need all available information to check what is happening here. No one else is reporting it but you can reproduce it consistently over a variety of hardware setups. This is awkward.
-
@wilriker think about it this way, I've had so many different combinations different control boards there's nothing in common the only commonality is the device itself it's been different versions of firmware different versions of the dwc posted videos of the behavior I can post more it's easily visible that the bed shifts up shifts down there's nothing slipping no skipping I will happily post all of the config when I get back home but you're not going to find anything.
The only patterns that I think I may see is up time related. I can't confirm it without the passage of time so that will take some time to reproduce.
-
config.g
M929 P"log.txt" S1 ; Configuration file for Duet WiFi (firmware version 1.21) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v2 on Fri Feb 08 2019 11:05:GMT-08S1 00 (Pacific Standard Time) M667 S1; CoreXY mode M584 X0 Y1 Z5:6:7:8 E3:4 P3 M671 X-64.17:-64.17:370.03:370.03 Y57:345.3:352.5:57.8 S5 M376 H2 ; General preferences G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves ; Network M550 P"NOTPromega" ; Set machine name M552 P"lilpaw" S1 ; Enable network M586 P0 S1 ; Enable HTTP M586 P1 S1 ; Enable FTP M586 P2 S1 ; Enable Telnet ; Drives M569 P0 S0 ; Drive 0 goes backwards M569 P1 S0 ; Drive 1 goes backwards M569 P2 S0 ; Drive 2 goes backwards M569 P3 S1 ; Drive 3 goes forwards M569 P4 S1 ; Drive 4 goes backwards M92 X159.864275 Y159.864275 Z400:400:400:400 E3800 ; Set steps per mm M350 X64 Y64 M350 E8 I0 ; Configure microstepping without interpolation M350 Z16:16:16:16 I1 M566 X750 Y750 Z150.00:150.00:150.00:150.00 E120:120 ; Set maximum instantaneous speed changes - jerk (mm/min) M203 X48000.00 Y48000.00 Z1200.00:1200.00:1200.00:1200.00 E1800.00:1800.00 ; Set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z300.00:300.00:300.00:300.00 E120:120 ; Set accelerations (mm/s^2) M906 X1800.00 Y1800.00 E800.00:800.00 I60 ; Set motor currents (mA) and motor idle factor in per cent M906 Z1400.00:1400.00:1400.00:1400.00 M84 S30 ; Set idle timeout ; Axis Limits M208 X0:278 Y0:355 Z0:343.60 ; Endstops M574 X2 S1; Set x end-stops types (S1 is active high, applied to X) optical M574 Y2 S0 ; Set y end-stops types (S0 is active low, applied to Y) mechanical M574 Z1 S1 ;M915 Z S-20 F0 H200 R1; stall detection ; Z-Probe M558 P4 I1 H3.0 F60 T6000 ; Set Z probe type -- Enable LIMIT SWITCH ;M558 P1 H1.2 F300 T12000 B0 ; IR sensor ;M558 P10 ; stall detection G31 P500 X17.6 Y57.5 Z4.5 ; Set Z probe (limit switch) trigger value, offset M556 S50 X0 Y0 Z0 ; Set orthogonal axis compensation parameters M557 X18.5:270 Y58:354.626 S18 ; Define mesh grid ; Heaters M307 H0 B0 S1.00 ; Disable bang-bang mode for the bed heater and set PWM limit M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0 M143 H0 S120 ; Set temperature limit for heater 0 to 120C ;M305 P1 T100000 B4388 C7.060000e-8 R4700 ; Set thermistor + ADC parameters for heater 1 ;M305 P1 T10000 B3435 C7.060000e-8 R4700 M305 P1 T100000 B4725 C7.06e-8 M143 H1 S285 ; Set temperature limit for heater 1 to 500C ;M305 P1 T100000 B4388 C7.060000e-8 R4700 ; Set thermistor + ADC parameters for heater 2 ;M305 P2 T10000 B3435 C7.060000e-8 R4700 M305 P2 T100000 B4500 M143 H2 S285 ; Set temperature limit for heater 2 to 500C ; Fans M106 P3 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off M106 P1 S0 I0 F500 H1 T100:180 X255 B0 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on M106 P2 S0 I0 F500 H2 T100:180 X255 B0 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on ; Tools M563 P0 S"Left" D0 H1 F3 ; 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 M563 P1 S"Right" D1 H2 F4 ; Define tool 1 G10 P1 X34 Y0 Z0 ; Set tool 1 axis offsets G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C ; Automatic power saving M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss ; Custom settings are not configured ; Miscellaneous M501 ; Load saved parameters from non-volatile memory M302 P1 ; allow cold extrude retract ;M572 D0:1 S0.1
homez.g
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v2 on Fri Feb 08 2019 11:10:07 GMT-0800 (Pacific Standard Time) G91 ; relative positioning G1 S1 Z-350 F1500 ; move quickly to Z axis endstop and stop there (first pass) G1 Z5 F1500 ; go back a few mm G1 S1 Z-10 F360 ; move slowly to Z axis endstop once more (second pass) G90 ; absolute positioning G92 Z2.80 ; sensor is triggered early
z physical specs
4 motors
4 lead screws: https://smile.amazon.com/gp/product/B01H1SFI46/ref=oh_aui_search_asin_title?ie=UTF8&psc=1
couplers: https://smile.amazon.com/gp/product/B01M8QXY8N/ref=oh_aui_search_asin_title?ie=UTF8&psc=1 -
@gnydick said in My "2 Wifi" is un-baby-stepping:
M376 H2
A taper height of 2 is pretty low. I'm not sure, but this might be causing some issues. Can you try with taper turned off?
https://duet3d.dozuki.com/Wiki/Gcode#Section_M376_Set_bed_compensation_taperI'm curious why you have axis skew compensation but have 0s for each axis.
https://duet3d.dozuki.com/Wiki/Gcode#Section_M556_Axis_skew_compensationYou've got a Z probe defined, but are using an endstop to home z? And also using mesh compensation? Can you describe the whole boot up, to homing, to printing process? What's in your start gcode?