How to configure a XHC-WHB04B pendant ?
I have try to change my config according to your information :
net pdnt.mode.is-manual halui.mode.is-manual whb.halui.mode.is-manual net pdnt.mode.is-manual whb.halui.mode.is-teleop
But like that i get any move from the pendant ??? so i did not understand why some user have issue with standard config ?
Is someone know more things about teleop ?
Or maybe this is on,ly related with XHC-WHB04-04 (4 axis variant)
So if i understand correctly with trivial kinematics the teleop mode is used only if machine is not homed ?
You mean after machine is homed this is no more used.
Signal managed by pendant is :
net pdnt.mode.is-auto net pdnt.mode.is-manual net pdnt.mode.is-mdi net pdnt.mode.is-teleop net pdnt.mode.is-joint
from Lcnc manual i see
halui.mode.teleop bit in : pin for requesting coordinated jog mode
So at the end i have not really understand what is really needed what is really needed.
Original component for machinekit did not use teleop mode at all, when i have start the conversion for Linuxcnc i get mpg working only using teleop mode, now i think this is maybe because i use a not homed machine for test ???
hal config need to be restored :
net pdnt.mode.is-teleop halui.mode.is-teleop whb.halui.mode.is-teleop
hal config you need to add :
# "is-homed" axis signal for allowing pendant when machine is not homed net pdnt.axis.X.is-homed halui.joint.0.is-homed whb.halui.joint.x.is-homed net pdnt.axis.Y.is-homed halui.joint.1.is-homed whb.halui.joint.y.is-homed net pdnt.axis.Z.is-homed halui.joint.2.is-homed whb.halui.joint.z.is-homed
That could be because Machinekit does not have the Joints-Axes changes, which separates the concepts of joints and axes (and adds separate jog inputs for both)
I have push code to Github for manage both case (homed/unhomed)
Does anyone know what the reason is why the pendant only works in teleop mode?
I checked the sourcecode and the implementation is certainly not correct right now.
before it's homed it will take the signals from joint.* once it's homed it will take the signals from axis.*
There's no need to manually switch between free / teleop mode at all it seems.
Also the M-Home option on the pendant doesn't seem to be useful for me, I use to home manually on my lathe (on the milling machine I do automatic homing), I'm going to expose new pins to allow homing the currently active axis (it's just an addition if someone doesn't want to use those pins just leave them unconnected)
- when wiring up the home / unhome joints it is possible to independently home all axis (and it's possible to drive outside the designated area for homing purpose)
- when pushing the M-Home button >1 sec it will send an unhome request
- when pushing the M-Home button <1 sec it will send a home request
the requests are sent when the button is released (I tested the haptic for this and it feels comfortable)
# those are active before homing
net pdnt.joint.0.jog-scale whb.joint.0.jog-scale joint.0.jog-scale
net pdnt.joint.1.jog-scale whb.joint.1.jog-scale joint.2.jog-scale
net pdnt.joint.2.jog-scale whb.joint.2.jog-scale joint.1.jog-scale
#net pdnt.joint.3.jog-scale whb.joint.3.jog-scale joint.3.jog-scale
net pdnt.joint.0.jog-counts whb.joint.0.jog-counts joint.0.jog-counts
net pdnt.joint.1.jog-counts whb.joint.1.jog-counts joint.2.jog-counts
net pdnt.joint.2.jog-counts whb.joint.2.jog-counts joint.1.jog-counts
#net pdnt.joint.3.jog-counts whb.joint.3.jog-counts jonit.3.jog-counts
net pdnt.joint.0.jog-enable whb.joint.0.jog-enable joint.0.jog-enable
net pdnt.joint.1.jog-enable whb.joint.1.jog-enable joint.2.jog-enable
net pdnt.joint.2.jog-enable whb.joint.2.jog-enable joint.1.jog-enable
net pdnt.joint.0.home whb.joint.0.home halui.joint.0.home
net pdnt.joint.1.home whb.joint.1.home halui.joint.2.home
net pdnt.joint.2.home whb.joint.2.home halui.joint.1.home
net pdnt.joint.0.unhome whb.joint.0.unhome halui.joint.0.unhome
net pdnt.joint.1.unhome whb.joint.1.unhome halui.joint.2.unhome
net pdnt.joint.2.unhome whb.joint.2.unhome halui.joint.1.unhome
Those entries will be mandatory in order to be able to use the pendant when the machine is not homed.
(please note the joint 1 <-> joint 2 twist is related to my setup)
- anyone volunteer to clean up the code? There should be a class for each timed button to tidy up the code. I'm absolutely overloaded at the moment on my side with various other tasks....