loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES


# My driver 

loadrt etcomb board_ip=192.168.1.3
loadrt pid names=pid.x

# ################################################
# THREADS
# ################################################

addf etcomb.1.update		       	servo-thread

addf motion-command-handler             servo-thread
addf motion-controller                  servo-thread

addf pid.x.do-pid-calcs 				servo-thread

# ######################################################
#   -------E-STOP--------
# ######################################################

net estop-ext iocontrol.0.emc-enable-in    <=  iocontrol.0.user-enable-out


# ######################################################
#   ------- X --------
# ######################################################
#*******************
# PID X
#*******************
setp   pid.x.Pgain     [AXIS_0]P
setp   pid.x.Igain     [AXIS_0]I
setp   pid.x.Dgain     [AXIS_0]D
setp   pid.x.bias      [AXIS_0]BIAS
setp   pid.x.FF0       [AXIS_0]FF0
setp   pid.x.FF1       [AXIS_0]FF1
setp   pid.x.FF2       [AXIS_0]FF2
setp   pid.x.deadband  [AXIS_0]DEADBAND
setp   pid.x.maxoutput [AXIS_0]MAX_OUTPUT


net x-enable       => pid.x.enable
net x-output       => pid.x.output
net x-pos-cmd      => pid.x.command
net x-pos-fb       => pid.x.feedback

#*******************
#   CONTROL X
#*******************

net x-enable => axis.0.amp-enable-out
net x-enable => etcomb.1.enable_drive

net x-pos-cmd  <= axis.0.motor-pos-cmd
net x-output => etcomb.1.step_dir.outstep0 

setp etcomb.1.step_dir.invert_dir0 0
setp etcomb.1.step_dir.Limp0 0
#*******************
#   FEED BACK X
#*******************

net x-pos-fb  => axis.0.motor-pos-fb
net x-pos-fb  <= etcomb.1.step_dir.count0

setp etcomb.1.step_dir.escale0 500

#*******************
#   ANALOG AXIS
#*******************

setp etcomb.1.PWM.dcontrol -4.5
setp etcomb.1.PWM.out_scale 1

#*******************
#     TEST
#*******************
#net number_test <= etcomb.1.TEST

net buton_test <= etcomb.1.pins.pin-00-out
net buton_test <= etcomb.1.pins.pin-01-out
net buton_test <= etcomb.1.pins.pin-02-out
net buton_test <= etcomb.1.pins.pin-03-out
net buton_test <= etcomb.1.pins.pin-04-out
net buton_test <= etcomb.1.pins.pin-05-out
net buton_test <= etcomb.1.pins.pin-06-out
net buton_test <= etcomb.1.pins.pin-07-out

net buton_test <= etcomb.1.Lpins.pin-00-out
net buton_test <= etcomb.1.Lpins.pin-01-out


setp etcomb.1.step_dir.invert_dir1 0
setp etcomb.1.step_dir.Limp1 2
net x-output => etcomb.1.step_dir.outstep1 

setp etcomb.1.step_dir.invert_dir2 0
setp etcomb.1.step_dir.Limp2 2
net x-output => etcomb.1.step_dir.outstep2 

setp etcomb.1.step_dir.invert_dir3 0
setp etcomb.1.step_dir.Limp3 2
net x-output => etcomb.1.step_dir.outstep3 

setp etcomb.1.step_dir.invert_dir4 0
setp etcomb.1.step_dir.Limp4 2
net x-output => etcomb.1.step_dir.outstep4 

