Extruder motor stops during print…
-
the drama continues.
i printed a surface called "tobel", and it failed, even with absolute extruder distances. we can rule out relative as the culprit.
added a heatbreak out of lexan, with a fan blowing directly across the duet.
the print still failed.
here is what it is supposed to look like:
i think we can rule out heat as the source of the problem. because the two prints failed at such a similar place, i am hopeful that i can develop a short gcode file that fails every time i run it. then, hopefully, someone else can also try it, and fail.
-
my journey continues. i have re-wired the extruder motor, used a heat shield and fan to cool the duet board, and played with various slicer settings. nothing has worked – i continue to experience failures.
is there an alternate firmware i can load on the board?
-
Think about it, if this was a "firmware bug", this forum would be swamped with threads similar as yours, but it isn't ;).
Having read your thread @ultibots, I think you are having ordinary nozzle jams.
You use 185 deg, which seems to me a bit on the cold side, I use 205 for my PLA prints and never had any issue.Can you share the STL for above model? I Can do a test print if you want…
Cheers,
Kris -
the absence of other bug reports is not evidence of no problem. to the contrary, my persistent problem is evidence of a problem. its not conclusive, i agree, but this problem has happened to me at least 19 times, and has persisted despite nearly 3 months of publicly documented problem-solving efforts, including swapping motors, re-wiring, heat shielding and actively cooling the duet, swapping duet boards, upgrading firmware, and twiddling nearly all possible slicer options (which shouldn't matter anyway because no gcode should do this).
what is left? power supply / fluctuations, too low a temp, a firmware bug, some machine setting like acceleration or max speeds (again pointing to a firmware bug), or ??? i appreciate you helping me explore the remaining options, because i am about out of ideas.
i do agree that few people with the problem makes it harder to tell whether this is indeed a firmware bug. but i point you to the famous case of the intel floating point arithmetic bug: https://en.wikipedia.org/wiki/Pentium_FDIV_bug . "1 in 9 billion floating point divides with random parameters would produce inaccurate results." to put it succinctly,
absence of evidence is not evidence of absence
furthermore, another d300vs user commented in my thread on the ultibots forum that they experienced a very similar problem. so, i am not alone in experiencing this problem. was their problem mine? we'll likely never know…
sure, i'll try a higher temp. i must try everything, because 1) right now, i can only print trinkets on my machine, 2) i am a scientist and mathematician so i have to know what the solution is, and 3) i genuinely hope that it is not a firmware bug, but instead a simple matter of my temperature being too low. we'll see...
here is a link to a folder of gcode files, all of which have failed for me at least once. they are set up for 1.75mm filament with a 0.4mm diameter tip on a delta bot with the origin at the center. if i can get even one other person to run my gcode, it'll do a long way to helping rule out a firmware bug. repeated success on anothes duet?
my problem. another person gets a fail? clearly not my fault, points to firmware. another strong piece of evidence would be what happens if i use another firmware, so looking to install something else and give it a try.http://danibrake.org/gcode/failing/
the 40% file takes like 5 hours, and i have had it fail on me 3/13 times. the 60% takes like 14 hours, and has failed 1/1 times. the 100% takes even longer, and has failed 4/4 attempts. if you want a sure fail, try the 100. the model is also posted to the same location.
i am still on firmware 1.20, per forum recommendation. here is my config file:
; Configuration file for UltiBots D300 V-Slot Delta 3D Printer ; version 1.0 for RepRapFirmware version 1.18.1 ; Communication and general M111 S0 ; Debug off M550 PD300VS ; Machine name and Netbios name (can be anything you like) M551 XXXXX ; Machine password (used for FTP) ; *** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xFF ; MAC Address ; Wifi Networking M552 S1 ; Enable Wifi by default M555 P2 ; Set output to look like Marlin ; *** Uncomment if you have the optional PanelDue display ;M575 P1 B57600 S1 ; Communication parameters for the PanelDue G21 ; Work in millimeters G90 ; Send absolute positional coordinates... M83 ; ...but relative extruder moves ; Axis and motor configuration M569 P0 S0 ; Drive 0 goes forwards (X tower) M569 P1 S0 ; Drive 1 goes forwards (Y tower) M569 P2 S0 ; Drive 2 goes forwards (Z tower) M569 P3 S1 ; Drive 3 goes forwards (extruder 1) M574 X2 Y2 Z2 S1 ; Set endstop configuration (all endstops at high end, active high) ; *** The homed height is deliberately set too high in the following - these will be adjusted with delta auto-calibration M665 R216.411 L379.00 B140 H434.314 X0.101 Y0.295 Z0.0 ; Set delta radius, diagonal rod length, printable radius and homed height ;H461.071 M666 X1.79 Y0.20 Z-1.99 ; Endstop offset adjustments, these will be adjusted with delta auto-calibration M350 X64 Y64 Z64 E16 I1 ; Set microstepping to 32 for X, Y and Z and 16 for extruder stepper with interpolation M92 X800 Y800 Z800 ; Set axis steps/mm M906 X1000 Y1000 Z1000 E400 ; Set motor currents (mA) M201 X1000 Y1000 Z1000 E1000 ; Accelerations (mm/s^2) M203 X20000 Y20000 Z8000 E20000 ; Maximum speeds (mm/min) M566 X400 Y400 Z400 E400 ; Maximum instant speed changes mm/minute ; Fans M106 P1 T50 S255 H1 ; Set hotend heatsink FAN1 thermostatic control at 50°C ; Thermistors M305 P0 T100000 B3950 R4700 L54 H-97 ; Kapton bed heater thermistor M305 P1 R4700 T100000 B4725 C7.06e-8 ; E3D V6 Semitec GT-104 thermistor cartridge ; Heater configuration M307 H0 B1 ; Heater 0 (bed) use bang-bang control M307 H1 A512.9 C267.0 D9.0 B0 ; Heater 1 (hot end) use PID ; Tool definitions M563 P0 D0 H1 ; Define tool 0, the extruder G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures M92 E700 ; Set extruder steps per mm ; Z probe and compensation definition ; Change "H25" to "H3" AFTER commissioning your printer M558 P4 X0 Y0 Z0 H5 I1 ; FSRs with JohnSL board Z probe behaves as a switch and is not used for homing any axes G31 X0 Y0 Z-0.2 P500 ; MUST READ: http://www.sublimelayers.com/2017/05/fdffsd.html T0 ; Select tool 0, the hot end M501 ; Load config-override.g
thanks for helping me, i genuinely appreciate your time
-
May I ask why the steps for the extruder (M92) are missing?
Also the M92 I1 parameter is a bit pointless as it only works for 16x microstepping… -
May I ask why the steps for the extruder (M92) are missing?
Also the M92 I1 parameter is a bit pointless as it only works for 16x microstepping…He has a separate M92 E700 command later in config.g. The I1 parameter on the M350 command will work for the E drives because they are set to x16 microstepping.
But you have contributed many useful replies on this forum, so please don't let this stop you from contributing! I make mistakes in replies too.
-
@dc42 my pronouns are she/her/hers, please
here is the current default config.g from https://github.com/UltiBots/D300VS/blob/master/Firmware/171016-D300VS-1.19.2.zip. please confirm it contains the same error. i believe it does.
; Configuration file for UltiBots D300VS Delta 3D Printer ; version 1.0 for RepRapFirmware version 1.19.2 ; Communication and general M111 S0 ; Debug off M550 PD300VS ; Machine name and Netbios name (can be anything you like) M551 XXXXX ; Machine password (used for FTP) ; *** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xEF ; MAC Address ; Wifi Networking ; M552 S1 ; Enable Wifi by default M555 P2 ; Set output to look like Marlin ; *** Uncomment if you have the optional PanelDue display ;M575 P1 B57600 S1 ; Communication parameters for the PanelDue G21 ; Work in millimeters G90 ; Send absolute positional coordinates... M83 ; ...but relative extruder moves ; Axis and motor configuration M569 P0 S0 ; Drive 0 goes forwards (X tower) M569 P1 S0 ; Drive 1 goes forwards (Y tower) M569 P2 S0 ; Drive 2 goes forwards (Z tower) M569 P3 S1 ; Drive 3 goes forwards (extruder 1) M574 X2 Y2 Z2 S1 ; Set endstop configuration (all endstops at high end, active high) ; *** The homed height is deliberately set too high in the following - these will be adjusted with delta auto-calibration M665 R211.75 L360.31 B140 H445.00 X0.0 Y0.0 Z0.0 ; Set delta radius, diagonal rod length, printable radius and homed height M666 X0.0 Y0.0 Z0.0 ; Endstop offset adjustments, these will be adjusted with delta auto-calibration M350 X64 Y64 Z64 E16 I1 ; Set microstepping to 32 for X, Y and Z and 16 for extruder stepper with interpolation M92 X800 Y800 Z800 ; Set axis steps/mm M906 X1000 Y1000 Z1000 E500 ; Set motor currents (mA) M201 X1000 Y1000 Z1000 E1000 ; Accelerations (mm/s^2) M203 X20000 Y20000 Z20000 E3600 ; Maximum speeds (mm/min) M566 X1200 Y1200 Z1200 E300 ; Maximum instant speed changes mm/minute ; Fans M106 P1 T50 S255 H1 ; Set hotend heatsink FAN1 thermostatic control at 50°C ; Thermistors M305 P0 T100000 B3950 R4700 L54 H-97 ; Kapton bed heater thermistor M305 P1 R4700 T100000 B4725 C7.06e-8 ; E3D V6 Semitec GT-104 thermistor cartridge ; Heater configuration M307 H0 B1 ; Heater 0 (bed) use bang-bang control M307 H1 A512.9 C267.0 D9.0 B0 ; Heater 1 (hot end) use PID ; Tool definitions M563 P0 D0 H1 ; Define tool 0, the extruder G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures M92 E780 ; Set extruder steps per mm ; Z probe and compensation definition ; Change "H25" to "H3" AFTER commissioning your printer M558 P4 X0 Y0 Z0 H25 I1 ; FSRs with JohnSL board Z probe behaves as a switch and is not used for homing any axes G31 X0 Y0 Z-0.25 P500 ; MUST READ: http://www.sublimelayers.com/2017/05/fdffsd.html T0 ; Select tool 0, the hot end M501 ; Load config-override.g
-
upping the temp by 25° to 210 still yielded a failure last night.
a big lingering question i have – if my browser disconnects from the printer while printing, is the gcode console still guaranteed to log correctly? that is, how do i know that i am not experiencing some other error, and simply not seeing it in the log the next time i connect?
-
A delta with 16-tooth pulleys, GT2 belts, 0.9deg motors and x16 microstepping (like mine usually is) has 200 steps/mm. So if you set x64 microstepping in M350 and use M92 after that, 800 steps/mm would be correct.
-
i have stock motors on my d300vs, so should be 0.9. let's double-check the extruder motor (PG35L Micro Extruder Motor)
-
see this d300vs forum post
http://forum.ultibots.com/viewtopic.php?f=49&t=358&p=2075&hilit=microstepping#p2075
for a brief discussion of the stepping modes.
-
@ofloveandhate, can you share the STL of the object you want to print, just want to try printing it (but I don't have a delta :))
-
link is already above (extracted the link from the folder just now). it's in 3mf format.
http://danibrake.org/gcode/failing
i use simplify3d for the manually-placed supports. my same slicer settings work fine for the same model, printing on my taz6 and rostock max v2. i only have problems with my duet-powered machine.
-
two outstanding questions:
- in
M350 X64 Y64 Z64 E16 I1
, does this enable interpolation for all axes, or just the extruder? - if my browser disconnects from the printer while printing (this happens all the time), is the gcode console in the web interface still guaranteed to log correctly? that is, how do i know that i am not experiencing some logged error, and simply not seeing it in the log the next time i connect because it was missed due to not being connected?
- in
-
- as David pointed out above, only the extruder will have interpolation
- I don't think so (but I could be wrong). If I were you, I would enable event logging
-> add M929 P"eventlog.txt" S1 to your config.g, this way everything will be logged onto the SD card (and maybe the problem you are having )
-
thanks
-
was that information in "The I1 parameter on the M350 command will work for the E drives because they are set to x16 microstepping."? because that's a compound statement, and i didn't want to assume. so, am i correct in understanding that interpolation applies to all extruders listed in the M350 command, but only if the stepping mode is 1/16? where is this documented? i am happy to refer to documentation.
-
i enabled logging to a file. is there a way to write the current date or time into the filename, to prevent overwriting the old ones, or can i make it append? does it append by default?
-
-
here is the documentation for M350:
https://duet3d.dozuki.com/Wiki/Gcode#Section_M350_Set_microstepping_modeExcerpt from doc (emphasis mine) :
Parameters
Not all parameters need to be used, but at least ''one'' should be used. As with other commands, RepRapFirmware reports the current settings if no parameters are used.
Xnn Set stepping mode for the X axis
Ynn Set stepping mode for the Y axis
Znn Set stepping mode for the Z axis
Enn Set stepping mode for Extruder 0 (use Enn:nn:nn etc. for multiple extruders)
Inn Enable (nn=1) or disable (nn=0) microstep interpolation mode for the specified drivers, if they support it. The Duet WiFi and Duet Ethernet support interpolation (to x256 microstepping) only when configured for x16 microstepping. -
Concerning the log file:
Date and time (if available) are logged and events are appended to this file.
I believe that the duet will get the correct time if you connect via a browser (I don't know about paneldue)
Its all explained in the documentation: https://duet3d.dozuki.com/Wiki/Gcode#Section_M929_Start_stop_event_logging_to_SD_card -
thankyou
-
i re-ran my failing gcode (tobel60) with logging on. no information logged, despite a failure.
power up + 00:45:06 Event logging started power up + 14:22:41 Finished printing file tobel_small_60_norobust.gcode, print time was 14h 20m power up + 19:26:53 HTTP client 10.0.1.4 login succeeded 2018-02-28 08:34:28 Date and time set at power up + 19:26:53
this time, i printed with interpolation off, to see what would happen. no difference.