Material Keep-Warm Temp Can Cause Clog?

Mikk36
Posts: 65
Joined: 08 Nov 2014, 14:46

Re: Material Keep-Warm Temp Can Cause Clog?

Post by Mikk36 »

Assuming a bed temperature of 90, M140<BED> will produce M14090.
What you want is M140 S<BED>, which will produce M140 S90.
The syntax is all on the reprap wiki, which I linked for you.

Not sure about your extruder temperatures being mixed up. Maybe check the mapping? (Don't have a dual-extruder printer myself, so that area is a bit unknown to me)
Dreide
Posts: 66
Joined: 07 Nov 2014, 15:23

Re: Material Keep-Warm Temp Can Cause Clog?

Post by Dreide »

inventabuild wrote:I was using the following code and not only did my bed not heat, but my extruders got switched around so Ext+0 became Ext+1 and vice versa. Is it a problem w/ my gcode or a bug in slicer?

T<EXT+0>
M104 S<TEMP> ;start heating EXT+0, no wait
T<EXT+1>
M104 S<TEMP> ;start heating EXT+1, no wait
M140<BED> ;start heating bed, no wait
T<EXT+0>
M109 S<TEMP> ;set nozzlet temp, wait
T<EXT+1>
M109 S<TEMP> ;set nozzlet temp, wait
M190<BED> ;set bed temp, wait
Assuming that this was the code for "Select extruder" and you don't want the extruder numbering being switched, you have to make sure that the last T command is T<EXT+0> and you would only need to wait for the temperature of <EXT+0> to be reached. The bed heating should go into "Prefix" anyway (IMHO), so how about:

"Prefix":
... bed heating ...

"Deselect extruder":
M104 S<TEMP>

"Select extruder":
T<EXT+0>
M109 S<TEMP>
inventabuild
Posts: 271
Joined: 09 Nov 2014, 23:03

Re: Material Keep-Warm Temp Can Cause Clog?

Post by inventabuild »

Mikk36 wrote:Assuming a bed temperature of 90, M140<BED> will produce M14090.
What you want is M140 S<BED>, which will produce M140 S90.
The syntax is all on the reprap wiki, which I linked for you.

Not sure about your extruder temperatures being mixed up. Maybe check the mapping? (Don't have a dual-extruder printer myself, so that area is a bit unknown to me)
Thanks.
inventabuild
Posts: 271
Joined: 09 Nov 2014, 23:03

Re: Material Keep-Warm Temp Can Cause Clog?

Post by inventabuild »

Dreide wrote:
inventabuild wrote:I was using the following code and not only did my bed not heat, but my extruders got switched around so Ext+0 became Ext+1 and vice versa. Is it a problem w/ my gcode or a bug in slicer?

T<EXT+0>
M104 S<TEMP> ;start heating EXT+0, no wait
T<EXT+1>
M104 S<TEMP> ;start heating EXT+1, no wait
M140<BED> ;start heating bed, no wait
T<EXT+0>
M109 S<TEMP> ;set nozzlet temp, wait
T<EXT+1>
M109 S<TEMP> ;set nozzlet temp, wait
M190<BED> ;set bed temp, wait
Assuming that this was the code for "Select extruder" and you don't want the extruder numbering being switched, you have to make sure that the last T command is T<EXT+0> and you would only need to wait for the temperature of <EXT+0> to be reached. The bed heating should go into "Prefix" anyway (IMHO), so how about:

"Prefix":
... bed heating ...

"Deselect extruder":
M104 S<TEMP>

"Select extruder":
T<EXT+0>
M109 S<TEMP>
Thanks for the info. So how will it ever select T<EXT+1> if T<EXT+0> is always the last extruder in the Select extruder tab?
Dreide
Posts: 66
Joined: 07 Nov 2014, 15:23

Re: Material Keep-Warm Temp Can Cause Clog?

Post by Dreide »

inventabuild wrote:So how will it ever select T<EXT+1> if T<EXT+0> is always the last extruder in the Select extruder tab?
The counting is relative to the variable EXT and EXT will be counted up by KISSlicer each time it switches extruders and inserts the G-code for "Select Extruder".
Note that the extruder counting within the KISSlicer-GUI is 1-based, whereas for the T commands it is 0-based, and it is easiest to assume that it is 0-based for the EXT variable as well. Moreover, when evaluating the EXT expressions, like <EXT+1>, KISSlicer uses modulo calculus, i.e., the value rolls over to 0 if it would be 2 otherwise (assuming the number of extruders is 2), i.e., T<1+0> => T1, but T<1+1> => T0.
For "Deselect Extruder" EXT refers to the extruder being deselected, for "Select Extruder" EXT refers to the extruder being selected, according to the internal KISSlicer extruder assignments. How you map EXT to the T commands is your choice and that is why you can basically swap the extruder mapping by using T<EXT+1>.
Post Reply