[EMC]
VERSION = 1.1
MACHINE = owordm6-ui
# Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
DEBUG = 0

[DISPLAY]
GLADEVCP= osubdemo.ui
DISPLAY = axis
OPEN_FILE= ./toolchange-demo.ngc
CYCLE_TIME = 0.100
HELP_FILE = doc/help.txt
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
MAX_FEED_OVERRIDE = 1.2
MAX_SPINDLE_OVERRIDE = 1.0
PROGRAM_PREFIX = ../../nc_files/
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
#EDITOR = geany
INCREMENTS = 1 mm, .01 in, .1mm, 1 mil, .1 mil, 1/8000 in

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python3

[RS274NGC]
SUBROUTINE_PATH = ../../nc_files/remap_lib/common_nc_subs

# remap T<pocket> to a named oword subroutine.
# The tool number will be passed as parameter #1
# The pocket number will be passed as parameter #2
T_COMMAND= o<tdemo>call

# remap M6 to a named oword subroutine.
# the tool number currently loaded (in spindle) is passed as parameter #1
M6_COMMAND= o<m6demo>call
# to use the M69 iocontrol based toolchange:
#M6_COMMAND= o<m6remap>call

# handler gsub called on IoAborts - to cleanup HAL pins etc
ON_ABORT_COMMAND= o<on_abort>call

LOG_LEVEL = 2
# File containing interpreter variables
PARAMETER_FILE = sim_mm.var

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
BASE_PERIOD  = 0
SERVO_PERIOD = 1000000

[TASK]
TASK = milltask
CYCLE_TIME = 0.001

[HAL]
HALUI = halui
HALFILE = core_sim.hal
HALFILE = simulated_home.hal

[TRAJ]
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
DEFAULT_LINEAR_VELOCITY = 30.48
MAX_LINEAR_VELOCITY = 53.34
DEFAULT_LINEAR_ACCELERATION = 508
MAX_LINEAR_ACCELERATION = 508
POSITION_FILE = position_mm.txt

[EMCIO]
# Name of IO controller program, e.g., io

#  explicitly support the start-change protocol.
#  needs to be explicitly enabled for backwards compatibility.
#  NB: if the start-change pin isn't used it needs to be looped like below to
#  start-change-ack or an M6 will hang waiting for start-change-ack:
#  net start-change iocontrol.0.start-change  iocontrol.0.start-change-ack
#EMCIO = iov2 -support-start-change

# starting iov2 like so will create the start-change and start-change-ack pins
# but the start-change protocol remains disabled - start-change remains low and
# start-change-ack is ignored:

EMCIO = iov2

CYCLE_TIME = 0.100
TOOL_TABLE = sim_mm.tbl
TOOL_CHANGE_POSITION = 0 0 50.8

[KINS]
KINEMATICS = trivkins
JOINTS = 3

[AXIS_X]
MIN_LIMIT = -254
MAX_LIMIT = 254
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508

[JOINT_0]
TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
MIN_LIMIT = -254
MAX_LIMIT = 254
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 127
HOME_LATCH_VEL = 25.4
HOME_SEQUENCE = 1
HOME_IS_SHARED = 1

[AXIS_Y]
MIN_LIMIT = -254
MAX_LIMIT = 254
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508

[JOINT_1]
TYPE = LINEAR
HOME = 0.000
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
MIN_LIMIT = -254
MAX_LIMIT = 254
HOME_OFFSET = 0.0
HOME_SEARCH_VEL = 127
HOME_LATCH_VEL = 25.4
HOME_SEQUENCE = 1

[AXIS_Z]
MIN_LIMIT = -50.8
MAX_LIMIT = 101.6
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508

[JOINT_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 30.48
MAX_ACCELERATION = 508
MIN_LIMIT = -50.8
MAX_LIMIT = 101.6
HOME_OFFSET = 25.4
HOME_SEARCH_VEL = 127
HOME_LATCH_VEL = 25.4
HOME_SEQUENCE = 0
HOME_IS_SHARED = 1
