Second layer jump
-
I use the probe at the start of every print. First as a G30 command then as the G29 command
M106 P4 S100 ;Turn on chamber circ fan M140 S[bed0_temperature] ; Set bed to temp M141 S[extruder2_temperature] ; Chamber heaters G28 Z G28 X Y ; Home all G1 Z10 F1000 ; Bring up Z G1 X-55 Y-48 F12000 ; Offset for z probe M18 E0:1 ; Disable extruder stepper motors as they cause interference with BLtouch deployment M190 S[bed0_temperature] ; Hold until bed at temp G30 ; Probe bed single point and set offset of Z G29 ; Bed mesh probe M104 S[extruder0_temperature] T0 ; Set nozzle 1 to temp M104 S[extruder1_temperature] T1 ; Set nozzle 2 to temp G1 Z10 F400 ; Lower bed while heating G1 X-30 Y165 F12000 ; move head over purge bucket while heating G1 Z-1 F200 ; Lower head down to purge bucket M109 T0 S[extruder0_temperature] ; Hold until nozzle 1 at temp M109 T1 S[extruder1_temperature] ; Hold until nozzle 2 at temp M106 P4 S[extruder3_temperature] ; Turn set chamber fan speed (speed depends on Filament) G92 E0 ; Set extruder to 0 G1 E10 F120 ; Extrude 10mm of filament into purge G92 E0 ; Reset Extruder count to 0 G1 E-0.5 F500 ; Retract 0.5mm of filament G1 Z0.5 F900 ; Raise nozzle to .5mm over bed ;M201 X600 Y600 Z100 E10000 ; Set acceleration ;M207 X5 ; Set Jerk
-
The print I'm currently doing just started the second layer, but on this print I added a post processor to simplify3D that changes ; layer 2, to ; layer 2, \n M290 R0 S0. This seems to have worked around the problem, because at least now I don't have to stand at the printer waiting for the second layer to start. On this print that took 45minutes.
I'd very much like to know why this happens. Perhaps it is related to the other issue I have where the layer graph doesn't show the first layer until after it completes the second layer; at which time it shows that 8 layers are complete. I tried to remove all the comments from my Gcode (except any that start with L) to see if that would fix that issue or this issue, but no such luck. I'm still showing that I'm printing layer 1 even though I'm on layer.
-
Is the bed mesh being shut off on the second layer?
-
Can you share a complete gcode file? If it's too large to upload, zip it and change the file extension to .txt and upload it. Or host it on dropbox or similar.
-
@3dML no it’s still working. I can see the motor turning as the tool moves across the bed on any layer.
-
@Phaedrux I will get one uploaded shortly. But it really doesn’t matter the file, it seems to be an issue no matter the GCode file.
-
@Phaedrux Duet mount.txt
Here you go. This is a 7z file type zip. -
G90 M82 M106 S0 M106 P4 S100 ;Turn on chamber circ fan M140 S80 ; Set bed to temp M141 S0 ; Chamber heaters G28 Z G28 X Y ; Home all G1 Z10 F1000 ; Bring up Z G1 X-55 Y-48 F12000 ; Offset for z probe M18 E0:1 ; Disable extruder stepper motors as they cause interference with BLtouch deployment M190 S80 ; Hold until bed at temp G30 ; Probe bed single point and set offset of Z G29 ; Bed mesh probe M104 S260 T0 ; Set nozzle 1 to temp M104 S0 T1 ; Set nozzle 2 to temp G1 Z10 F400 ; Lower bed while heating G1 X-30 Y165 F12000 ; move head over purge bucket while heating G1 Z-1 F200 ; Lower head down to purge bucket M109 T0 S260 ; Hold until nozzle 1 at temp M109 T1 S0 ; Hold until nozzle 2 at temp M106 P4 S255 ; Turn set chamber fan speed (speed depends on Filament) G92 E0 ; Set extruder to 0 G1 E10 F120 ; Extrude 10mm of filament into purge G92 E0 ; Reset Extruder count to 0 G1 E-0.5 F500 ; Retract 0.5mm of filament G1 Z0.5 F900 ; Raise nozzle to .5mm over bed ;M201 X600 Y600 Z100 E10000 ; Set acceleration ;M207 X5 ; Set Jerk ; process Process1 ; layer 1, Z = 0.300 T0 G92 E0.0000 G1 E-1.0000 F2400 ; feature skirt ; tool H0.300 W0.600 G1 Z1.000 F1200 G1 X57.323 Y53.200 F12000 G1 Z0.300 F1200 G1 E-0.0500 F2400 G92 E0.0000
I think part of the layer count problem is from these lines in your start gcode:
G1 Z10 F1000 ; Bring up Z
G1 Z10 F400 ; Lower bed while heating
G1 Z-1 F200 ; Lower head down to purge bucket
G1 Z0.5 F900 ; Raise nozzle to .5mm over bed
You can try adding a ;E in the comments to make it think it's an extrusion move and not a layer change and ignore it. Another option is to move as much of the slicer start gcode into start.g which gets called before any slicer gcode. If you need moves after a temp is set by the slicer you can add a macro call in the slicer start gcode. This gets the Z moves out of the gcode file so they aren't parsed at all by DWC.
The negative Z move is a bit odd as well because you're in absolute coordinate mode when it's sent. I'm thinking that you probably want those Z moves to be in relative mode instead.
Not sure if this is directly related to the jump you're seeing but it may be.
Also, do you have Z hop enabled? There's always a larger Z move before the layer change.
G1 Z1.000 F1200 G1 X57.323 Y53.200 F12000 G1 Z0.300 F1200
-
@Phaedrux
With G90 set at the beginning of file those Z moves should not make any difference unless G91 or G92 Z## is called. The only G91 is at the end of the file and only G92 E0 after each non extrusion move. This may be because the slicer is set to relative extrusion. I found no G91 Z##.@baird1fa
Layer change comments from some slicers can cause issues with the gcode processing.; layer 1, Z = 0.300 ; layer 1, Z = 0.500
Try deleting these comments from the file and test. I don't see anything else wrong the the file other then 1mm Z hop is excessive for 0.2 layers.
-
I will see what I can do about moving some of that stuff out of the starting script and put it in either the start.g or a macro.
I do have Zhop enabled and the layer counts seem to work fine for every other layer, just not the first layer. It goes from layer 0 to layer 8 once it is done the first one. And then it is off by 8 layers for the rest of the print.
@3dML
I have run some test where I stripped out all of the comments, and in the case where there are no comments DWC didn't find any layers. I even did a test where I removed all the comments except for the layer comments and yielded the same result. But I haven't tried only removing the layer comments. -
The same goes for the end gcode
; layer end M18 E0:1 ; Disable Extruder Stepper motors G91 G1 Z100 G90 G28 Z ; Home Z G28 X Y ; Home X and Y axis M106 S0 ; Turn off cooling fan ;M98 P"0/macros/Slow_cool.g" ; Slowly cools the bed and build chamber *comment for non PC or ABS parts M104 S0 ; turn off extruder M140 S0 ; turn off bed M141 S0 ; Turn off chamber heater
G1 Z100
As I said, adding
;E
to those Z move lines may be enough to have the parser ignore them. -
@Phaedrux
I follow your thought now with the Z moves causing the parser to think it is a layer change but if that is the case why doesn't it trigger a layer change for every Z hop move? (The Programmer in me is highly intrigued and demands that I find an explanation for this Layer phenomena.)This may work but why not for Z hop?
As I said, adding ;E to those Z move lines may be enough to have the parser ignore them.
@baird1fa
The;Layer 1
part of the comment which is what I think DWC reads should be fine. I have not tested if the, Z = 0.300
part of the comment causes any issue. -
@Phaedrux
I had forgotten about that one in the ending script. I have completed moving things into macros. It wasn't a big deal to do it, I just needed to make 3 macros because of the heater settings and waits. I have tested the starting script for months and I'm happy with it so I don't really need to "convenience " of having it in the slicer.But I will add the E in the comment for that one in the ending script.
I'm going to leave my M280 R0S0 in there for now and I'll remove it if it is causing issues.
-
For the ending script you can put
M0
in the slicer end gcode and then put all of the commands instop.g
. M0 will call stop.g when present. -
The ;Layer 1, Z = 0.300 is not something that I'm doing intentionally, It is what ever is built into Simplify3D version 4.1.2. I can see if I can change that somehow and I'll report back with my findings.
-
@Phaedrux said in Second layer jump:
For the ending script you can put
M0
in the slicer end gcode and then put all of the commands instop.g
. M0 will call stop.g when present.I do like the sounds of that. Thanks.
-
So I have tested a new print with the start up macros rather than using the starting script I previously had.
It appears that the issue with the layers not showing up has been partially resolved. rather than showing layer 8 for the second layer, it now shows layer 2 and it show that layer 2 and 3 take about the same amount of time (But there should actually be 4 layers for the bottom). So it looks like layer 1 and 2 are missing and layer 2 is layer 3 and so on.
Having said all of that it still appears that I have the baby stepping issue. Any baby steps that get applied to the first layer seem to get doubled up or re-applied on the second layer.
Here is a screen capture of the layer time plot
-
Can you share one of your newly sliced gcode files after your changes?
-
@Phaedrux Of course Drag chain mount.gcode This one still has the Babystep reset at Layer 2 and it appears that I still need to do that.
-
Sorry, can you show again what's in start1, 2, 3.g? I know you've moved your commands over, but I'd still like to see exactly how everything is getting executed.
Also, if you disable Z hop, does the problem change?
Do you have anything in tool change files?