Heaters won't shut off after a print with 1.19



  • In my end script for S3D I have:

    G92 E0; ZERO THE EXTRUDER
    G1 E-10 F2400; RETRACT 3MM AT 40MM/S
    M104 S0 ; turn off extruder
    M140 S0 ; turn off bed

    This has always worked for shutting down the heaters. I updated to 1.19 today and this command is no longing working. Heaters remain at temp. Has the GCODE command changed?


  • administrators

    Those commands should still work. Is this reproducible?



  • I've been trying to tune retraction and heat with the temperature issues I've been having on my corexy with correctipn a 1000mm Bowden tube and everytime it finishes the print it's still at temperature. When I get back from work today I will be trying again. So far I'm on my 23rd attempt with same results, heaters stay on after print finishes and blobs on corners.

    Edit: if I hit pause print and then cancel. The heaters shut off.

    Another edit: duet web control constantly disconnects every couple of minutes.


  • administrators

    Please open the gcode file you are trying to print in a text editor, and post the last 30 or so lines of that file here (or more lines if there are a lot of comment lines after the last gcode commands). Or copy the gcode file to a file sharing site and publish the link to it here.



  • I just grabbed a clump of code from the end of the print I have been using

    G1 X100.527 Y151.406 E0.6203
    G1 X99.848 Y151.406 E0.0250
    G1 X88.594 Y140.152 E0.5850
    G1 X88.594 Y140.831 E0.0250
    G1 X99.169 Y151.406 E0.5497
    G1 X98.490 Y151.406 E0.0250
    G1 X88.594 Y141.510 E0.5144
    G1 X88.594 Y142.188 E0.0250
    G1 X97.812 Y151.406 E0.4791
    G1 X97.133 Y151.406 E0.0250
    G1 X88.594 Y142.867 E0.4438
    G1 X88.594 Y143.546 E0.0250
    G1 X96.454 Y151.406 E0.4085
    G1 X95.775 Y151.406 E0.0250
    G1 X88.594 Y144.225 E0.3733
    G1 X88.594 Y144.904 E0.0250
    G1 X95.096 Y151.406 E0.3380
    G1 X94.417 Y151.406 E0.0250
    G1 X88.594 Y145.583 E0.3027
    G1 X88.594 Y146.261 E0.0250
    G1 X93.739 Y151.406 E0.2674
    G1 X93.060 Y151.406 E0.0250
    G1 X88.594 Y146.940 E0.2321
    G1 X88.594 Y147.619 E0.0250
    G1 X92.381 Y151.406 E0.1968
    G1 X91.702 Y151.406 E0.0250
    G1 X88.594 Y148.298 E0.1615
    G1 X88.594 Y148.977 E0.0250
    G1 X91.023 Y151.406 E0.1263
    G1 X90.345 Y151.406 E0.0250
    G1 X88.594 Y149.655 E0.0910
    G1 X88.594 Y150.334 E0.0250
    G1 X89.666 Y151.406 E0.0557
    G1 X88.987 Y151.406 E0.0250
    G1 X88.594 Y151.013 E0.0204
    G1 E-8.0000 F3600
    ; layer end
    G92 E0; ZERO THE EXTRUDER
    G1 E-10 F2400; RETRACT 3MM AT 40MM/S
    M104 S0 ; turn off extruder
    M140 S0 ; turn off bed
    G1 X0 Y310 F6000
    M300 S1849 P53
    M300 S0 P53
    M300 S1849 P53
    M300 S0 P53
    M300 S1849 P53
    M300 S0 P53
    M300 S1849 P428
    M300 S932 P428
    M300 S1593 P428
    M300 S1849 P107
    M300 S0 P214
    M300 S1593 P107
    M300 S1849 P857
    M84 ; disable motors
    ; Build Summary
    ; Build time: 0 hours 32 minutes
    ; Filament length: 2821.6 mm (2.82 m)
    ; Plastic volume: 6632.56 mm^3 (6.63 cc)
    ; Plastic weight: 8.29 g (0.02 lb)
    ; Material cost: 0.21


  • administrators

    Thanks, I'll try that ending gcode on my next print.


  • administrators

    I have reproduced this issue, and will prepare a fix for release 1.19.1.


  • administrators

    I have tracked this one down. It's failing because M104, M140 and M300 are all commands that are deferred until the preceding movement commands have completed. However, the deferred command queue is only 8 commands long, and the number of M300 commands you have alone exceeds that.

    The firmware should handle this case by executing the oldest queued move immediately so that no commands are lost, but that part evidently isn't working. We will fix it in the next release. Meanwhile, please add M400 before your block of M300 commands. That will force the firmware to wait for movement to cease.



  • @zakfarias. This is nothing to do with your heaters shutting off but I noticed that at the end of the file, you have an 8mm retraction just before ";layer end". Immediately after this, presumably in the end gcode the extruder is zeroed an then another 10mm retraction happens. So at the end of a print you are retracting 18mm of filament. That's quite a lot and could potentially lead to molten filament being drawn up past the heat break where it will solidify and could potentially cause a blockage. Just a thought…....



  • I did notice that when posting to DC42…however it definitely isn't retracting that much at the end. I am wondering if maybe the DUET is calling the print done before Simplify 3D end layer gcode starts...whoch would explain why adjusting the end retract and heated off isn't working. But how would it be doing that...haha so many unexplained mysteries this week on this machine.

    Sorry didn't notice your post DC, I will edit as you say. Thanks!



  • Once done that edit that David recommended, you might want to take out that other retract because then it will be acted on.



  • OKAY So I ended up adding the M400 and then for fun said screw it and got rid of all the M300. Works like a charm now! Also dialed back the additional retraction to 2mm. So at least the heater safety issue seems to be resolved


Locked
 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.