#linuxcnc-devel Logs
Jul 22 2021
#linuxcnc-devel Calendar
07:25 AM mrec: Hi, does anyone know about jogging in linuxcnc?
07:31 AM mrec: when not homed I'm able to jog outside of the designated area in axis -- with the keyboard
07:31 AM mrec: when the pendant jogs outside of the designated area -- that will not work
07:31 AM mrec: the pendant is only able to jog inside the designated area
07:31 AM mrec: and it will also disable the option to jog outside for the keyboard -- until I do an unhoming
07:31 AM mrec: however I do not see any home pin set in the hal configuration when I start jogging
07:31 AM mrec: I'm not using home switches on my lathe
07:31 AM mrec: so I'd like to jog with the pendant and set the home position myself.
07:33 AM jepler[m]: I think that pendant (hal) jogs and gui (nml) jogs go through different code paths but I don't remember the details. If the absolute position of a joint hasn't been established, then it's a bit nonsensical to try to apply travel limits. My vague recollection was that gui jogs were always limited to 1 "range of movement" before homing but I never really used pendant jogs. and of course my knowledge mostly dates to 2.7 and earlier.
07:49 AM mrec: do you have any idea where that could be in the code?
07:49 AM mrec: roughly
07:50 AM mrec: it's unconvenient having to use the keyboard for homing while the actual system is based around the pendant (when used manually)
07:51 AM mrec: inconvenient*
08:10 AM rene-dev7 is now known as rene-dev
08:28 AM -!- #linuxcnc-devel mode set to +v by ChanServ
08:39 AM -!- #linuxcnc-devel mode set to +v by ChanServ
08:39 AM mrec: I have something
08:52 AM mrec: jjointmode 1-> joint jog, 0 -> axis jog
08:52 AM mrec: ok that explains it
09:10 AM jepler[m]: oh yeah, most of my experience is before this big distinction between joints and axes and I bet they behave differently
09:11 AM mrec: I guess something clobbered motion.traj.mode
09:12 AM mrec: motion.teleop-mode will be switched on with the pendant
09:13 AM mrec: I see it in the hal configuration
09:13 AM mrec: that has to be changed...
09:23 AM mrec: just for tracing, motion.teleop-mode and halui.mode.is-teleop are enabled once I use the handwheel
09:23 AM mrec: now tracking the handwheel path...
10:03 AM mrec: what is this teleop mode?
10:03 AM mrec: it's set in the xhc driver of course...
10:04 AM mrec: cool code as usual
10:04 AM mrec: if (*memory->out.axisXSelect && false == *memory->in.JointXisHomed) {requestTeleopMode(true);}
10:04 AM mrec: else if (*memory->out.axisYSelect && false == *memory->in.JointYisHomed) {requestTeleopMode(true);}
10:04 AM mrec: else if (*memory->out.axisZSelect && false == *memory->in.JointZisHomed) {requestTeleopMode(true);}
10:04 AM mrec: else if (*memory->out.axisASelect && false == *memory->in.JointAisHomed) {requestTeleopMode(true);}
10:04 AM mrec: else if (*memory->out.axisBSelect && false == *memory->in.JointBisHomed) {requestTeleopMode(true);}
10:04 AM mrec: else if (*memory->out.axisCSelect && false == *memory->in.JointCisHomed) {requestTeleopMode(true);}
10:04 AM mrec: {requestManualMode(true);}
10:04 AM mrec: they want to set requestManualMode ...
10:31 AM mrec: the pendant seems to require teleop mode..
10:31 AM mrec: but switching back doesn't seem to work
10:33 AM mrec: requestManualMode(false);
10:33 AM mrec: requestTeleopMode(false);
10:33 AM mrec: (in the xhc module) while in the hal module:
10:33 AM mrec: if (emcStatus->motion.traj.mode == EMC_TRAJ_MODE_TELEOP)
10:34 AM mrec: if (emcStatus->motion.traj.mode == EMC_TRAJ_MODE_FREE)
10:35 AM mrec: and linuxcnc is only checking for a bit change
10:36 AM mrec: so yes things will permanently be in teleop mode
10:36 AM mrec: since the last one is the teleop switch
11:38 AM mrec: does anyone know how I can jog via the hal configuration menu?
11:40 AM mrec: eg. how I can make axis.z.jog-counts do something?
12:00 PM mrec: ok..
12:00 PM mrec: https://www.forum.linuxcnc.org/38-general-linuxcnc-questions/37866-whb04b-4-jog-not-working-after-homing#151222
12:17 PM mrec: andypugh: are you there?
12:18 PM mrec: is there a better way to get unhomed vs homed jogging work?
12:18 PM mrec: I'd rather go with 2 configurations ... one joint.0 the other one joint.[XYZ..]?
12:25 PM mrec: linuxcnc forum dead?
12:39 PM andypugh: The forum was up earlier today
12:39 PM andypugh: But I am about 6 pages / 4 days behind.
12:40 PM andypugh: Before homing you need to link to the joint.N.jog… pins. Aftyer hioming the axis.L.jog… pins
12:42 PM andypugh: Though the forum does seem to be down at this moment.
12:55 PM mrec: is it ok to expose joint pins?
12:55 PM mrec: from the xhc driver
12:56 PM mrec: I'm currently modifying it for testing here.
12:56 PM mrec: andypugh: ping
12:57 PM mrec: I think I understood so far how it works... that part is messed up in the xhc driver and even impacts the keyboard since it switches to teleop mode permanently
12:57 PM mrec: no good idea before homing.
01:16 PM andypugh: I am not sure how the _driver_ can do that.
01:16 PM mrec: just export joint* and connect it in the hal configuration
01:16 PM mrec: that's what I
01:16 PM mrec: m doing..
01:33 PM mrec: well it works I can drive beyond the designated area now with the handwheel
01:33 PM mrec: I'll push the patch later tomorrow
05:44 PM CaptHindsight[m]: forums are back up
08:41 PM mrec: that's nice now I can just home each axis with the xhc pendant
08:41 PM mrec: independently
09:39 PM mrec: the most practical way ... push m-home 1 sec -> unhome push m-home <1sec -> home
09:39 PM mrec: the haptic is also okay