Unable to print form Slic3r…
-
I was running a test print this morning, well attempting to, and ran into a problem where it begins to read the gCode but then stops after a G28 and doesn't execute the next line.. I can manually execute the G1Z5 F5000 line, any ideas on what I'm missing or doing wrong?
[c]; generated by Slic3r 1.2.9 on 2017-12-17 at 10:13:33
; external perimeters extrusion width = 0.40mm
; perimeters extrusion width = 0.48mm
; infill extrusion width = 0.48mm
; solid infill extrusion width = 0.48mm
; top infill extrusion width = 0.48mmM107
M104 S195 ; set temperature
G28 ; home all axes
G1 Z5 F5000 ; lift nozzleM109 S195 ; wait for temperature to be reached
G21 ; set units to millimeters
G90 ; use absolute coordinates
M82 ; use absolute distances for extrusion
G92 E0
G1 Z0.300 F7800.000
G1 E-2.00000 F2400.00000
G92 E0[/c] -
Does the home all complete properly? Surprised that you can move the Z axis at 83.33mm/sec.
-
Looks like that is by default in Slic3r… I've since changed to something more reasonable but still no joy.
The file never appears on the Print Status tab in Duet but it does seem to run through some of the gcode, odd...
It's like there is some error in the code? Nothing being displayed on the screen though.
VB,
-
From what you say, it looks like it's getting stuck after the G28 which is why I asked if home all works. Does it? Is it really getting stuck before it moves the bed 5mm? Or is it stopping at the line after that which is to wait until the hot end reaches 195 degC ?
Ref the Z axis speed, it'll be limited by the maximum value you have in config.g (which I would hope is a lot lower) so it deosn't matter what speed slic3r tells it to move at.
-
Which firmware version are you using?
-
Firmware is 1.19.
Here is the modified code I'm running.. nothing more than a change to the speed from G1 Z5 F5000 to G1 Z5 F500.
; generated by Slic3r 1.2.9 on 2017-12-17 at 10:13:33 ; external perimeters extrusion width = 0.40mm ; perimeters extrusion width = 0.48mm ; infill extrusion width = 0.48mm ; solid infill extrusion width = 0.48mm ; top infill extrusion width = 0.48mm M107 M104 S195 ; set temperature G28 ; home all axes G1 Z5 F500 ; lift nozzle M109 S195 ; wait for temperature to be reached G21 ; set units to millimeters G90 ; use absolute coordinates M82 ; use absolute distances for extrusion G92 E0 G1 Z0.300 F7800.000 G1 E-2.00000 F2400.00000 G92 E0 G1 X121.523 Y121.522 F7800.000 G1 E2.00000 F2400.00000 G1 X123.046 Y120.071 E2.02774 F1800.000 G1 X124.761 Y118.592 E2.05759 G1 X126.546 Y117.207 E2.08737
Video of the process..
https://youtu.be/FIyLpCojO7kControl Panel after
https://drive.google.com/open?id=12F_lE0rCWGRclQii6nwgRt3J7q9UkkOS
https://drive.google.com/open?id=1vphqWVMi8lxWyq4ZBYycLHT10Eqg851zIt looks like it skips the Z5 move but successfully sets the heater for the hot end, it never turns it on though??
VB,
-
Are you printing a file on the SD card that was generated by slic3r, or are you trying to use slic3r to send the gcodes over USB?
-
I've copied the file to the SD card.
-
Maybe I configured the hot end incorrectly in the config.g?
;E3D M143 H1 S285 ; Set the max temp of the hot-end in c-default is 280c M305 P1 T100000 B4725 C7.060000e-8 R4700 ; E3D thermistor M307 H1 A324.6 C134.8 D3.7 B0 ;Set E3D to use PID mode
-
I'd say its doing the Z move but does not continue because there is no tool selected. Try putting a "T" command before anything else in the start gcode i.e if you only have one tool put TO at the beginning, before M104.
-
Does that not go in the config.sys? This is currently the last line in mine along with the tools section…
... ; Tools M563 P0 D0 H1 ; 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 ... ; Miscellaneous T0 ; Select first tool
Seems strange to have to have it in 2 places…
-
If you have T0 in config.sys then no, it shouldn't be necessary to put it in the start gcode. IMO it's it's best working practice though just in case there is something in a homing file that might change it.
That's a good point when I think about it. Can you post your home all file please.
-
I'll try adding the T0 to the Slic3r gCode and see if things change this morning.
I see there is a place for it to be added in Slic3r in the "Start G-code" section as a permanent item.
homeall.g
z homing when doing a homeall does not work correctly ; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool on Thu Nov 16 2017 16:04:38 GMT-0500 (Eastern Standard Time) ; Relative positioning G91 ; relative positioning G1 X-305 F2000 S1 ; move to limit G1 X5 F200 G1 X-10 F100 S1 G1 X.01 F2000 ; Offset to correct zero position. G90 ; absolute positioning G92 X0 G91 ; Relative positioning G1 Y305 F2000 S1 ;Run into stop G1 Y-5 F200 G1 Y10 F100 S1 ;Run into slowly G1 Y-5 F2000 ; Offset to correct high limit position. G90 G92 Y300 G91 ; Relative positioning G1 Z-350 S1 F300 ; Move Z down until the switch triggers G1 Z2.5 F300 G1 Z-5 S1 F150 ; Move Z down until the switch triggers G1 Z2.5 F150 G90 ; Back to absolute positioning G92 Z2.69 ; Tell the firmware where we are
config.g
I; Configuration file for Duet WiFi (firmware version 1.17 to 1.19) ; executed by the firmware on start-up ; ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool on Tue Nov 14 2017 17:05:20 GMT-0500 (Eastern Standard Time) ; General preferences M111 S0 ; Debugging off G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves M555 P1 ; Set firmware compatibility to look like RepRapFirmare M667 S1 ; Select CoreXY mode M208 X0 Y0 Z0 S1 ; Set axis minima M208 X300 Y300 Z320 S0 ; Set axis maxima ; Endstops M574 X1 Y2 Z1 S1 ; Set active low endstops M558 P0 X0 Y0 Z0 H5 F120 T6000 ; Set Z probe type to switch, the axes for which it is used and the dive height + speeds ;G31 P600 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height ;M557 X15:285 Y15:310 S20 ; Define mesh grid ; Drives M569 P0 S0 ; Drive 0 goes backwards M569 P1 S0 ; Drive 1 goes backwards M569 P2 S0 ; Drive 2 goes backwards Z axis M569 P3 S1 ; Drive 3 goes forwards M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation M92 X100 Y100 Z1600 E145.52 ; Set steps per mm M566 X900 Y900 Z12 E1200 ; Set maximum instantaneous speed changes (mm/min) M203 X12000 Y12000 Z360 E2500 ; Set maximum speeds (mm/min) M201 X500 Y500 Z250 E500 ; Set accelerations (mm/s^2) M906 X1700 Y1700 Z1700 E1700 I30 ; Set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Heaters ;M305 P0 T100000 B3974 R4700 ; Set thermistor + ADC parameters for heater 0 ;M143 H0 S120 ; Set temperature limit for heater 0 to 120C ; Thermistors and heaters -------------------------------- ;Bed M143 H0 S120 ; Set the maximum bed temperature in c-default is 110c M305 P0 T100000 B3974 C0 R4700 ; Bed thermistor M307 H0 A203.7 C745.2 D2.6 B0 ;Set bed to use PID mode ;E3D M143 H1 S285 ; Set the max temp of the hot-end in c-default is 280c M305 P1 T100000 B4725 C7.060000e-8 R4700 ; E3D thermistor M307 H1 A324.6 C134.8 D3.7 B0 ;Set E3D to use PID mode ; Tools M563 P0 D0 H1 ; 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 ; Network M550 PDuetPrinter ; Set machine name M552 S1 ; Enable network M586 P0 S1 ; Enable HTTP M586 P1 S0 ; Disable FTP M586 P2 S0 ; Disable Telnet ; Fans ;M106 P0 S1 I0 F500 H1 T45 ;M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off ;M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on ;M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on ;M106 P1 T60 H1 ; Hotend cooler: Enable fan to kick on at 60c. ;M106 P1 H-1 ; Filament cooler: Must do H-1, or it'll turn on with P0 for some reason. ;M106 P1 S0 ; Filament cooler: Must do, or will go full blast on start :S ; Custom settings are not configured ; Miscellaneous T0 ; Select first tool
thanks
-
I note that you have a comment at the start of your home all file which says "z homing when doing a homeall does not work correctly".
What you happens if you take out the G28 from Slic3R start gcode, (you can use a text editor to do that - no need to re-slice), home the printer manually, then try and print that file?
-
Yes, just a note when I was knocking out issues that my Z Axis wasn't homing.. fixed it though.
Commenting out the G28 command in the Slic3r code seems to have worked… the G1 Z5 F5000 ; lift nozzle move happened and the hot end heater kicked on. this really doesn't make sense..
However the test print was a total failure, lol! Nothing stuck to the table… and so I've found my next problem.
VB,
-
Lots of users have a G28 command in their slicer start script. So I am puzzled. I assume that the text "z homing when doing a homeall does not work correctly" is not actually part of your homeall.g file.
You have G92 X0 and G92 Y300 commands in homeall.g, which is unusual and not needed if you set the axis limits correctly using M208 commands. But I would not expect those to cause the problem you report.
-
So, if in my config.g file I have an M208. You're saying that it is effectively setting the G92 of the machine?
My current M208 command is the following which I'm now thinking is incorrect?
M208 X0 Y0 Z0 S1 ; Set axis minima
Assuming a 305x305x305 machine should it be the following is order important?
M208 X305 Y305 Z305 S1 ; Set axis maxima M208 X0 Y0 Z0 S1 ; Set axis minima
I then can remove the G92 commands from all the home'ing config's?
VB,
-
that first M208 line wants either the S1 removing or replacing with S0 to set the maxima
-
Here's my start gcode from Slic3r:
[[language]] M104 S[first_layer_temperature_0] ; set 1st nozzle heater to first layer temperature no wait M140 S[first_layer_bed_temperature]; set bed temp to first layer temp no wait G28 T0; set primary extruder M109 S[first_layer_temperature] ; heat nozzle to first layer temp and wait G92 E0; set E to 0 G1 X2 Y2 F14000.000; move to front left corner of bed G1 Z[first_layer_height] F6000.000; move to first layer height G1 X220 E24 F2000.000; extrude a line of filament across the front edge of the bed using the 1st extuder G92 E.5; set E to retraction length defined in printer settings G4 P1000; wait for ooze to slow G1 E0 F5400; execute reverse extrusion to retract by length defined in printer settings G1 Z0 F6000.000; lower nozzle height to 0 G1 X225; wipe purged noodle on edge of bed G92 E0; set E to 0 for 1st extruder
What's funny is I just recently fixed my homeall macro to match what I was manually doing in the start gcode. I just always had it that way and decided to finally make G28 work the same. That's why there are empty lines before/after right now.
-
…
Assuming a 305x305x305 machine should it be the following is order important?M208 X305 Y305 Z305 S1 ; Set axis maxima M208 X0 Y0 Z0 S1 ; Set axis minima
I then can remove the G92 commands from all the home'ing config's?
VB,
OK, thanks… S0 is for maxima and S1 is for minima in which case order is irrelevant.
M208 X305 Y305 Z305 S0 ; Set axis maxima M208 X0 Y0 Z0 S1 ; Set axis minima