[EMC]
VERSION = 1.1
MACHINE = PUMA (pumakins,switchkins)
DEBUG = 0

[KINS]
KINEMATICS = pumakins
JOINTS = 6

[HAL]
HALUI   = halui
HALFILE = LIB:basic_sim.tcl
HALFILE = puma_dh.hal
HALCMD  = loadusr -W pumagui
HALCMD  = net :kinstype-select <= motion.analog-out-03 => motion.switchkins-type
POSTGUI_HALFILE = puma_postgui.hal

[RS274NGC]
    USER_M_PATH = ./mcodes
SUBROUTINE_PATH = ./remap_subs
   HAL_PIN_VARS = 1
          REMAP = M428  modalgroup=10  ngc=428remap
          REMAP = M429  modalgroup=10  ngc=429remap
          REMAP = M430  modalgroup=10  ngc=430remap
PARAMETER_FILE = puma.var
# G21 reqd here since this is mm config and default G20
RS274NGC_STARTUP_CODE = G21 G10L2P0 x450 y100 z-495 a-180 (debug, ini: startup offsets)

[HALUI]
# MDI-COMMANDS 00,01,02 (remapped) do not alter limits when switching:
# M428:pumakins      (kinstype==0 startupDEFAULT)
# M429:identity kins (kinstype==1)
# M430:userk kins    (kinstype==2)
MDI_COMMAND = M428
MDI_COMMAND = M429
MDI_COMMAND = M430
# MDI-COMMANDS 03,04,05 ALTER limits when switching
MDI_COMMAND = M128
MDI_COMMAND = M129
MDI_COMMAND = M130

[DISPLAY]
DISPLAY = axis
CYCLE_TIME = 0.200
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
DEFAULT_LINEAR_VELOCITY = 30.0
DEFAULT_ANGULAR_VELOCITY = 20.0
MAX_FEED_OVERRIDE = 2.0
PROGRAM_PREFIX = ../../nc_files/
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PYVCP = puma.xml
EDITOR = geany

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

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[TRAJ]
COORDINATES = X Y Z A B C
LINEAR_UNITS = mm
ANGULAR_UNITS = deg
DEFAULT_LINEAR_VELOCITY = 30.0
DEFAULT_ANGULAR_VELOCITY = 30.0
MAX_LINEAR_VELOCITY = 100.0
MAX_ANGULAR_VELOCITY = 50.0
DEFAULT_LINEAR_ACCELERATION = 100.0
MAX_LINEAR_ACCELERATION = 200.0

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = puma.tbl

[JOINT_0]
TYPE = ANGULAR
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
MIN_LIMIT = -170.0
MAX_LIMIT =  170.0
HOME_SEQUENCE = 0
HOME_OFFSET = 0
HOME = 0
[JOINT_1]
TYPE = ANGULAR
HOME = 0.0
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
MIN_LIMIT = -85
MAX_LIMIT =  50
HOME_OFFSET = 0
HOME = 0
HOME_SEQUENCE = 0
[JOINT_2]
TYPE = ANGULAR
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
MIN_LIMIT = -70
MAX_LIMIT =  75
HOME_OFFSET = 0
HOME = 0
HOME_SEQUENCE = 0
[JOINT_3]
TYPE = ANGULAR
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
MIN_LIMIT = -250
MAX_LIMIT =  250
HOME_SEQUENCE = 0
HOME = 0.000
[JOINT_4]
TYPE = ANGULAR
HOME = 0.000
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
MIN_LIMIT = -120
MAX_LIMIT =  120
HOME_SEQUENCE = 0
HOME = 0.000
HOME_SEQUENCE = 0
[JOINT_5]
TYPE = ANGULAR
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
MIN_LIMIT = -250
HOME_SEQUENCE = 0
HOME = 0.000
HOME_SEQUENCE = 0

[AXIS_X]
MIN_LIMIT =   0
MAX_LIMIT = 650
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_Y]
MIN_LIMIT = -400
MAX_LIMIT =  400
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_Z]
MIN_LIMIT = -600
MAX_LIMIT =  400
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_A]
MIN_LIMIT = -250.0
MAX_LIMIT =  250.0
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_B]
MIN_LIMIT = -135.0
MAX_LIMIT =  135.0
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
[AXIS_C]
MIN_LIMIT = -250.0
MAX_LIMIT =  250.0
MAX_VELOCITY = 30.0
MAX_ACCELERATION = 200.0
