MPG pendant interface 7I96s

More
10 Oct 2025 00:55 #336178 by d3m0n54in7
MPG pendant interface 7I96s was created by d3m0n54in7
Since I was last asking for assistance, I opted to switch over to a 7I96s board. I am having issues getting a cheap MPG pendant to jog axes in the Axis GUI. I have confirmed that the encoder works as well as the dead-man switch allows the signals I've designated as axis selectors and step values to trigger appropriately. I have seen forum posts about joint vs axis jog being toggled through the use of homing. (joint vs teleop) I utilize the Home all button to zero out the display before attempting to jog any axis. Using Halshow, I am able to see the joint-select-(a-d) and joint-incr-(a-d) trigger as well as the axis-selected-count value count up and down. I used the PNC wizard to setup the pinouts and didn't see "Axis select" as an option but did have "Joint select" available. I assume, based on what I've read about the 2.9 update that this wouldn't be an issue as I'm just using a standard 3 axis cartesian XYZ setup with possible expansion to XYZA once I have more confidence in using Linux CNC to actually run my machine.
It's probably something overly simple like linking joints to axes in a different way than PNC did by default or just a need to add a switch to convince the machine that it's been homed.
I've attached the Hal and Ini files for review.
Attachments:

Please Log in or Create an account to join the conversation.

More
10 Oct 2025 19:40 #336216 by andypugh
Replied by andypugh on topic MPG pendant interface 7I96s
I think that the problem is inconsistent HAL signal naming.

You have
net joint-select-a     <=  hm2_7i96s.0.inm.00.input-01
Then later in the file:
net axis-select-x  halui.axis.x.select

You need to connect the hm2_,,, pins to the halui.... (and motion....) pins.
Use the same signal name (the first term after "net") to link:

hm2_select pin / axis.L.jog-enable / joint.N.jog-enable

hm2_mpg_counts / axis.L.jog-counts / joint.N.jog-counts

You will also need to work out logic to set the scale:

(probably a mux block) axis.L.jog-scale joint.N.jog-scale

For initial testing, try:
net jog-scale => axis.X.jog-scale joint.0.jog-scale
net jog-scale => axis.Y.jog-scale joint.1.jog scale
net jog-scale => axis.Z.jog-scale joint.2.jog-scale
setp jog-scale 0.1

(change the setp to 0.01 if using inches)

If that works, then configure the jog scale (but to help with that we wiuld need to know whether the MPG binary-codes the speed selector or has a pin for each speed)

(This is using the pins from "motion" which are slightly preferable to the halui pins. However HALUI supports analog jog mode, so has its uses.)

linuxcnc.org/docs/stable/html/man/man9/motion.9.html

Please Log in or Create an account to join the conversation.

Time to create page: 0.091 seconds
Powered by Kunena Forum