RepRapPro Slicer Variables

From RepRap
Revision as of 12:32, 29 May 2013 by Adrianbowyer (talk | contribs)
Jump to: navigation, search

Introduction | Frame assembly | Y axis assembly | X axis assembly | Z axis assembly | Heated bed assembly | Extruder drive assembly | Hot end assembly | Wiring | Power supply | Commissioning | Printing | Multi‑colour/multi‑materials | Colour Printing - Slic3r | Colour Printing - RepRapPro Slicer | Maintenance | Troubleshooting | Improvements

A notice about these instructions!

These instructions are open to editing by everyone and anyone.
For the official, and most up to date, instructions, see the RepRapPro wiki here




Reprappro-slicer-variables.png

To get your RepRapPro 3D printer working properly you may have to tweak your software's variables. To do this, run the RepRapPro Slicer software and click the purple Variables button. This page describes modifying how the RepRapPro Slicer software works with your RepRapPro Tricolour 3D printer.

When you run the software it creates you a local copy of the distribution preferences file that you can edit, whilst preserving the original. In this way you can have your own versions of the many variables for the machine. These will be preserved when you download new versions of the software. But you can move to the default versions at any time. To see the latest version of the default file follow this link.

You can have multiple preferences files, and there is a selector at the top of the preferences window (see the picture on the right) to allow you to flip between them. They are stored in a directory called .reprap/Machine-name in your home directory (you have to enable "show hidden and backup files" to be able to see this folder). Any file in that directory with a name ending in .properties will be treated as a preferences file. The default is reprap.properties.

In the directory .reprap there is a file called Machine. This lists all the Machine-names that are stored in the .reprap directory with an asterisk (*) selecting the one in use.

This page lists the variables, and describes what they mean and do. It is divided into two sections: The first contains the general variables for the entire machine, and Extruder Variables contains the values specific to an extruder (of which there may be several, of course).

The values after each entry are the standard ones for RepRapPro Tricolour, but to check the latest values of these see here.

Except for really obvious cases, parameter names have their dimensions in brackets on the end of their names.

When you download a new version of the software you will probably want to find out if any new preferences have been added, or old ones deleted. That is to say you will want to find the differences between your preferences file and the distribution one. If you turn debugging on (click the Variables button in the host software and set Debug true to do this), exit the program, then re-run it the software will report any differences between the distribution file and yours.

Contents

General Preferences

BedTemperature(C)=55

The temperature to set the heated bed to. 55oC is a good value for working with polylactic acid (PLA). ABS will need a higher temperature (around 70oC).

Debug=false

Setting this true will cause the software to write diagnostics to System.out. It will also cause comments to be added to G Codes in the output so you can tell what's going on more easily (this will roughly double the size of the G Code file).

DumpX(mm)=50, DumpY(mm)=100

The position at which the extrude head can be run for a time to purge itself. If Shield is true (see below) this gives the centre point of the shield structure.

ExtrusionRelative=true

If true, this outputs extruder E codes as relative lengths. That is you get code like this: G1 X10 E1.7; The E value corresponds with the distance moved.

If it is false you get absolute E values; that is they all accumulate (giving quite large numbers after a while).

FanLayer=-1

Specifies the layer at which to turn on the optional cooling fan. -1 causes it never to come on. You probably don't want the fan on for the first few layers to improve adhesion to the bed. 3 might be a good value, therefore.

FiveD=true

When this is false, the software generates G-codes to control the X, Y, and Z movement of the machine and separate codes to control the extruders.

When this is true, the software generates G-codes that treat the extrusion as just another dimension. That is to say, it generates code like this:

G1 X23.9 Y39.0 Z0.2526 E66.5 F3000.0 ;print segment

G1 X23.9 Y39.7 Z0.2526 E67.2 F3000.0 ;print segment

So, for example, the second line is saying move 0.7mm in Y from where you last were and extrude 0.7mm of filament while doing so, all at 3000 mm/minute.

FoundationLayers=0

The number of layers of material to put down under the object being built before building proper starts. Set this to 0 or -1 to suppress the laying down of foundations.

InterLayerCooling=false

Setting this true causes RepRap to turn on the cooling fan between layers to freeze/set the build material being used. See Extruder0_CoolingPeriod(s) below.

MaxXYAcceleration(mm/minute/minute)=1200000

