Mesa Configuration Tool
- tommy
- Offline
- Premium Member
-
Less
More
- Posts: 125
- Thank you received: 2
29 Nov 2024 14:09 #315545
by tommy
Replied by tommy on topic Mesa Configuration Tool
Using firmware PCW attached above, I see following:
Souldn't be there 7 encoder inputs?
Starting LinuxCNC...
libnml/buffer/shmem.cc 320: Shared memory buffers toolCmd and toolCmd may conflict. (key=1004(0x3EC))
libnml/buffer/shmem.cc 320: Shared memory buffers toolSts and toolSts may conflict. (key=1005(0x3ED))
libnml/buffer/shmem.cc 320: Shared memory buffers emcError and emcError may conflict. (key=1003(0x3EB))
linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod
Note: Using POSIX realtime
Found file(REL): ./main.hal
hm2: loading Mesa HostMot2 driver version 0.15
hm2_eth: loading Mesa AnyIO HostMot2 ethernet driver version 0.2
hm2_eth: 10.10.10.10: INFO: Hardware address (MAC): 00:60:1b:15:80:87
hm2_eth: discovered 7I95T
hm2/hm2_7i95.0: Low Level init 0.15
hm2/hm2_7i95.0: Smart Serial Firmware Version 43
hm2/hm2_7i95.0: 58 I/O Pins used:
hm2/hm2_7i95.0: IO Pin 000 (TB3-02/TB3-03): StepGen #0, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 001 (TB3-04/TB3-05): StepGen #0, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 002 (TB3-08/TB3-09): StepGen #1, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 003 (TB3-10/TB3-11): StepGen #1, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 004 (TB3-14/TB3-15): StepGen #2, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 005 (TB3-16/TB3-17): StepGen #2, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 006 (TB3-20/TB3-21): StepGen #3, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 007 (TB3-22/TB3-23): StepGen #3, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 008 (TB4-02/TB4-03): StepGen #4, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 009 (TB4-04/TB4-05): StepGen #4, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 010 (TB4-08/TB4-09): StepGen #5, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 011 (TB4-10/TB4-11): StepGen #5, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 012 (TB4-14/TB4-15): IOPort
hm2/hm2_7i95.0: IO Pin 013 (TB4-16/TB4-17): IOPort
hm2/hm2_7i95.0: IO Pin 014 (TB3-16/TB3-17): IOPort
hm2/hm2_7i95.0: IO Pin 015 (TB4-20/TB4-21): IOPort
hm2/hm2_7i95.0: IO Pin 016 (TB4-22/TB4-23): IOPort
hm2/hm2_7i95.0: IO Pin 017 (TB4-22/TB4-23): IOPort
hm2/hm2_7i95.0: IO Pin 018 (TB1-01/TB1-09): Muxed Encoder #0, pin Muxed A (Input)
hm2/hm2_7i95.0: IO Pin 019 (TB1-04/TB1-12): Muxed Encoder #0, pin Muxed B (Input)
hm2/hm2_7i95.0: IO Pin 020 (TB1-07/TB1-15): Muxed Encoder #0, pin Muxed Index (Input)
hm2/hm2_7i95.0: IO Pin 021 (TB1-17/TB2-01): Muxed Encoder #1, pin Muxed A (Input)
hm2/hm2_7i95.0: IO Pin 022 (TB1-20/TB2-04): Muxed Encoder #1, pin Muxed B (Input)
hm2/hm2_7i95.0: IO Pin 023 (TB1-23/TB2-07): Muxed Encoder #1, pin Muxed Index (Input)
hm2/hm2_7i95.0: IO Pin 024 (TB2-09/TB2-17): Muxed Encoder #2, pin Muxed A (Input)
hm2/hm2_7i95.0: IO Pin 025 (TB2-12/TB2-20): Muxed Encoder #2, pin Muxed B (Input)
hm2/hm2_7i95.0: IO Pin 026 (TB2-15/TB2-23): Muxed Encoder #2, pin Muxed Index (Input)
hm2/hm2_7i95.0: IO Pin 027 (Internal EncMux): Muxed Encoder Select #0, pin Mux Select 0 (Output)
hm2/hm2_7i95.0: IO Pin 028 (Internal InMux0): InMux Input Mux #0, pin addr0 (Output)
hm2/hm2_7i95.0: IO Pin 029 (Internal InMux1): InMux Input Mux #0, pin addr1 (Output)
hm2/hm2_7i95.0: IO Pin 030 (Internal InMux2): InMux Input Mux #0, pin addr2 (Output)
hm2/hm2_7i95.0: IO Pin 031 (Internal InMux3): InMux Input Mux #0, pin addr3 (Output)
hm2/hm2_7i95.0: IO Pin 032 (Internal InMux4): InMux Input Mux #0, pin addr4 (Output)
hm2/hm2_7i95.0: IO Pin 033 (Internal InMuxData): InMux Input Mux #0, pin muxdata (Input)
hm2/hm2_7i95.0: IO Pin 034 (TB5-13/TB5-14): SSR #0, pin Out-00 (Output)
hm2/hm2_7i95.0: IO Pin 035 (TB5-15/TB5-16): SSR #0, pin Out-01 (Output)
hm2/hm2_7i95.0: IO Pin 036 (TB5-17/TB5-18): SSR #0, pin Out-02 (Output)
hm2/hm2_7i95.0: IO Pin 037 (TB5-19/TB5-20): SSR #0, pin Out-03 (Output)
hm2/hm2_7i95.0: IO Pin 038 (TB5-21/TB5-22): SSR #0, pin Out-04 (Output)
hm2/hm2_7i95.0: IO Pin 039 (TB5-23/TB5-24): SSR #0, pin Out-05 (Output)
hm2/hm2_7i95.0: IO Pin 040 (internal): SSR #0, pin AC Ref (internal) (Output)
hm2/hm2_7i95.0: IO Pin 041 (P1-01/DB25-01): StepGen #6, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 042 (P1-02/DB25-14): StepGen #6, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 043 (P1-03/DB25-02): StepGen #7, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 044 (P1-04/DB25-15): StepGen #7, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 045 (P1-05/DB25-03): StepGen #8, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 046 (P1-06/DB25-16): StepGen #8, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 047 (P1-07/DB25-04): StepGen #9, pin Direction (Output)
hm2/hm2_7i95.0: IO Pin 048 (P1-08/DB25-17): StepGen #9, pin Step (Output)
hm2/hm2_7i95.0: IO Pin 049 (P1-09/DB25-05): PWMGen #0, pin Out0 (PWM or Up) (Output)
hm2/hm2_7i95.0: IO Pin 050 (P1-11/DB25-06): IOPort
hm2/hm2_7i95.0: IO Pin 051 (P1-13/DB25-07): IOPort
hm2/hm2_7i95.0: IO Pin 052 (P1-15/DB25-08): IOPort
hm2/hm2_7i95.0: IO Pin 053 (P1-17/DB25-09): IOPort
hm2/hm2_7i95.0: IO Pin 054 (P1-19/DB25-10): IOPort
hm2/hm2_7i95.0: IO Pin 055 (P1-21/DB25-11): Muxed Encoder #3, pin Muxed Index (Input)
hm2/hm2_7i95.0: IO Pin 056 (P1-23/DB25-12): Muxed Encoder #3, pin Muxed B (Input)
hm2/hm2_7i95.0: IO Pin 057 (P1-25/DB25-13): Muxed Encoder #3, pin Muxed A (Input)
hm2/hm2_7i95.0: registered
Found file(REL): ./io.hal
Souldn't be there 7 encoder inputs?
Please Log in or Create an account to join the conversation.
- tommylight
-
- Away
- Moderator
-
Less
More
- Posts: 20047
- Thank you received: 6818
29 Nov 2024 15:01 #315553
by tommylight
Replied by tommylight on topic Mesa Configuration Tool
Muxed encoders, so that would make 8 available encoders.
Muxed = multiplexed , IIRC that is 2 encoders on a single channel .
Muxed = multiplexed , IIRC that is 2 encoders on a single channel .
Please Log in or Create an account to join the conversation.
- tommy
- Offline
- Premium Member
-
Less
More
- Posts: 125
- Thank you received: 2
30 Nov 2024 16:29 #315660
by tommy
Replied by tommy on topic Mesa Configuration Tool
In MesaCT I configured 6 axis on 7i95T and one on 7i78, but for that one there are no stepgens defined in .hal file:
# This file was created with the Mesa Configuration Tool on Nov 30 2024 17:11:51
# If you make changes to this file DO NOT run the configuration tool again!
# This file will be replaced with a new file if you do!
# kinematics
loadrt [KINS](KINEMATICS)
# motion controller
loadrt [EMCMOT](EMCMOT) servo_period_nsec=[EMCMOT](SERVO_PERIOD) num_joints=[KINS](JOINTS)
# hostmot2 driver
loadrt hostmot2
loadrt [HM2](DRIVER) board_ip=[HM2](ADDRESS) config="sserial_port_0=00000000"
setp hm2_[MESA](BOARD).0.watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.y,pid.z,pid.a,pid.b,pid.c,pid.u
# PID Information for Stepper Boards
# Mesa hardware step generators at every servo thread invocation, the step
# generator hardware is given a new velocity. Without feedback from the PID
# controller the hardware position would slowly drift because of clock speed and
# timing differences between LinuxCNC and the step generator hardware.
# The PID controller gets feedback from the actual (fractional) step position and
# corrects for these small differences.
# THREADS
addf hm2_[MESA](BOARD).0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.y.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.a.do-pid-calcs servo-thread
addf pid.b.do-pid-calcs servo-thread
addf pid.c.do-pid-calcs servo-thread
addf pid.u.do-pid-calcs servo-thread
addf hm2_[MESA](BOARD).0.write servo-thread
# DPLL TIMER
setp hm2_[MESA](BOARD).0.dpll.01.timer-us -50
setp hm2_[MESA](BOARD).0.stepgen.timer-number 1
# amp enable
net motion-enable <= motion.motion-enabled
# Board: 7i95
# Axis: X Joint: 0 Output: 0
# PID Setup
setp pid.x.Pgain [JOINT_0](P)
setp pid.x.Igain [JOINT_0](I)
setp pid.x.Dgain [JOINT_0](D)
setp pid.x.bias [JOINT_0](BIAS)
setp pid.x.FF0 [JOINT_0](FF0)
setp pid.x.FF1 [JOINT_0](FF1)
setp pid.x.FF2 [JOINT_0](FF2)
setp pid.x.deadband [JOINT_0](DEADBAND)
setp pid.x.maxoutput [JOINT_0](MAX_OUTPUT)
setp pid.x.error-previous-target True
# limit stepgen velocity corrections caused by position feedback jitter
setp pid.x.maxerror [JOINT_0](MAX_ERROR)
# joint-0 enable chain
net joint-0-index-enable <=> pid.x.index-enable
net joint-0-index-enable <=> joint.0.index-enable
net joint-0-enable <= joint.0.amp-enable-out
net joint-0-enable => pid.x.enable
net joint-0-enable => hm2_[MESA](BOARD).0.stepgen.00.enable
# Joint 0 Step Generator Settings
setp hm2_[MESA](BOARD).0.stepgen.00.dirsetup [JOINT_0](DIRSETUP)
setp hm2_[MESA](BOARD).0.stepgen.00.dirhold [JOINT_0](DIRHOLD)
setp hm2_[MESA](BOARD).0.stepgen.00.steplen [JOINT_0](STEPLEN)
setp hm2_[MESA](BOARD).0.stepgen.00.stepspace [JOINT_0](STEPSPACE)
setp hm2_[MESA](BOARD).0.stepgen.00.position-scale [JOINT_0](SCALE)
setp hm2_[MESA](BOARD).0.stepgen.00.maxvel [JOINT_0](STEPGEN_MAX_VEL)
setp hm2_[MESA](BOARD).0.stepgen.00.maxaccel [JOINT_0](STEPGEN_MAX_ACC)
setp hm2_[MESA](BOARD).0.stepgen.00.step_type 0
setp hm2_[MESA](BOARD).0.stepgen.00.control-type 1
# position command and feedback
net joint-0-pos-cmd <= joint.0.motor-pos-cmd
net joint-0-pos-cmd => pid.x.command
net joint-0-pos-fb <= hm2_[MESA](BOARD).0.stepgen.00.position-fb
net joint-0-pos-fb => joint.0.motor-pos-fb
net joint-0-pos-fb => pid.x.feedback
# PID Output
net joint.0.output <= pid.x.output
net joint.0.output => hm2_[MESA](BOARD).0.stepgen.00.velocity-cmd
# Axis: Y Joint: 1 Output: 1
# PID Setup
setp pid.y.Pgain [JOINT_1](P)
setp pid.y.Igain [JOINT_1](I)
setp pid.y.Dgain [JOINT_1](D)
setp pid.y.bias [JOINT_1](BIAS)
setp pid.y.FF0 [JOINT_1](FF0)
setp pid.y.FF1 [JOINT_1](FF1)
setp pid.y.FF2 [JOINT_1](FF2)
setp pid.y.deadband [JOINT_1](DEADBAND)
setp pid.y.maxoutput [JOINT_1](MAX_OUTPUT)
setp pid.y.error-previous-target True
# limit stepgen velocity corrections caused by position feedback jitter
setp pid.y.maxerror [JOINT_1](MAX_ERROR)
# joint-1 enable chain
net joint-1-index-enable <=> pid.y.index-enable
net joint-1-index-enable <=> joint.1.index-enable
net joint-1-enable <= joint.1.amp-enable-out
net joint-1-enable => pid.y.enable
net joint-1-enable => hm2_[MESA](BOARD).0.stepgen.01.enable
# Joint 1 Step Generator Settings
setp hm2_[MESA](BOARD).0.stepgen.01.dirsetup [JOINT_1](DIRSETUP)
setp hm2_[MESA](BOARD).0.stepgen.01.dirhold [JOINT_1](DIRHOLD)
setp hm2_[MESA](BOARD).0.stepgen.01.steplen [JOINT_1](STEPLEN)
setp hm2_[MESA](BOARD).0.stepgen.01.stepspace [JOINT_1](STEPSPACE)
setp hm2_[MESA](BOARD).0.stepgen.01.position-scale [JOINT_1](SCALE)
setp hm2_[MESA](BOARD).0.stepgen.01.maxvel [JOINT_1](STEPGEN_MAX_VEL)
setp hm2_[MESA](BOARD).0.stepgen.01.maxaccel [JOINT_1](STEPGEN_MAX_ACC)
setp hm2_[MESA](BOARD).0.stepgen.01.step_type 0
setp hm2_[MESA](BOARD).0.stepgen.01.control-type 1
# position command and feedback
net joint-1-pos-cmd <= joint.1.motor-pos-cmd
net joint-1-pos-cmd => pid.y.command
net joint-1-pos-fb <= hm2_[MESA](BOARD).0.stepgen.01.position-fb
net joint-1-pos-fb => joint.1.motor-pos-fb
net joint-1-pos-fb => pid.y.feedback
# PID Output
net joint.1.output <= pid.y.output
net joint.1.output => hm2_[MESA](BOARD).0.stepgen.01.velocity-cmd
# Axis: Z Joint: 2 Output: 2
# PID Setup
setp pid.z.Pgain [JOINT_2](P)
setp pid.z.Igain [JOINT_2](I)
setp pid.z.Dgain [JOINT_2](D)
setp pid.z.bias [JOINT_2](BIAS)
setp pid.z.FF0 [JOINT_2](FF0)
setp pid.z.FF1 [JOINT_2](FF1)
setp pid.z.FF2 [JOINT_2](FF2)
setp pid.z.deadband [JOINT_2](DEADBAND)
setp pid.z.maxoutput [JOINT_2](MAX_OUTPUT)
setp pid.z.error-previous-target True
# limit stepgen velocity corrections caused by position feedback jitter
setp pid.z.maxerror [JOINT_2](MAX_ERROR)
# joint-2 enable chain
net joint-2-index-enable <=> pid.z.index-enable
net joint-2-index-enable <=> joint.2.index-enable
net joint-2-enable <= joint.2.amp-enable-out
net joint-2-enable => pid.z.enable
net joint-2-enable => hm2_[MESA](BOARD).0.stepgen.02.enable
# Joint 2 Step Generator Settings
setp hm2_[MESA](BOARD).0.stepgen.02.dirsetup [JOINT_2](DIRSETUP)
setp hm2_[MESA](BOARD).0.stepgen.02.dirhold [JOINT_2](DIRHOLD)
setp hm2_[MESA](BOARD).0.stepgen.02.steplen [JOINT_2](STEPLEN)
setp hm2_[MESA](BOARD).0.stepgen.02.stepspace [JOINT_2](STEPSPACE)
setp hm2_[MESA](BOARD).0.stepgen.02.position-scale [JOINT_2](SCALE)
setp hm2_[MESA](BOARD).0.stepgen.02.maxvel [JOINT_2](STEPGEN_MAX_VEL)
setp hm2_[MESA](BOARD).0.stepgen.02.maxaccel [JOINT_2](STEPGEN_MAX_ACC)
setp hm2_[MESA](BOARD).0.stepgen.02.step_type 0
setp hm2_[MESA](BOARD).0.stepgen.02.control-type 1
# position command and feedback
net joint-2-pos-cmd <= joint.2.motor-pos-cmd
net joint-2-pos-cmd => pid.z.command
net joint-2-pos-fb <= hm2_[MESA](BOARD).0.stepgen.02.position-fb
net joint-2-pos-fb => joint.2.motor-pos-fb
net joint-2-pos-fb => pid.z.feedback
# PID Output
net joint.2.output <= pid.z.output
net joint.2.output => hm2_[MESA](BOARD).0.stepgen.02.velocity-cmd
# Axis: A Joint: 3 Output: 3
# PID Setup
setp pid.a.Pgain [JOINT_3](P)
setp pid.a.Igain [JOINT_3](I)
setp pid.a.Dgain [JOINT_3](D)
setp pid.a.bias [JOINT_3](BIAS)
setp pid.a.FF0 [JOINT_3](FF0)
setp pid.a.FF1 [JOINT_3](FF1)
setp pid.a.FF2 [JOINT_3](FF2)
setp pid.a.deadband [JOINT_3](DEADBAND)
setp pid.a.maxoutput [JOINT_3](MAX_OUTPUT)
setp pid.a.error-previous-target True
# limit stepgen velocity corrections caused by position feedback jitter
setp pid.a.maxerror [JOINT_3](MAX_ERROR)
# joint-3 enable chain
net joint-3-index-enable <=> pid.a.index-enable
net joint-3-index-enable <=> joint.3.index-enable
net joint-3-enable <= joint.3.amp-enable-out
net joint-3-enable => pid.a.enable
net joint-3-enable => hm2_[MESA](BOARD).0.stepgen.03.enable
# Joint 3 Step Generator Settings
setp hm2_[MESA](BOARD).0.stepgen.03.dirsetup [JOINT_3](DIRSETUP)
setp hm2_[MESA](BOARD).0.stepgen.03.dirhold [JOINT_3](DIRHOLD)
setp hm2_[MESA](BOARD).0.stepgen.03.steplen [JOINT_3](STEPLEN)
setp hm2_[MESA](BOARD).0.stepgen.03.stepspace [JOINT_3](STEPSPACE)
setp hm2_[MESA](BOARD).0.stepgen.03.position-scale [JOINT_3](SCALE)
setp hm2_[MESA](BOARD).0.stepgen.03.maxvel [JOINT_3](STEPGEN_MAX_VEL)
setp hm2_[MESA](BOARD).0.stepgen.03.maxaccel [JOINT_3](STEPGEN_MAX_ACC)
setp hm2_[MESA](BOARD).0.stepgen.03.step_type 0
setp hm2_[MESA](BOARD).0.stepgen.03.control-type 1
# position command and feedback
net joint-3-pos-cmd <= joint.3.motor-pos-cmd
net joint-3-pos-cmd => pid.a.command
net joint-3-pos-fb <= hm2_[MESA](BOARD).0.stepgen.03.position-fb
net joint-3-pos-fb => joint.3.motor-pos-fb
net joint-3-pos-fb => pid.a.feedback
# PID Output
net joint.3.output <= pid.a.output
net joint.3.output => hm2_[MESA](BOARD).0.stepgen.03.velocity-cmd
# Axis: B Joint: 4 Output: 4
# PID Setup
setp pid.b.Pgain [JOINT_4](P)
setp pid.b.Igain [JOINT_4](I)
setp pid.b.Dgain [JOINT_4](D)
setp pid.b.bias [JOINT_4](BIAS)
setp pid.b.FF0 [JOINT_4](FF0)
setp pid.b.FF1 [JOINT_4](FF1)
setp pid.b.FF2 [JOINT_4](FF2)
setp pid.b.deadband [JOINT_4](DEADBAND)
setp pid.b.maxoutput [JOINT_4](MAX_OUTPUT)
setp pid.b.error-previous-target True
# limit stepgen velocity corrections caused by position feedback jitter
setp pid.b.maxerror [JOINT_4](MAX_ERROR)
# joint-4 enable chain
net joint-4-index-enable <=> pid.b.index-enable
net joint-4-index-enable <=> joint.4.index-enable
net joint-4-enable <= joint.4.amp-enable-out
net joint-4-enable => pid.b.enable
net joint-4-enable => hm2_[MESA](BOARD).0.stepgen.04.enable
# Joint 4 Step Generator Settings
setp hm2_[MESA](BOARD).0.stepgen.04.dirsetup [JOINT_4](DIRSETUP)
setp hm2_[MESA](BOARD).0.stepgen.04.dirhold [JOINT_4](DIRHOLD)
setp hm2_[MESA](BOARD).0.stepgen.04.steplen [JOINT_4](STEPLEN)
setp hm2_[MESA](BOARD).0.stepgen.04.stepspace [JOINT_4](STEPSPACE)
setp hm2_[MESA](BOARD).0.stepgen.04.position-scale [JOINT_4](SCALE)
setp hm2_[MESA](BOARD).0.stepgen.04.maxvel [JOINT_4](STEPGEN_MAX_VEL)
setp hm2_[MESA](BOARD).0.stepgen.04.maxaccel [JOINT_4](STEPGEN_MAX_ACC)
setp hm2_[MESA](BOARD).0.stepgen.04.step_type 0
setp hm2_[MESA](BOARD).0.stepgen.04.control-type 1
# position command and feedback
net joint-4-pos-cmd <= joint.4.motor-pos-cmd
net joint-4-pos-cmd => pid.b.command
net joint-4-pos-fb <= hm2_[MESA](BOARD).0.stepgen.04.position-fb
net joint-4-pos-fb => joint.4.motor-pos-fb
net joint-4-pos-fb => pid.b.feedback
# PID Output
net joint.4.output <= pid.b.output
net joint.4.output => hm2_[MESA](BOARD).0.stepgen.04.velocity-cmd
# Axis: C Joint: 5 Output: 5
# PID Setup
setp pid.c.Pgain [JOINT_5](P)
setp pid.c.Igain [JOINT_5](I)
setp pid.c.Dgain [JOINT_5](D)
setp pid.c.bias [JOINT_5](BIAS)
setp pid.c.FF0 [JOINT_5](FF0)
setp pid.c.FF1 [JOINT_5](FF1)
setp pid.c.FF2 [JOINT_5](FF2)
setp pid.c.deadband [JOINT_5](DEADBAND)
setp pid.c.maxoutput [JOINT_5](MAX_OUTPUT)
setp pid.c.error-previous-target True
# limit stepgen velocity corrections caused by position feedback jitter
setp pid.c.maxerror [JOINT_5](MAX_ERROR)
# joint-5 enable chain
net joint-5-index-enable <=> pid.c.index-enable
net joint-5-index-enable <=> joint.5.index-enable
net joint-5-enable <= joint.5.amp-enable-out
net joint-5-enable => pid.c.enable
net joint-5-enable => hm2_[MESA](BOARD).0.stepgen.05.enable
# Joint 5 Step Generator Settings
setp hm2_[MESA](BOARD).0.stepgen.05.dirsetup [JOINT_5](DIRSETUP)
setp hm2_[MESA](BOARD).0.stepgen.05.dirhold [JOINT_5](DIRHOLD)
setp hm2_[MESA](BOARD).0.stepgen.05.steplen [JOINT_5](STEPLEN)
setp hm2_[MESA](BOARD).0.stepgen.05.stepspace [JOINT_5](STEPSPACE)
setp hm2_[MESA](BOARD).0.stepgen.05.position-scale [JOINT_5](SCALE)
setp hm2_[MESA](BOARD).0.stepgen.05.maxvel [JOINT_5](STEPGEN_MAX_VEL)
setp hm2_[MESA](BOARD).0.stepgen.05.maxaccel [JOINT_5](STEPGEN_MAX_ACC)
setp hm2_[MESA](BOARD).0.stepgen.05.step_type 0
setp hm2_[MESA](BOARD).0.stepgen.05.control-type 1
# position command and feedback
net joint-5-pos-cmd <= joint.5.motor-pos-cmd
net joint-5-pos-cmd => pid.c.command
net joint-5-pos-fb <= hm2_[MESA](BOARD).0.stepgen.05.position-fb
net joint-5-pos-fb => joint.5.motor-pos-fb
net joint-5-pos-fb => pid.c.feedback
# PID Output
net joint.5.output <= pid.c.output
net joint.5.output => hm2_[MESA](BOARD).0.stepgen.05.velocity-cmd
# Board: 7i78
# Axis: U Joint: 6 Output: 0
# PID Setup
setp pid.u.Pgain [JOINT_6](P)
setp pid.u.Igain [JOINT_6](I)
setp pid.u.Dgain [JOINT_6](D)
setp pid.u.bias [JOINT_6](BIAS)
setp pid.u.FF0 [JOINT_6](FF0)
setp pid.u.FF1 [JOINT_6](FF1)
setp pid.u.FF2 [JOINT_6](FF2)
setp pid.u.deadband [JOINT_6](DEADBAND)
setp pid.u.maxoutput [JOINT_6](MAX_OUTPUT)
setp pid.u.error-previous-target True
# joint-6 enable chain
net joint-6-index-enable <=> pid.u.index-enable
net joint-6-index-enable <=> joint.6.index-enable
net joint-6-enable <= joint.6.amp-enable-out
net joint-6-enable => pid.u.enable
# position command and feedback
net joint-6-pos-cmd <= joint.6.motor-pos-cmd
net joint-6-pos-cmd => pid.u.command
net joint-6-pos-fb <= hm2_[MESA](BOARD).0.stepgen.06.position-fb
net joint-6-pos-fb => joint.6.motor-pos-fb
net joint-6-pos-fb => pid.u.feedback
# PID Output
net joint.6.output <= pid.u.output
# Standard I/O Block - EStop, Etc
# create a signal for the estop loopback
net estop-loopback iocontrol.0.emc-enable-in <= iocontrol.0.user-enable-out
Attachments:
Please Log in or Create an account to join the conversation.
- PCW
-
- Offline
- Moderator
-
Less
More
- Posts: 18434
- Thank you received: 5035
30 Nov 2024 18:09 #315670
by PCW
Replied by PCW on topic Mesa Configuration Tool
Looks like a mesact bug.
In the mean time you could just copy/paste/renumber
the stepgen section from another axis to get it working.
In the mean time you could just copy/paste/renumber
the stepgen section from another axis to get it working.
Please Log in or Create an account to join the conversation.
- JT
-
Topic Author
- Away
- Administrator
-
Less
More
- Posts: 950
- Thank you received: 491
01 Dec 2024 12:30 - 01 Dec 2024 12:35 #315727
by JT
Replied by JT on topic Mesa Configuration Tool
Fixed the 7i78 stepgens, download the deb again and reinstall.
JT
JT
Last edit: 01 Dec 2024 12:35 by JT.
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- tommy
- Offline
- Premium Member
-
Less
More
- Posts: 125
- Thank you received: 2
30 Jan 2025 13:41 #320144
by tommy
Replied by tommy on topic Mesa Configuration Tool
I'm trying to add spindle enable and spindle out to my configuration (7i95T + 7i78), but heaving some difficulties to set it up in mesa CT as it is all greyed out under spindle tab and also under 7i78 outputs. Only under 7i95T outputs are 6 of them available.
I would like to use spindle outputs from 7i78.
I would like to use spindle outputs from 7i78.
Please Log in or Create an account to join the conversation.
- JT
-
Topic Author
- Away
- Administrator
-
Less
More
- Posts: 950
- Thank you received: 491
05 Feb 2025 13:37 #320742
by JT
Replied by JT on topic Mesa Configuration Tool
I'll have to add the 7i78 spindle.
JT
JT
Please Log in or Create an account to join the conversation.
- AchillRobot
- Offline
- New Member
-
Less
More
- Posts: 2
- Thank you received: 0
19 Feb 2025 03:19 #321958
by AchillRobot
Replied by AchillRobot on topic Mesa Configuration Tool
Is there any readme on how to add .bin files for a new board to this? I have the Mesa 7i76eu, successor to the 7i76e, and have downloaded the firmware files from the mesa site but am unsure of how to add them to the configuration tool.
Any help is appreciated,
-Aren
Any help is appreciated,
-Aren
Please Log in or Create an account to join the conversation.
- JT
-
Topic Author
- Away
- Administrator
-
Less
More
- Posts: 950
- Thank you received: 491
19 Feb 2025 10:55 #321974
by JT
Replied by JT on topic Mesa Configuration Tool
7i76EU has been added to Mesa CT just now. I've not tested the configuration yet.
JT
JT
Please Log in or Create an account to join the conversation.
- AchillRobot
- Offline
- New Member
-
Less
More
- Posts: 2
- Thank you received: 0
19 Feb 2025 18:43 #322010
by AchillRobot
Replied by AchillRobot on topic Mesa Configuration Tool
Appreciate the prompt action, I also got a reply from the Mesa folks that you can select and build configs with 7i76E as well.
-Aren
-Aren
Please Log in or Create an account to join the conversation.
Time to create page: 0.134 seconds