General Configuration

chrisko

Introduction

The configuration of dxf2gcode is estabilshed by an configuration file. This configuration file is created after dxf2gcode has been started the first time.

For older versions (up to 22.02.2016):

It will be placed in the installation folder of dxf2gcode. A new folder including the file config.cfg will be created. This file can be edited by the user in order to adapt dxf2gcode to his needs.

For newer versions

A folder will be created in your user directory:
e.g. in windows (User:YourUserNameHere):
C:\Users\YourUserNameHere.config\dxf2gcode
This file can be also edited by the user but also by the configuration windows included in dxf2gcode.

Usiing the configuration window

You can open the configuration window by clicking in the Menu Bar >> Options; on the very top you will find Configuration. By clicking that the following windw will be openend.
configuration window
All the variables explained below will be shown in the window, therefore the given explainations are still valid.

Config Version

This description is valid for the dxf2gcode version dated January 2016

Description of the Sections

.

Section Version:

#  Section and variable names must be valid Python identifiers
#      do not use whitespace in names

# do not edit the following section name:
[Version]
    # do not edit the following value:
    config_version = 9.8

Section Paths

[Paths]
    # by default look for DXF files in
    import_dir = D:/Eclipse_Workspace/DXF2GCODE/trunk/dxf

    # export generated gcode by default to
    output_dir = D:

Section Filters

[Filters]
    pstoedit_cmd = C:\Program Files (x86)\pstoedit\pstoedit.exe
    pstoedit_opt = -f, dxf, -mm, -dt

Section Axis Letters

[Axis_letters]
    ax1_letter = X
    ax2_letter = Y
    ax3_letter = Z

Section Plane Coordinates

[Plane_Coordinates]
    axis1_start_end = 0.0
    axis2_start_end = 0.0

Section Depth Coordinates

[Depth_Coordinates]
    axis3_retract = 15.0
    axis3_safe_margin = 3.0
    axis3_start_mill_depth = 0.0
    axis3_slice_depth = -1.5
    axis3_mill_depth = -3.0

Section Feed Rates

[Feed_Rates]
    f_g1_plane = 400.0
    f_g1_depth = 150.0

Section General

[General]
    mode3d = False
    write_to_stdout = False
    show_disabled_paths = True
    live_update_export_route = False
    split_line_segments = False
    automatic_cutter_compensation = False
    # machine types supported: milling; lathe; drag_knife
    machine_type = milling
    # The unit used for all values in this file
    tool_units = mm

Section Cutter Compensation

[Cutter_Compensation]
    # if done_by_machine is set to False DXF2GCODE will create a virtual path for G41 and G42 command. And output
    # is set to G40; i.e. it will create the path that normally your machine will create with cutter compensation
    done_by_machine = False

Section Drag Knife Options

[Drag_Knife_Options]
    # drag_angle: if larger than this angle (in degrees), tool retracts to dragDepth
    # the dragDepth is given by axis3_slice_depth
    drag_angle = 20.0

Section Route Optimisation

[Route_Optimisation]
    default_TSP = False

    # Path optimizer behaviour:
    #  CONSTRAIN_ORDER_ONLY: fixed Shapes and optimized Shapes can be mixed. Only order of fixed shapes is kept
    #  CONSTRAIN_PLACE_AFTER: optimized Shapes are always placed after any fixed Shape
    TSP_shape_order = CONSTRAIN_ORDER_ONLY
    mutation_rate = 0.95
    max_population = 20
    max_iterations = 300
    begin_art = heuristic

Section Import Parameters

[Import_Parameters]
    point_tolerance = 0.001
    spline_check = 3
    fitting_tolerance = 0.001
    # insert elements (which are part of a block) to layer where the block is inserted
    insert_at_block_layer = False

Section Layer Options

All of these options are explained in a dedicated wiki page, please refer to:
https://sourceforge.net/p/dxf2gcode/wiki/LayerControl/

[Layer_Options]
    id_float_separator = :

    # mill options
    mill_depth_identifiers = MillDepth, Md, TiefeGesamt, Tg
    slice_depth_identifiers = SliceDepth, Sd, TiefeZustellung, Tz
    start_mill_depth_identifiers = StartMillDepth, SMd, StartTiefe, St
    retract_identifiers = RetractHeight, Rh, Freifahrthoehe, FFh
    safe_margin_identifiers = SafeMargin, Sm, Sicherheitshoehe, Sh
    f_g1_plane_identifiers = FeedXY, Fxy, VorschubXY, Vxy, F
    f_g1_depth_identifiers = FeedZ, Fz, VorschubZ, Vz

    # tool options
    tool_nr_identifiers = ToolNr, Tn, T, WerkzeugNummer, Wn
    tool_diameter_identifiers = ToolDiameter, Td, WerkzeugDurchmesser, Wd
    spindle_speed_identifiers = SpindleSpeed, Drehzahl, RPM, UPM, S
    start_radius_identifiers = StartRadius, Sr

Section Tool Parameters

Withing this Section you can create all the tools which are possible to be choosen in the Layer Tab Dropdown.
Possible Parameters of a tool:
diameter:The diamteter of the given tool number. For the intergration in EMC2 this should match with the tool table in there. Unit is as defined as to be the choosen units of [mm] or [inch]
speed: The speed which should be set for the given tool. Defined unit is [rpm]
start_radius: As an standard when cutting with enabled cutter compensation done by maschine a lead in move is created. This lead in move is starting with a straight line an a radius. This value give the length of the line and the additional radius which is added to the diameter of the too. Unit is as defined as to be the choosen units of [mm] or [inch}

[Tool_Parameters]
    [[1]]
        diameter = 2.0
        speed = 6000.0
        start_radius = 0.2

    [[2]]
        diameter = 2.0
        speed = 6000.0
        start_radius = 1.0

    [[10]]
        diameter = 10.0
        speed = 6000.0
        start_radius = 2.0

Section Custom Actions

[Custom_Actions]
    [[custom_gcode]]
        gcode = '"""(change subsection name and insert your custom GCode here. Use triple quotes to place the code on several lines)"""'

Section Logging

[Logging]
    # Logging to textfile is enabled automatically for now
    logfile = logfile.txt

    # log levels are, in increasing importance:
    #      DEBUG; INFO; WARNING; ERROR; CRITICAL
    # log events with importance >= loglevel are logged to the
    # corresponding output

    # this really goes to stderr
    console_loglevel = DEBUG

    file_loglevel = DEBUG

    # logging level for the message window
    window_loglevel = INFO

FAQ - Frequently asked questions

I have several passes shown on my maschine / screen how can i have one only pass in general.

In general the tool uses the configuration parameters as standard settings when loading a dxf. As a standard the following values are stored in the configuration file:

    # Relative depth for each cut (third axis' coordinate will be decreased by this value at each step).
    axis3_slice_depth = -1.5
    # Relative final third axis' depth.
    axis3_mill_depth = -3.0

By increasing the axis3_slice_depth to a smaller (keep in mind we talk about negative values) or equal value then the axis3_mill_depth you end up with only one pass. Of course you can do that also in the GUI every time you open the file, but assuming you use a laser cutter or similar you just want to neglect this parameter therefore change it in the configuration.

    # Relative depth for each cut (third axis' coordinate will be decreased by this value at each step).
    axis3_slice_depth = -3.0
    # Relative final third axis' depth.
    axis3_mill_depth = -3.0

==> You wil find it in the GUI also >> Maschine config >>Third Axis defaults


Related

Wiki: Home

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.