This has no effect unless RepRapAccelerations (see below) is set true.

This is the maximum rate at which the machine can accelerate horizontally (i.e. in X and Y). As standard G Codes are in mm/minute, this is in the rather eccentric unit of mm/minute2. If you want to run at constant speed, or you have RepRap firmware that does not support accelerations, setting this negative will turn off XY accelerations for the whole machine (regardless of the similar values for the extruders - see below).

When this is positive, the software generates G-codes that treat the feedrate as just another dimension. That is to say, it generates code like this:

G1 X23.9 Y39.0 Z0.2526 E66.5 F1500.0 ;print segment

G1 X23.9 Y39.7 Z0.2526 E67.2 F3000.0 ;print segment

So, for example, the second line is saying move 0.7mm in Y from where you last were, extrude 0.7mm of filament during the move, and accelerate from 1500.0 mm/minute to 3000.0 mm/minute while doing so. To make a movement at constant speed, simply set the feedrate first:

G1 F1500.0 ;set feedrate

G1 X23.9 Y39.7 Z0.2526 E67.2;print segment

This would do exactly the same movement and extrusion, but at a constant feedrate of 1500 mm/minute.

MaxZAcceleration(mm/minute/minute)=3000

This has no effect unless RepRapAccelerations (see below) is set true.

This is the maximum rate at which the machine can accelerate vertically (i.e. in Z). As G Codes are in mm/minute, this is in the rather eccentric unit of mm/minute2. If you want to run at constant speed, or you have RepRap firmware that does not support accelerations, setting this negative will turn off Z accelerations for the whole machine.

MaximumFeedrateX(mm/minute)=15000

The fastest speed that the X axis can be driven at without stalling or missing steps.

MaximumFeedrateY(mm/minute)=15000

The fastest speed that the Y axis can be driven at without stalling or missing steps.

MaximumFeedrateZ(mm/minute)=200

The fastest speed that the Z axis can be driven at without stalling or missing steps.

NumberOfExtruders=8

How many extruders are in use. Note that you can use the same extruder more than once. That is to say you can copy all the variables of Extruder0 (say), call them Extruder1, and edit them to get different behaviour (leaving the address the same - see below). Then you can flip between the two when you load objects to build.

PathOptimise=true

This takes more time over computing the movement of the RepRap machine when generating GCode files so that when the movements are actually executed in the machine they run faster. In particular, it attempts to reduce in-air movements.

RepRapAccelerations=false

If false, G Codes have the required Feed rate associated with them, and it is up to the firmware to compute accelerations and decelerations.

If true, the host code computes accelerations and outputs them as F values in G codes. These F values are expected to be linearly interpolated to achieve the accelerations required.

Shield=true

When set true, this causes a nozzle wiper shield to be built alongside the parts being laid down. The shield is defined by an STL file called shield.stl in the directory .reprap/Machine-name. This is scaled in Z to be the same height as your print. When you change extruders (between one colour and another, say) the extruder in use will be moved within the shield, where it will cool to its standby temperature. Meanwhile the new extruder will be warming up. When both are at the right temperature the new extruder will be moved within the shield (wiping the old one in the process) and then will extrude filament within the shield to prime itself. When it then moves out to start on your print it will wipe itself as well. The position of the centre of the shield is set by DumpX and DumpY (see above). Typically you will set it in a bit from the centre of one edge of the bed. The shield is automatically aligned so its long side is parallel with that edge. Make sure that it is in a place where all the extruders can reach it.

If you are using this software to print in mono and the shield is not needed, set this to false.

SlowXYFeedrate(mm/minute)=1500.0

This has no effect unless RepRapAccelerations is set true.

When accelerating in X and Y, this decides what speed the machine can do as a standing start. That is to say, at this speed the steppers won't lose steps if they just start running. Thus it is also the speed at which the machine goes round a right-angled corner, for example (as that stops X and starts Y, or vice versa).

SlowZFeedrate(mm/minute)=5.0

This has no effect unless RepRapAccelerations is set true.

When accelerating in Z, this decides what speed the machine can do as a standing start. That is to say, at this speed the steppers won't lose steps if they just start running.

StartRectangle=true

If this is true a print will start by plotting a rectangle on the bed around everything that will be printed. This serves to purge the nozzle. You can set both Shield and this true, but that's generally not needed.

