Machine Configuration

All of the machine configuration data is stored in a file called machines.xml in the ReplicatorG application folder. This is an XML file that contains configuration data for each machine in an easily readable/editable format.

<machines> Element

This is the top level element of your XML file. All of the indivdual machines need to be contained within this element. There should be only one <machines> element in your machines.xml configuration file.

<machine> Element

This element represents each individual machine, and must be the child of the <machines> element. It contains the various machine parameters, including the <driver> element.

Properties

None.

Child Elements

<name> - Since 0001

This is the name of the machine that will be used in the Machine -> Drivers dropdown menu. It a very simple element that only contains a string that specifies the name of the machine.

<geometry> - Since 0001

This is for configuring and specifying the machine geometry. This includes information on the type of positioning system used, the resolution on each axis, working volume, etc. It currently doesn't actually do much, but it is intended for future usage and automatic machine configuration. Please refer to the geometry section for a full description of the available configuration options.

<driver> - Since 0001

This is the driver configuration element. It specifies which driver to use and how that driver is to be configured. Please refer to the drivers section for a full description of the available configuration options.

Example

An example <machine> configuration is below:

<machine>
    <name>3-Axis Simulator</name>
    <geometry type="cartesian">
        <axis id="x" length="300" maxfeedrate="1000" scale="11.4485"/>
        <axis id="y" length="300" maxfeedrate="1000" scale="11.4485"/>
        <axis id="z" length="300" maxfeedrate="100" scale="320"/>
    </geometry>
    <tools>
        <tool name="Generic Extruder" type="extruder" material="abs" motor="true" floodcoolant="true" mistcoolant="true" fan="true" valve="true" collet="true" heater="true"/>
    </tools>
    <clamps></clamps>
    <driver name="null"> <!-- use a fake driver -->
        <speedup>20</speedup> <!-- amount to speed up print process:  1 = realtime, 2 = 2x, 10 = 10x, etc. -->
    </driver>
</machine>

<driver> Element

This element contains the driver configuration data for your specific machine. It must be a child element of a <machine> element. Each driver can have wildly different configuration options, which are described in fuller detail on each driver's information page. You can read more about them in the.

The type of driver is specified by the name property. The name determines which driver class is loaded, and must reference a valid driver that the current ReplicatorG understands. An example driver config is below:

<driver name="null"> <!-- use a fake driver -->
   <wait>25</wait> <!-- in milliseconds -->
</driver>

Example Configuration File

Here is the example file that currently ships with ReplicatorG:

<machines>
    <!-- do not remove this machine configuration!!! -->
    <machine>
        <name>3-Axis Simulator</name>
        <geometry type="cartesian">
            <axis id="x" length="300" maxfeedrate="1000" scale="11.4485"/>
            <axis id="y" length="300" maxfeedrate="1000" scale="11.4485"/>
            <axis id="z" length="300" maxfeedrate="100" scale="320"/>
        </geometry>
        <tools>
            <tool name="Generic Extruder" type="extruder" material="abs" motor="true" floodcoolant="true" mistcoolant="true" fan="true" valve="true" collet="true" heater="true"/>
        </tools>
        <clamps></clamps>
        <driver name="null"> <!-- use a fake driver -->
            <speedup>20</speedup> <!-- amount to speed up print process:  1 = realtime, 2 = 2x, 10 = 10x, etc. -->
        </driver>
    </machine>
    <!-- end protected configuration -->
    <machine>
        <name>Darwin</name>
        <geometry type="cartesian">
            <axis id="x" length="300" maxfeedrate="1000" scale="11.4485"/>
            <axis id="y" length="300" maxfeedrate="1000" scale="11.4485"/>
            <axis id="z" length="300" maxfeedrate="100" scale="320"/>
        </geometry>
        <tools>
            <tool name="Lasercut Extruder v1.0" type="extruder" material="abs" motor="true" floodcoolant="false" mistcoolant="false" fan="true" valve="false" collet="false" heater="true"/>
        </tools>
        <clamps></clamps>
        <driver name="serialpassthrough">
            <!-- optional, defaults to first serial port found.    <portname>COM1</portname> -->
            <!-- optional, defaults to 19200.                      <rate>19200</rate> -->
            <!-- optional, defaults to 8.                          <parity>8</parity> -->
            <!-- optional, defaults to 1.                          <databits>1</databits> -->
            <!-- optional, defaults to N.                          <stopbits>N</stopbits> -->
        </driver>
        <warmup>
            (homing routing)
            G91
            G1 Z10 F75
            G1 X-999 Y-999 F2000
            G92 X0 Y0 (set xy as home)
            M104 S200
            M108 S20
            M101
            G04 P10000
            M103
            G04 P5000
            G1 X150 Y150
            G1 Z-10 F75
            G92 X0 Y0 Z0
            (ready to print)
        </warmup>
        <cooldown>
            M104 S20
            G91
            G1 Z10 F50
        </cooldown>
    </machine>
</machines>
Unless otherwise stated, the content of this page is licensed under GNU Free Documentation License.