- Posts: 310
- Thank you received: 27
Adding a ShuttleXpress
7 years 3 months ago - 7 years 3 months ago #140612
by JetForMe
That's helpful! I have that.
I tried loading it in halcmd, but I get a permissions error:
The man page for shuttle says "The LinuxCNC Debian package installs an appropriate udev file automatically", but I had no such file. So I created it, as per the man page instructions:
/etc/udev/rules.d/99-shuttle.rules
I think this has worked.
Replied by JetForMe on topic Adding a ShuttleXpress
dgarrett wrote: For the master branch and prerelease 2.8~pre*:
Code:7.8. shuttlexpress driver renamed to shuttle The HAL driver for the Contour Designs ShuttleXpress device has been renamed from "shuttlexpress" to just "shuttle". If your hal files include some variant of "loadusr shuttlexpress", replace "shuttlexpress" with "shuttle".
That's helpful! I have that.
I tried loading it in halcmd, but I get a permissions error:
Code:
$ halcmd -f
halcmd: loadusr shuttle
halcmd: shuttle: checking /dev/hidraw0
shuttle: found Contour Design ShuttleXpress on /dev/hidraw0
shuttle: checking /dev/hidraw1
shuttle: error opening /dev/hidraw1: Permission denied
shuttle: make sure you have read permission on /dev/hidraw1, read the shuttle(1) manpage for more info
shuttle: checking /dev/hidraw2
shuttle: error opening /dev/hidraw2: Permission denied
shuttle: make sure you have read permission on /dev/hidraw2, read the shuttle(1) manpage for more info
shuttle: checking /dev/hidraw3
shuttle: error opening /dev/hidraw3: Permission denied
shuttle: make sure you have read permission on /dev/hidraw3, read the shuttle(1) manpage for more info
The man page for shuttle says "The LinuxCNC Debian package installs an appropriate udev file automatically", but I had no such file. So I created it, as per the man page instructions:
/etc/udev/rules.d/99-shuttle.rules
Code:
SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0b33", ATTRS{idProduct}=="0020", MODE="0444"
SUBSYSTEM=="hidraw", ATTRS{idVendor}=="05f3", ATTRS{idProduct}=="0240", MODE="0444"
I think this has worked.
Last edit: 7 years 3 months ago by JetForMe.
Please Log in or Create an account to join the conversation.
7 years 3 months ago #140618
by JetForMe
Replied by JetForMe on topic Adding a ShuttleXpress
Okay, now that I've got LinuxCNC seeing my ShuttleXpress, I'm having trouble wiring it up. I've looked at a few configurations I've found online (the most thorough so far is
this one
), but non seem to do what I'd like.
The ShuttleXpress has a number of momentary buttons, a spring-loaded ring that returns to center, and an encoder wheel you can spin. I'd like to use the buttons primarily to select the active jog axis, but halui.joint.0.sel doesn't seem to do the trick (and how do I deal with joints vs axes in joint mode or axis mode on my gantry table?).
I'd like to map the ring, which outputs an integer from -7 to 7 (or a float from -1 to 1), to arbitrary jog speeds. I can't find any kind of s32 lookup table component. I could just scale the value, but would prefer to set the values explicitly.
There's a halui jog section, including some inputs for the selected axis, but I don't see how to select an axis for jogging in halui.
There are other things I'm finding requires a lot of HAL wiring to make work, enough that I feel like I must be missing something obvious.
The ShuttleXpress has a number of momentary buttons, a spring-loaded ring that returns to center, and an encoder wheel you can spin. I'd like to use the buttons primarily to select the active jog axis, but halui.joint.0.sel doesn't seem to do the trick (and how do I deal with joints vs axes in joint mode or axis mode on my gantry table?).
I'd like to map the ring, which outputs an integer from -7 to 7 (or a float from -1 to 1), to arbitrary jog speeds. I can't find any kind of s32 lookup table component. I could just scale the value, but would prefer to set the values explicitly.
There's a halui jog section, including some inputs for the selected axis, but I don't see how to select an axis for jogging in halui.
There are other things I'm finding requires a lot of HAL wiring to make work, enough that I feel like I must be missing something obvious.
Please Log in or Create an account to join the conversation.
7 years 3 months ago #140626
by rodw
Replied by rodw on topic Adding a ShuttleXpress
There is a component called lincurve that might let you map the -1 to +1 discrete values assuming its a float. You will need a couple of steps to confer the float down to a bit.
With a gantry, I would just forget about the joint mode and live with hitting home all as you power up. Thats all I've ever done.
Regarding axis selection and jog wheels, I have an example for a 7i76e on my build thread here forum.linuxcnc.org/show-your-stuff/32029...build?start=20#85279
It has all the axis select for jogging covered. I've extended this to a 6 way selector on my pendant using a mux8 but I'm only using the first 3 for now but I thought the others might be handy for feed override or something.
Another alternative would be to use a custom component to decode your 15 integer values. It would actually be very similar to this example I shared recently forum.linuxcnc.org/plasma-laser/36410-co...are?start=140#140416 This maps a float input to 4 digital pins based on thresholds of the axis position. Very similar.
I think you could map the integer values to a 16 bit bitmap that could be used to set the discrete pins.
With a gantry, I would just forget about the joint mode and live with hitting home all as you power up. Thats all I've ever done.
Regarding axis selection and jog wheels, I have an example for a 7i76e on my build thread here forum.linuxcnc.org/show-your-stuff/32029...build?start=20#85279
It has all the axis select for jogging covered. I've extended this to a 6 way selector on my pendant using a mux8 but I'm only using the first 3 for now but I thought the others might be handy for feed override or something.
Another alternative would be to use a custom component to decode your 15 integer values. It would actually be very similar to this example I shared recently forum.linuxcnc.org/plasma-laser/36410-co...are?start=140#140416 This maps a float input to 4 digital pins based on thresholds of the axis position. Very similar.
I think you could map the integer values to a 16 bit bitmap that could be used to set the discrete pins.
The following user(s) said Thank You: mudnaes
Please Log in or Create an account to join the conversation.
7 years 3 months ago #140632
by JetForMe
Replied by JetForMe on topic Adding a ShuttleXpress
Would an s32/float lookup table component be generally useful? It would sure help me, and maybe it's a good way to learn to write components.
The following user(s) said Thank You: mudnaes
Please Log in or Create an account to join the conversation.
7 years 3 months ago - 7 years 3 months ago #140634
by JetForMe
Replied by JetForMe on topic Adding a ShuttleXpress
Regarding joint/world modes and jogging (somewhat off-topic, sorry): I really want to be able to jog the machine before homing. I feel like it should be perfectly safe to let me jog joint 0 (x) and joint 3 (z), and I wish LinuxCNC would give me a way to jog joints 1 & 2 together before homing, or separately if I really really promise I know what I'm doing.
Last edit: 7 years 3 months ago by JetForMe.
The following user(s) said Thank You: mudnaes
Please Log in or Create an account to join the conversation.
- randypetersen
- Offline
- Premium Member
-
Less
More
- Posts: 136
- Thank you received: 15
7 years 2 months ago #143388
by randypetersen
Replied by randypetersen on topic Adding a ShuttleXpress
JetForMe, how is your shuttle jogging method coming? Can I ask what version shuttle you have?
I have a Contour Design ShuttlePRO Model SP-JNS from my photo editing days, and was thinking about trying to connect it to linuxcnc. Once you got it updated, was it pretty easy to set up and use?
I have a Contour Design ShuttlePRO Model SP-JNS from my photo editing days, and was thinking about trying to connect it to linuxcnc. Once you got it updated, was it pretty easy to set up and use?
The following user(s) said Thank You: mudnaes
Please Log in or Create an account to join the conversation.
Time to create page: 0.061 seconds