How do I get the maximum axis values?

I am trying to implement SpaceNavigator support using JInput on Linux (RHEL 5.3 x86_64) and the open source spacenav drivers. I can detect the device properly and read the values via Component.getPollData(). However, I cannot seem to find any way of reading what the minimum and maximum values are. It is unclear to me where the official API docs are, but I am using the http://www.newdawnsoftware.com/resources/jinput/apidocs/ referenced in endolf’s “Getting Started with JInput” topic (post #1). This post suggests that axes can be normalized, but I see no way to check for this (or, even better, turn it on) in the above-mentioned docs, nor is there any min/max query function.

Are there more recent docs that I should be using? If not, how do I enable normalization, or at least determine the min/max? (Obviously I can find out empirically, but 3Dconnexion makes multiple devices and there is no guarantee that the min/max are the same for all the devices)

Thanks,
Geoff

Hi

normalisation is not something you can set, it’s controlled by the device/driver. Any USB device should be normalised from my experimentation. We rely on the data the OS gives us, and a value is all we get.

Endolf

The SpaceNavigator driver seems to output values between -4096 and 4096 (although values above about +/-3300 are hard to get) on both the open source Linux drivers and the official drivers on Windows, so it looks like this driver, at least, does not normalize the values. Is there any OS interface to get the maximum values? If not, then I guess there’s not much that can be done, and it’s arguably a bug in the 3Dconnexion drivers.