Repository navigation
Replies: 6 comments 2 replies
|
Motion has MPG jogging because realtime was needed for precise counts? |
|
Some on these pin difference also come from UI paradigm choices. |
|
One more layer to keep in mind: the multiaxis work in #4374 adds jog frames (jog along the machine axes, the tilted work plane, or the tool). I put the frame selection in motion (EMCMOT_SET_JOG_FRAME, motion.jog-frame out), so every jog source follows it the same way: keyboard and GUI jogs, halui, and the motion MPG inputs (axis.N.jog-counts). halui only adds halui.jog-frame.machine|plane|tool selection pins and .is-* status, and AXIS a View menu entry. If the jogging interface gets unified, I would keep that split: motion owns the jog state, including the frame, and the upper layers only select. Happy to adjust the pin names in the stack to whatever this discussion settles on. |
no. it doesn't count, it just adds 2 numbers.
Why does the UI need to interface with halui?
this can be done entirely in hal and the UI by using a mux, and whatever hal pins the UI provides. Does not interfer with halui/task/motion at all.
what do you mean with interact? of course the last one always wins. What I would like to have
Open questions
|
|
Question:
IMHO: I have no problems with new pin names. Better than 2 HAL pins with similar function. |
|
I would like to have:
Regarding the muxed MPG, it’s worth keeping in mind that some lathes have two separate rotary handwheels, one for the Z axis and one for the X axis. The design should account for this setup as well. |
Uh oh!
There was an error while loading. Please reload this page.
While digging into PR #4613 I discovered what a mess this currently is.
here is what we have now:
Motion
motion has pins for MPG and external offsets for axis, and MPG inputs for joints:
https://linuxcnc.org/docs/html/man/man9/motion.9.html
halui
halui also has mpg inputs for joints and axis, as well as increment/decrement pins, and a single inputs that can be muxed to any one joint/axis.
https://linuxcnc.org/docs/html/man/man1/halui.1.html
Axis
axis outputs the selected axis to hal, meant to be connected to motions jog-enable pin:
https://linuxcnc.org/docs/html/gui/axis.html#sec:axis-axisui-pins
gmoccapy
gmoccapy has increment/decrement pins, and an MPG input:
https://linuxcnc.org/docs/html/gui/gmoccapy.html#_jog_hal_pins
What do the UI pins provide, that motion doesn't offer?
Why do we need a hal jogging interface in every single layer?
having only one interface would clean up the code a lot, and make it much easier to switch UIs.
All reactions