WorkingX(mm)=200, WorkingY(mm)=200, WorkingZ(mm)=100

The lengths of movement in the three directions.

Extruder Variables

Reprappro-extruder-variables.png

Extruder0_Address=0

The address of the extruder. These addresses are used by the RepRap firmware to decide what physical device the host is talking to.

Extruder0_ArcCompensationFactor(0..)=8

When the extruder moves in an arc, too much material is laid down on the inside, and not enough on the outside. See this page for an explanation of what this does.

Extruder0_ArcShortSides(0..)=1

When the extruder moves in an arc, too much material is laid down on the inside, and not enough on the outside. See page for an explanation of what this does.

Extruder0_ColourB(0..1)=0.5, Extruder0_ColourG(0..1)=0.5, Extruder0_ColourR(0..1)=0.5

The colour of objects made by the material in this extruder in the graphics window.

Extruder0_CoolingPeriod(s)=-1

The time to turn the cooling fan on between layers. Set this negative to suppress cooling between layers. See InterLayerCooling above.

Extruder0_EvenHatchDirection(degrees)=45

The angle in degrees to use to infill even-numbered layers.

Extruder0_ExtrudeRatio(0..)=1

This decides how much extrudate actually to lay down for a given movement. Thus if you set this to 0.7 and the head moves 100mm, then 70mm of extrudate will be deposited in that move. You can use this to control how fat or thin the extrudate trail is, though the machine should be set up so that this factor is 1.0, except for microlayering. If you find for a given extruder that you consistently need to set this number to something other than 1, you should adjust the extruder drive steps per mm value to make this return to 1. For instructions, see here.

Extruder0_ExtrusionBroadWidth(mm)=-1

The gap between the infill zig-zag pattern used to fill the interior of an object when coarse infill is being used. Set this negative to suppress coarse infill.

Extruder0_ExtrusionDelayForLayer(ms)=50

For the first use of the extruder in a layer the time delay between turning on the extruder motor and starting to move the extruder to lay down material. See also ValveDelayForLayer (below).

Extruder0_ExtrusionDelayForPolygon(ms)=50

For the second and all subsequent use of the extruder in a layer the time delay between turning on the extruder motor and starting to move the extruder to lay down material. See also ValveDelayForPolygon (below).

Extruder0_ExtrusionFoundationWidth(mm)=2

The gap between the infill zig-zag pattern used to fill the interior of the foundations (if any).

Extruder0_ExtrusionHeight(mm)=0.24

The depth of each layer. Different extruders can have different depths; see Microlayering.

Extruder0_ExtrusionInfillWidth(mm)=0.5

The gap between the infill zig-zag pattern used to fill the interior of an object when fine infill is being used.

Extruder0_ExtrusionLastFoundationWidth(mm)=2

The gap between the infill zig-zag pattern used to fill the interior of the last layer of the foundations (if any).

Extruder0_ExtrusionOverRun(mm)=-1

The distance before the end of a sequence of infill or outline depositions to turn off the extruder motor. See also ValveOverRun (below). Set this negative to keep running to the end.

Extruder0_ExtrusionSize(mm)=0.5

The width of the filament laid down by the extruder.

Extruder0_ExtrusionSpeed(mm/minute)=2500

This sets the rate at which the extrudate exits the nozzle in millimeters per minute when the extruder is running in thin air (i.e. not building, or running the delay at the start of a layer or polygon - see above).

Extruder0_ExtrusionTemp(C)=205

The temperature to run the extruder at. 250oC is a good temperature for polylactic acid. For ABS use 240oC.

Extruder0_FastEFeedrate(mm/minute)=40000.0

When the extruder reverses to retracts its filament (and moves forward from a retraction) there is almost no resistance to the filament's movement, so it can move fast. This is the speed to use for these. See also Extruder0_Reverse(ms).

Extruder0_FastXYFeedrate(mm/minute)=2500.0

The fastest that this extruder can plot. This is the speed that the system will accelerate writing up to when accelerations are enabled. The system takes the minimum of this vale and the equivalent value for the machine overall when extruding.

Extruder0_FeedDiameter(mm)=1.75

This sets the diameter of the filament being fed into the extruder. When E codes are output, they will be in lengths of this feedstock filament; the nozzle (in general being smaller than the filament) will output proportionately more. If you set this negative, E codes will be output as lengths of extrudate out of the nozzle.

