# core HAL config file for simulation

# first load all the RT modules that will be needed
# kinematics
loadrt [KINS]KINEMATICS
#loadrt lineardeltakins
# motion controller, get name and thread periods from INI file
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS

loadusr -W lineardelta MIN_JOINT=-420

# add motion controller functions to servo thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread

# create HAL signals for position commands from motion module
# loop position commands back to motion module feedback
net J0pos joint.0.motor-pos-cmd => joint.0.motor-pos-fb lineardelta.joint0
net J1pos joint.1.motor-pos-cmd => joint.1.motor-pos-fb lineardelta.joint1
net J2pos joint.2.motor-pos-cmd => joint.2.motor-pos-fb lineardelta.joint2
net Apos joint.3.motor-pos-cmd => joint.3.motor-pos-fb

net L lineardeltakins.L => lineardelta.L
net R lineardeltakins.R => lineardelta.R

sets L 269
sets R 130.25

# estop loopback
net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in

# create signals for tool loading loopback
net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared
net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed

net spindle-fwd spindle.0.forward
net spindle-rev spindle.0.reverse
#net spindle-speed spindle.0.speed-out

net lube iocontrol.0.lube
net flood iocontrol.0.coolant-flood
net mist iocontrol.0.coolant-mist

