unstable rotation range from device

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

Post Reply
spart
Posts: 1
Joined: Fri Nov 08, 2019 2:26 pm

unstable rotation range from device

Post by spart »

Hi,

There is an issue with the spacemouse rotation values that I receive from the device. Testing the scale values from below:
SPWfloat32 f;
SiSyncGetScaleOverall(devHdl, &f);
float rx, ry, rz;
SiSyncGetScaleRx(devHdl, &rx);
SiSyncGetScaleRy(devHdl, &ry);
SiSyncGetScaleRz(devHdl, &rz);

The f, rx, ry, rz are all 1. So I expect to get a rotation range [-350, 350], however, the values I get are very big e.g. -2000-, 2000+. Why do I see this behavior? My colleague tested the same device (along with 2 more devices) and he gets reasonable values [-350, 350]. I reinstalled the driver to start fresh, but no difference. I also check the 3D Connexion Properties values for our software and the Speed sensitivity is in the middle and the Advanced Settings are all as default.
jwick
Moderator
Moderator
Posts: 3339
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: unstable rotation range from device

Post by jwick »

There are probably hidden scale factors in the cfg file to make the GUI sliders line up nicely.

Which cfg file is in use when your application is in focus?
You might want to send it to us over the apisupport email address.

In general you can't rely on the range of values from the device. Users will always go behind your back and apply their own preferred scaling. You should make the application work "well" with the defaults. If it is an application that can be dangerous with out-of-range values (e.g., controlling a machine), the application must filter the data to its own domain.
Post Reply