Extruder0_InFillMaterialType(name)=PLA-infill

The name of the extruder material to use for infill. This is commonly the same actual extruder used for the outline shell (i.e. it has the same address - see above), but this separate logical extruder allows you to set different variables for infill and outline. Or you can outline in one material and infill with another, of course. You can make an outline material simply name itself as its own infill. To suppress infill altogether (so you just get a shell round the outside) set the infill material name to "null" without the quotes.

Extruder0_InfillOverlap(mm)=0.2

The amount to make the infill and outline overlap. This causes the two to weld together. You can set it negative and make a gap instead.

Extruder0_InfillSpeed(0..1)=1

The fraction of the fastest extruder XY speed to do the infill at. See also FastXYFeedrate (above).

Extruder0_InsideOut=false

If this is true, the multiple outline shells of parts are printed from the inside out. If it is false they are printed from outside in.

Extruder0_Lift(mm)=0

When doing in-air non-extruding movements, lift the extruder by this distance above the surface being created. This will slow building down, and is not normally needed

Extruder0_MaterialType(name)=PLA

The name of this material.

Extruder0_MaxAcceleration(mm/minute/minute)=1200000.0

The fastest acceleration that this extruder can handle. Set this negative if the extruder must write at a constant speed. The system takes the minimum of this value and the equivalent value for the machine overall when extruding.

Extruder0_MiddleStart=false

When set true, this causes the system to start plotting outline patterns around objects from in the middle of their hatch infill, using a few of the hatch lines to do this. At the end of the outline, the head moves back to the start point. This means that the outline is clean, without dribble at the start and end. That happens in the middle of the solid, where it usually doesn't matter. Setting this false suppresses this behaviour, and the outlines are plotted as-is.

Extruder0_NumberOfShells(0..N)=2

Normally (when this is 2) RepRap puts two outlines round each layer before infilling it. You can create multiple outlines (or none) by changing this value.

Extruder0_OddHatchDirection(degrees)=-45

The angle in degrees to use to infill odd-numbered layers.

Extruder0_OutlineSpeed(0..1)=0.9

The fraction of the fastest extruder XY speed to do the outline at. See also FastXYFeedrate (above).

Extruder0_Purge(ms)=30000

The time to run the extruder to purge it.

Extruder0_Reverse(ms)=5000

The time to reverse the extruder motor when it is turned off, drawing the extrudate back into it and reducing dribble.

Extruder0_SingleLine=False

This is not currently used. It will flag up if an extruder is capable of drawing a single line, like a pen.

Extruder0_SlowXYFeedrate(mm/minute)=1500.0

If RepRapAccelerations is false this has no effect.

The speed that the machine can do a standing start from when using this extruder. That is, turning on the X and/or Y steppers at this speed will not lose steps.

Extruder0_SupportMaterialType(name)=PLA-support

The name of the material to use to support overhangs made from this material. You can set this the same as the material itself, then it will use the material to support itself. But - even if you want this - you will probably want different variables (such as infill width) for the support build. To do this just copy all the material extruder's variables, changing the extruder number and material name. You will then have two logical extruders driving the same physical extruder and can set their variables as differently as you like.

If you don't want support material to be used at all under overhangs for this material, set Extruder0_SupportMaterialType(name)=null.

Extruder0_SurfaceLayers(0..N)=2

This decides how many layers to fine-infill for areas that are upward- or downward-facing surfaces of the object.

Extruder0_ValveDelayForLayer(ms)=200

For extruders with valves. For the first use of the extruder in a layer the time delay between opening the extruder valve and starting to move the extruder to lay down material. See also ExtrusionDelayForLayer (above).

Extruder0_ValveDelayForPolygon(ms)=200

For extruders with valves. For the second and all subsequent use of the extruder in a layer the time delay between opening the extruder valve and starting to move the extruder to lay down material. See also ExtrusionDelayForPolygon (above).

Extruder0_ValveOverRun(mm)=-1

For extruders with valves. The distance before the end of a sequence of infill or outline depositions to close the extruder valve. See also ExtrusionOverRun (above). Set this negative to run to the end.

Extruder0_ValvePulseTime(ms)=-500

For extruders with valves. The time to pulse the valve to open or close it. Set this negative if no valve is in use.