From: John Stone (johns_at_ks.uiuc.edu)
Date: Wed Jun 24 2009 - 15:50:18 CDT

Hi,
  I can add all of the features you're asking for, but it'll have
to wait until after the VMD 1.8.7 release as the changes would be
too invasive to be debugged adequately prior to the release. That said,
I would be happy to provide you (and any other interested parties) with
test builds once the features are added. I do intend to add some new
GUI menus to ease configuration of Spaceball/Spacenavigator and Joystick
devices among others. Let me get back to you on this after the new
version is released. (just a few more days now...)

Cheers,
  John Stone
  vmd_at_ks.uiuc.edu

On Tue, Jun 23, 2009 at 07:32:57PM -0400, Biff Forbush wrote:
> Hi all,
>
> I have just installed a Saitek joystick for use with VMD and find
> that it does indeed make life a lot easier. There are some frustrations
> however, which would be easily relieved with some configurability (maybe
> I am missing something?). Looking at Win32joystick.C I see that
> everything is hard coded, and while it would be easy for me to change
> this routine, it would probably be easier for me to rewire joysticks
> than to maintain my own version of VMD. Very helpful improvements would
> be (the first 3 of these, can not be handled by rewiring the sticks):
>
> 1) configurable deadzone, rather than the 8% deadzone that looks to
> be hard-coded in the calls to the nullregion(800,...) routine. This
> fixed deadzone wipes out the fine control that would be afforded near
> zero offset. It is frustrating that I have to return to the touchpad
> to make very fine moves. Clearly some deadzone is necessary, but in my
> case this could be simply done within the Saitek joystick control panel,
> which sets up its own deadzones for each controller axis.
>
> 2) Configurable response (sensitivity to joystick). Again, maybe I
> am missing something [maybe transInc, rotInc, and scaleInc can be set
> from VMD?]. I find that rotation is set pretty well, but that with
> scaling and translation, I am likely to send my molecule off into
> never-never land with any more than the slightest joystick movement past
> the deadzone.
>
> 3) button-press (or VMD command which the user could set to a
> button-press) to set joystick mode (sticks[i].moveMode), one button for
> rotation, one for translation, etc. The present 4-way toggle is very
> tricky to use without constant reference to the command window, very
> frustrating.
>
> 4) VMD or menu configurability of joysticks, axes and buttons. I
> recognize that this would add more baggage to VMD, and perhaps rewiring
> joysticks is the easier solution, but.... My Saitek controller has a
> 5-axes and it would be perfect to use the Z-rotation (stick handle
> rotation) for the VMD Z axis affording full 3d rotation control with one
> grip -- unfortunately VMD chooses to use the Zaxis slider (a separate
> control) instead. A lesser problem is the mapping of "reset" to the
> joystick trigger (button 1), all too easy to snap out of a carefully
> configured view. I managed to use a third party virtual joystick driver
> (ppjoy and ppjoyjoy) to remap the Zaxis, but unfortunately the
> directionality is backwards. In addition the ppjoy virtual joystick
> solution presents two joysticks to VMD, and there is no option to watch
> just one of them (apart from the tricky 4-way toggle, of which there are
> now two), so the whole thing is pretty much of a kludge.
>
> Please forgive if I am missing features that are already there.
>
> Regards,
> Biff
>

-- 
NIH Resource for Macromolecular Modeling and Bioinformatics
Beckman Institute for Advanced Science and Technology
University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
Email: johns_at_ks.uiuc.edu                 Phone: 217-244-3349
  WWW: http://www.ks.uiuc.edu/~johns/      Fax: 217-244-6078