Regression in driver 1.2.17?

Post questions, comments and feedback to our 3Dconnexion UNIX and Linux Development Team.

Moderator: Moderators

Post Reply

Do you think that using XEvents for the device driver is archaic?

Poll ended at Mon Dec 10, 2007 7:43 am

Yes
1
100%
No
0
No votes
 
Total votes: 1

Rapp_Scallion
Posts: 9
Joined: Tue Aug 28, 2007 4:11 am

Regression in driver 1.2.17?

Post by Rapp_Scallion » Mon Nov 12, 2007 7:43 am

In our application we have a problem that occurs with the new driver version (1.2.17) on the Linux x86_64 platform.

When we generate a custom configuration in the panel for our application, our application does not receive any events anymore. When we switch to the control panel, our application starts to receive events again.

This did not happen with 1.2.11, so I assume a regression here.

The custom configuration looks like this:

Code: Select all

;
; 3Dconnexion configuration file. Copyright 2007-2008 3Dconnexion.
;
; This file created by TlWriteConfigFile on: Wed Oct 31 17:56:38 2007
;

[VERSION]
VERSION = 5.2
APPLICATION_NUMBER = 1.2
FILE_REVISION_NUMBER = 2.3

[IDENTIFICATION]
APPLICATION_NAME = "OpenFlipper"
APP_WINDOW_NAME = { "OpenFlipper" }
OWNER = 3DCONNEXION
PLATFORM = XWINDOWS
LEVEL = BEGINNER
ORIENTATION = HORIZONTAL
DRIVER_TYPE = ""

[CONFIGURATION]
TRANSPORT_PROTOCOL = SM_XCM_TRANSPORT
HIDE_FILE = FALSE
EXECUTABLES = { }
COPY_FILES =
   {
   }

COMMAND_LINE = "-GL"
CUSTOM =
   {
   { "README.SpaceWare.9.2.17" },
   { "LPFK Palette 1", "POINT", "LINE", "CURVE2", "PLANE", "LIMIT1", "SURF1", "TEXTD2", "DIMENS2", "AUXVIEW2", "PARAM3D", "TEXT", "CURVE1", "ANALYSIS", "TRANSFOR", "UTILITY", "SOLIDE", "ERASE", "IDENTIFY", "DETAIL", "PLOT", "AXIS", "LIMIT2", "IMAGE", "STANDARD", "GRAPHIC", "LAYER", "SETS", "MODELS", "FILE", "INTERRUP", "YES", "NO" }
   }

SHOW_INSTRUCTIONS = NEVER
INSTRUCTIONS =
   {
   }

[TUNING]
; Motion Labels
MOTION_LABEL_1_POS = ""
MOTION_LABEL_1_NEG = ""
MOTION_LABEL_2_POS = ""
MOTION_LABEL_2_NEG = ""
MOTION_LABEL_3_POS = ""
MOTION_LABEL_3_NEG = ""
MOTION_LABEL_4_POS = ""
MOTION_LABEL_4_NEG = ""
MOTION_LABEL_5_POS = ""
MOTION_LABEL_5_NEG = ""
MOTION_LABEL_6_POS = ""
MOTION_LABEL_6_NEG = ""

; Application Minimum and Maximum values
APP_MIN_1 = -512.00
APP_MAX_1 = 512.00
APP_MIN_2 = -512.00
APP_MAX_2 = 512.00
APP_MIN_3 = -512.00
APP_MAX_3 = 512.00
APP_MIN_4 = -512.00
APP_MAX_4 = 512.00
APP_MIN_5 = -512.00
APP_MAX_5 = 512.00
APP_MIN_6 = -512.00
APP_MAX_6 = 512.00

; High Pass Filters and Axis Filters
; { high axis, high trans, high rot, tran on, rot on, x, y, z, r, u, v }
HPFM_BEG_DFLT = { OFF, OFF, OFF,  ON,  ON,  ON,  ON,  ON,  ON,  ON,  ON }
HPFM_INT_DFLT = { OFF, OFF, OFF,  ON,  ON,  ON,  ON,  ON,  ON,  ON,  ON }
HPFM_EXP_DFLT = { OFF, OFF, OFF,  ON,  ON,  ON,  ON,  ON,  ON,  ON,  ON }

HPFM_BEG_USER = { OFF, OFF, OFF,  ON,  ON,  ON,  ON,  ON,  ON,  ON,  ON }
HPFM_INT_USER = { OFF, OFF, OFF,  ON,  ON,  ON,  ON,  ON,  ON,  ON,  ON }
HPFM_EXP_USER = { OFF, OFF, OFF,  ON,  ON,  ON,  ON,  ON,  ON,  ON,  ON }

; Custom Bit Fields
BIT_FIELD_DFLT = { OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF,
                   OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF,
                   OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF,
                   OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF }

BIT_FIELD_USER = { OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF,
                   OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF,
                   OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF,
                   OFF, OFF, OFF, OFF, OFF, OFF, OFF, OFF }

; Button Functions
BUTTON_MASKS =
   {
   }

BUTTON_NUMBERS =
   {
   { UI_SB1, "Button 1111", 1 },
   { UI_SB2, "Button 2", 2 },
   { UI_SB3, "Button 3", 3 },
   { UI_SB4, "Button 4", 4 },
   { UI_SB5, "Button 5", 5 },
   { UI_SB6, "Button 6", 6 },
   { UI_SB7, "Button 7", 7 },
   { UI_SB8, "Button 8", 8 },
   { UI_SB9, "Button 9", 9 },
   { UI_SB10, "Button 10", 10 },
   { UI_SB11, "Set Home View", 11 },
   { UI_SB12, "Button 12", 34 },
   { UI_SB13, "Button 13", 35 },
   { UI_SB14, "Button 14", 36 },
   { UI_SB15, "Button 15", 37 },
   { UI_SB16, "Button 16", 38 },
   { UI_MENU_TOGGLE, "Menu Toggle", 12 },
   { UI_TRANS_TOGGLE, "Translations", 13 },
   { UI_ROT_TOGGLE, "Rotations", 14 },
   { UI_HPV_TOGGLE, "Dominant Axis", 15 },
   { UI_DEC_SENS, "Decrease Sensitivity", 16 },
   { UI_INC_SENS, "Increase Sensitivity", 17 },
   { UI_RESTORE_DEF, "Restore Defaults", 18 },
   { UI_PAN, "Pan Only", 19 },
   { UI_ZOOM, "Zoom Only", 20 },
   { UI_TX, "TX Only", 21 },
   { UI_TY, "TY Only", 22 },
   { UI_TZ, "TZ Only", 23 },
   { UI_RX, "RX Only", 24 },
   { UI_RY, "RY Only", 25 },
   { UI_RZ, "RZ Only", 26 },
   { UI_REZERO_SB, "Rezero Device", 27 },
   { UI_SHIFT_MODE, "Shift", 28 },
   { UI_ON_TOP, "Keep On Top", 29 },
   { UI_ESC_KEY, "Esc Key", 78 },
   { UI_ALT_KEY, "Alt Key", 62 },
   { UI_SHIFT_KEY, "Shift Key", 60 },
   { UI_CTRL_KEY, "Ctrl Key", 61 },
   { UI_CONFIG_NEXT, "Next Config", 79 },
   { UI_SAVE, "Save", 33 },
   { UI_DFLT_SENS, "Default Sensitivity", 98 }
   }

BUTTON_CHARACTERS =
   {
   { USER_DEF_41, "Custom 7", "<Control_L><Shift_L><Alt_L><F7>" },
   { USER_DEF_42, "Custom 8", "<Control_L><Shift_L><Alt_L><F8>" },
   { USER_DEF_43, "Custom 9", "<Control_L><Shift_L><Alt_L><F9>" },
   { USER_DEF_44, "Custom 10", "<Control_L><Shift_L><Alt_L><F10>" },
   { USER_DEF_45, "Custom 11", "<Control_L><Shift_L><Alt_L><F11>" },
   { USER_DEF_46, "Custom 1", "<Control_L><Shift_L><Alt_L><F1>" },
   { USER_DEF_47, "Custom 2", "<Control_L><Shift_L><Alt_L><F2>" },
   { USER_DEF_48, "Custom 3", "<Control_L><Shift_L><Alt_L><F3>" },
   { USER_DEF_49, "Custom 4", "<Control_L><Shift_L><Alt_L><F4>" },
   { USER_DEF_50, "Custom 5", "<Control_L><Shift_L><Alt_L><F5>" },
   { USER_DEF_51, "Custom 6", "<Control_L><Shift_L><Alt_L><F6>" }
   }

[SB4000]
; Axis Mappings (XYZRUV is the default)
AXIS_MAP_HRZ_DFLT = "XYZRUV"
AXIS_MAP_VRT_DFLT = "XzYRvU"

AXIS_MAP_HRZ_USER = "XYZRUV"
AXIS_MAP_VRT_USER = "XzYRvU"

; Motion Mapping
MOTION_MAP_1_POS_DFLT = AXIS
MOTION_MAP_1_NEG_DFLT = AXIS
MOTION_MAP_2_POS_DFLT = AXIS
MOTION_MAP_2_NEG_DFLT = AXIS
MOTION_MAP_3_POS_DFLT = AXIS
MOTION_MAP_3_NEG_DFLT = AXIS
MOTION_MAP_4_POS_DFLT = AXIS
MOTION_MAP_4_NEG_DFLT = AXIS
MOTION_MAP_5_POS_DFLT = AXIS
MOTION_MAP_5_NEG_DFLT = AXIS
MOTION_MAP_6_POS_DFLT = AXIS
MOTION_MAP_6_NEG_DFLT = AXIS

MOTION_MAP_1_POS_USER = AXIS
MOTION_MAP_1_NEG_USER = AXIS
MOTION_MAP_2_POS_USER = AXIS
MOTION_MAP_2_NEG_USER = AXIS
MOTION_MAP_3_POS_USER = AXIS
MOTION_MAP_3_NEG_USER = AXIS
MOTION_MAP_4_POS_USER = AXIS
MOTION_MAP_4_NEG_USER = AXIS
MOTION_MAP_5_POS_USER = AXIS
MOTION_MAP_5_NEG_USER = AXIS
MOTION_MAP_6_POS_USER = AXIS
MOTION_MAP_6_NEG_USER = AXIS

; The Button Mappings.
BUTTON_1_DFLT = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_DFLT = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_DFLT = { UI_HPV_TOGGLE, HOLD }
BUTTON_4_DFLT = { UI_ON_TOP, HOLD }
BUTTON_5_DFLT = { UI_DEC_SENS, HOLD }
BUTTON_6_DFLT = { UI_INC_SENS, HOLD }
BUTTON_7_DFLT = { UI_PAN, HOLD }
BUTTON_8_DFLT = { UI_ZOOM, HOLD }
BUTTON_9_DFLT = { UI_RESTORE_DEF, HOLD }
BUTTON_10_DFLT = UNDEFINED
BUTTON_11_DFLT = UNDEFINED
BUTTON_12_DFLT = UNDEFINED
BUTTON_13_DFLT = UNDEFINED
BUTTON_14_DFLT = UNDEFINED
BUTTON_15_DFLT = UNDEFINED
BUTTON_16_DFLT = UNDEFINED
BUTTON_17_DFLT = UNDEFINED
BUTTON_18_DFLT = UNDEFINED
BUTTON_19_DFLT = UNDEFINED
BUTTON_20_DFLT = UNDEFINED
BUTTON_21_DFLT = UNDEFINED
BUTTON_22_DFLT = UNDEFINED
BUTTON_23_DFLT = UNDEFINED
BUTTON_24_DFLT = UNDEFINED
BUTTON_25_DFLT = UNDEFINED
BUTTON_26_DFLT = UNDEFINED
BUTTON_27_DFLT = UNDEFINED
BUTTON_28_DFLT = UNDEFINED
BUTTON_29_DFLT = UNDEFINED
BUTTON_30_DFLT = UNDEFINED
BUTTON_31_DFLT = UNDEFINED
BUTTON_32_DFLT = UNDEFINED

BUTTON_1_USER = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_USER = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_USER = { UI_HPV_TOGGLE, HOLD }
BUTTON_4_USER = { UI_ON_TOP, HOLD }
BUTTON_5_USER = { UI_DEC_SENS, HOLD }
BUTTON_6_USER = { UI_INC_SENS, HOLD }
BUTTON_7_USER = { UI_PAN, HOLD }
BUTTON_8_USER = { UI_ZOOM, HOLD }
BUTTON_9_USER = { UI_RESTORE_DEF, HOLD }
BUTTON_10_USER = UNDEFINED
BUTTON_11_USER = UNDEFINED
BUTTON_12_USER = UNDEFINED
BUTTON_13_USER = UNDEFINED
BUTTON_14_USER = UNDEFINED
BUTTON_15_USER = UNDEFINED
BUTTON_16_USER = UNDEFINED
BUTTON_17_USER = UNDEFINED
BUTTON_18_USER = UNDEFINED
BUTTON_19_USER = UNDEFINED
BUTTON_20_USER = UNDEFINED
BUTTON_21_USER = UNDEFINED
BUTTON_22_USER = UNDEFINED
BUTTON_23_USER = UNDEFINED
BUTTON_24_USER = UNDEFINED
BUTTON_25_USER = UNDEFINED
BUTTON_26_USER = UNDEFINED
BUTTON_27_USER = UNDEFINED
BUTTON_28_USER = UNDEFINED
BUTTON_29_USER = UNDEFINED
BUTTON_30_USER = UNDEFINED
BUTTON_31_USER = UNDEFINED
BUTTON_32_USER = UNDEFINED

; Null Regions. { NegMax, NegMin, PosMin, PosMax }
NULL_REGION_1_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_DFLT = { -1.00, 0.00, 0.00, 1.00 }

NULL_REGION_1_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_USER = { -1.00, 0.00, 0.00, 1.00 }

; Tuning Scalars
TUNING_SCALARS = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sensitivity Values
SENS_BEG_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

SENS_BEG_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sampling Frequency
SAMPLING_FREQUENCY = 14

[SB5000]
; Axis Mappings (XYZRUV is the default)
AXIS_MAP_HRZ_DFLT = "XYZRUV"
AXIS_MAP_VRT_DFLT = "XzYRvU"

AXIS_MAP_HRZ_USER = "XYZRUV"
AXIS_MAP_VRT_USER = "XzYRvU"

; Motion Mapping
MOTION_MAP_1_POS_DFLT = AXIS
MOTION_MAP_1_NEG_DFLT = AXIS
MOTION_MAP_2_POS_DFLT = AXIS
MOTION_MAP_2_NEG_DFLT = AXIS
MOTION_MAP_3_POS_DFLT = AXIS
MOTION_MAP_3_NEG_DFLT = AXIS
MOTION_MAP_4_POS_DFLT = AXIS
MOTION_MAP_4_NEG_DFLT = AXIS
MOTION_MAP_5_POS_DFLT = AXIS
MOTION_MAP_5_NEG_DFLT = AXIS
MOTION_MAP_6_POS_DFLT = AXIS
MOTION_MAP_6_NEG_DFLT = AXIS

MOTION_MAP_1_POS_USER = AXIS
MOTION_MAP_1_NEG_USER = AXIS
MOTION_MAP_2_POS_USER = AXIS
MOTION_MAP_2_NEG_USER = AXIS
MOTION_MAP_3_POS_USER = AXIS
MOTION_MAP_3_NEG_USER = AXIS
MOTION_MAP_4_POS_USER = AXIS
MOTION_MAP_4_NEG_USER = AXIS
MOTION_MAP_5_POS_USER = AXIS
MOTION_MAP_5_NEG_USER = AXIS
MOTION_MAP_6_POS_USER = AXIS
MOTION_MAP_6_NEG_USER = AXIS

; The Button Mappings.
BUTTON_1_DFLT = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_DFLT = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_DFLT = { UI_HPV_TOGGLE, HOLD }
BUTTON_4_DFLT = { UI_ON_TOP, HOLD }
BUTTON_5_DFLT = { UI_DEC_SENS, HOLD }
BUTTON_6_DFLT = { UI_INC_SENS, HOLD }
BUTTON_7_DFLT = { UI_PAN, HOLD }
BUTTON_8_DFLT = { UI_ZOOM, HOLD }
BUTTON_9_DFLT = { UI_RESTORE_DEF, HOLD }
BUTTON_10_DFLT = UNDEFINED
BUTTON_11_DFLT = UNDEFINED
BUTTON_12_DFLT = UNDEFINED
BUTTON_13_DFLT = UNDEFINED
BUTTON_14_DFLT = UNDEFINED
BUTTON_15_DFLT = UNDEFINED
BUTTON_16_DFLT = UNDEFINED
BUTTON_17_DFLT = UNDEFINED
BUTTON_18_DFLT = UNDEFINED
BUTTON_19_DFLT = UNDEFINED
BUTTON_20_DFLT = UNDEFINED
BUTTON_21_DFLT = UNDEFINED
BUTTON_22_DFLT = UNDEFINED
BUTTON_23_DFLT = UNDEFINED
BUTTON_24_DFLT = UNDEFINED
BUTTON_25_DFLT = UNDEFINED
BUTTON_26_DFLT = UNDEFINED
BUTTON_27_DFLT = UNDEFINED
BUTTON_28_DFLT = UNDEFINED
BUTTON_29_DFLT = UNDEFINED
BUTTON_30_DFLT = UNDEFINED
BUTTON_31_DFLT = UNDEFINED
BUTTON_32_DFLT = UNDEFINED

BUTTON_1_USER = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_USER = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_USER = { UI_HPV_TOGGLE, HOLD }
BUTTON_4_USER = { UI_ON_TOP, HOLD }
BUTTON_5_USER = { UI_DEC_SENS, HOLD }
BUTTON_6_USER = { UI_INC_SENS, HOLD }
BUTTON_7_USER = { UI_PAN, HOLD }
BUTTON_8_USER = { UI_ZOOM, HOLD }
BUTTON_9_USER = { UI_RESTORE_DEF, HOLD }
BUTTON_10_USER = UNDEFINED
BUTTON_11_USER = UNDEFINED
BUTTON_12_USER = UNDEFINED
BUTTON_13_USER = UNDEFINED
BUTTON_14_USER = UNDEFINED
BUTTON_15_USER = UNDEFINED
BUTTON_16_USER = UNDEFINED
BUTTON_17_USER = UNDEFINED
BUTTON_18_USER = UNDEFINED
BUTTON_19_USER = UNDEFINED
BUTTON_20_USER = UNDEFINED
BUTTON_21_USER = UNDEFINED
BUTTON_22_USER = UNDEFINED
BUTTON_23_USER = UNDEFINED
BUTTON_24_USER = UNDEFINED
BUTTON_25_USER = UNDEFINED
BUTTON_26_USER = UNDEFINED
BUTTON_27_USER = UNDEFINED
BUTTON_28_USER = UNDEFINED
BUTTON_29_USER = UNDEFINED
BUTTON_30_USER = UNDEFINED
BUTTON_31_USER = UNDEFINED
BUTTON_32_USER = UNDEFINED

; Null Regions. { NegMax, NegMin, PosMin, PosMax }
NULL_REGION_1_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_DFLT = { -1.00, 0.00, 0.00, 1.00 }

NULL_REGION_1_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_USER = { -1.00, 0.00, 0.00, 1.00 }

; Tuning Scalars
TUNING_SCALARS = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sensitivity Values
SENS_BEG_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

SENS_BEG_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sampling Frequency
SAMPLING_FREQUENCY = 14

[SMOUSE]
; Axis Mappings (XYZRUV is the default)
AXIS_MAP_HRZ_DFLT = "XYZRUV"
AXIS_MAP_VRT_DFLT = "XzYRvU"

AXIS_MAP_HRZ_USER = "XYZRUV"
AXIS_MAP_VRT_USER = "XzYRvU"

; Motion Mapping
MOTION_MAP_1_POS_DFLT = AXIS
MOTION_MAP_1_NEG_DFLT = AXIS
MOTION_MAP_2_POS_DFLT = AXIS
MOTION_MAP_2_NEG_DFLT = AXIS
MOTION_MAP_3_POS_DFLT = AXIS
MOTION_MAP_3_NEG_DFLT = AXIS
MOTION_MAP_4_POS_DFLT = AXIS
MOTION_MAP_4_NEG_DFLT = AXIS
MOTION_MAP_5_POS_DFLT = AXIS
MOTION_MAP_5_NEG_DFLT = AXIS
MOTION_MAP_6_POS_DFLT = AXIS
MOTION_MAP_6_NEG_DFLT = AXIS

MOTION_MAP_1_POS_USER = AXIS
MOTION_MAP_1_NEG_USER = AXIS
MOTION_MAP_2_POS_USER = AXIS
MOTION_MAP_2_NEG_USER = AXIS
MOTION_MAP_3_POS_USER = AXIS
MOTION_MAP_3_NEG_USER = AXIS
MOTION_MAP_4_POS_USER = AXIS
MOTION_MAP_4_NEG_USER = AXIS
MOTION_MAP_5_POS_USER = AXIS
MOTION_MAP_5_NEG_USER = AXIS
MOTION_MAP_6_POS_USER = AXIS
MOTION_MAP_6_NEG_USER = AXIS

; The Button Mappings.
BUTTON_1_DFLT = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_DFLT = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_DFLT = { UI_HPV_TOGGLE, HOLD }
BUTTON_4_DFLT = { UI_ON_TOP, HOLD }
BUTTON_5_DFLT = { UI_DEC_SENS, HOLD }
BUTTON_6_DFLT = { UI_INC_SENS, HOLD }
BUTTON_7_DFLT = { UI_PAN, HOLD }
BUTTON_8_DFLT = { UI_ZOOM, HOLD }
BUTTON_9_DFLT = { UI_RESTORE_DEF, HOLD }
BUTTON_10_DFLT = UNDEFINED
BUTTON_11_DFLT = UNDEFINED
BUTTON_12_DFLT = UNDEFINED
BUTTON_13_DFLT = UNDEFINED
BUTTON_14_DFLT = UNDEFINED
BUTTON_15_DFLT = UNDEFINED
BUTTON_16_DFLT = UNDEFINED
BUTTON_17_DFLT = UNDEFINED
BUTTON_18_DFLT = UNDEFINED
BUTTON_19_DFLT = UNDEFINED
BUTTON_20_DFLT = UNDEFINED
BUTTON_21_DFLT = UNDEFINED
BUTTON_22_DFLT = UNDEFINED
BUTTON_23_DFLT = UNDEFINED
BUTTON_24_DFLT = UNDEFINED
BUTTON_25_DFLT = UNDEFINED
BUTTON_26_DFLT = UNDEFINED
BUTTON_27_DFLT = UNDEFINED
BUTTON_28_DFLT = UNDEFINED
BUTTON_29_DFLT = UNDEFINED
BUTTON_30_DFLT = UNDEFINED
BUTTON_31_DFLT = UNDEFINED
BUTTON_32_DFLT = UNDEFINED

BUTTON_1_USER = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_USER = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_USER = { UI_HPV_TOGGLE, HOLD }
BUTTON_4_USER = { UI_ON_TOP, HOLD }
BUTTON_5_USER = { UI_DEC_SENS, HOLD }
BUTTON_6_USER = { UI_INC_SENS, HOLD }
BUTTON_7_USER = { UI_PAN, HOLD }
BUTTON_8_USER = { UI_ZOOM, HOLD }
BUTTON_9_USER = { UI_RESTORE_DEF, HOLD }
BUTTON_10_USER = UNDEFINED
BUTTON_11_USER = UNDEFINED
BUTTON_12_USER = UNDEFINED
BUTTON_13_USER = UNDEFINED
BUTTON_14_USER = UNDEFINED
BUTTON_15_USER = UNDEFINED
BUTTON_16_USER = UNDEFINED
BUTTON_17_USER = UNDEFINED
BUTTON_18_USER = UNDEFINED
BUTTON_19_USER = UNDEFINED
BUTTON_20_USER = UNDEFINED
BUTTON_21_USER = UNDEFINED
BUTTON_22_USER = UNDEFINED
BUTTON_23_USER = UNDEFINED
BUTTON_24_USER = UNDEFINED
BUTTON_25_USER = UNDEFINED
BUTTON_26_USER = UNDEFINED
BUTTON_27_USER = UNDEFINED
BUTTON_28_USER = UNDEFINED
BUTTON_29_USER = UNDEFINED
BUTTON_30_USER = UNDEFINED
BUTTON_31_USER = UNDEFINED
BUTTON_32_USER = UNDEFINED

; Null Regions. { NegMax, NegMin, PosMin, PosMax }
NULL_REGION_1_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_DFLT = { -1.00, 0.00, 0.00, 1.00 }

NULL_REGION_1_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_USER = { -1.00, 0.00, 0.00, 1.00 }

; Tuning Scalars
TUNING_SCALARS = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sensitivity Values
SENS_BEG_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

SENS_BEG_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sampling Frequency
SAMPLING_FREQUENCY = 14

[SPILOT]
; Axis Mappings (XYZRUV is the default)
AXIS_MAP_HRZ_DFLT = "XYZRUV"
AXIS_MAP_VRT_DFLT = "XzYRvU"

AXIS_MAP_HRZ_USER = "XYZRUV"
AXIS_MAP_VRT_USER = "XzYRvU"

; Motion Mapping
MOTION_MAP_1_POS_DFLT = AXIS
MOTION_MAP_1_NEG_DFLT = AXIS
MOTION_MAP_2_POS_DFLT = AXIS
MOTION_MAP_2_NEG_DFLT = AXIS
MOTION_MAP_3_POS_DFLT = AXIS
MOTION_MAP_3_NEG_DFLT = AXIS
MOTION_MAP_4_POS_DFLT = AXIS
MOTION_MAP_4_NEG_DFLT = AXIS
MOTION_MAP_5_POS_DFLT = AXIS
MOTION_MAP_5_NEG_DFLT = AXIS
MOTION_MAP_6_POS_DFLT = AXIS
MOTION_MAP_6_NEG_DFLT = AXIS

MOTION_MAP_1_POS_USER = AXIS
MOTION_MAP_1_NEG_USER = AXIS
MOTION_MAP_2_POS_USER = AXIS
MOTION_MAP_2_NEG_USER = AXIS
MOTION_MAP_3_POS_USER = AXIS
MOTION_MAP_3_NEG_USER = AXIS
MOTION_MAP_4_POS_USER = AXIS
MOTION_MAP_4_NEG_USER = AXIS
MOTION_MAP_5_POS_USER = AXIS
MOTION_MAP_5_NEG_USER = AXIS
MOTION_MAP_6_POS_USER = AXIS
MOTION_MAP_6_NEG_USER = AXIS

; The Button Mappings.
BUTTON_1_DFLT = { USER_DEF_46, HOLD }
BUTTON_2_DFLT = { USER_DEF_47, HOLD }
BUTTON_3_DFLT = { USER_DEF_48, HOLD }
BUTTON_4_DFLT = { USER_DEF_49, HOLD }
BUTTON_5_DFLT = { USER_DEF_50, HOLD }
BUTTON_6_DFLT = { USER_DEF_51, HOLD }
BUTTON_7_DFLT = { USER_DEF_41, HOLD }
BUTTON_8_DFLT = { USER_DEF_42, HOLD }
BUTTON_9_DFLT = { USER_DEF_43, HOLD }
BUTTON_10_DFLT = { USER_DEF_44, HOLD }
BUTTON_11_DFLT = { UI_ESC_KEY, HOLD }
BUTTON_12_DFLT = { UI_ALT_KEY, HOLD }
BUTTON_13_DFLT = { UI_SHIFT_KEY, HOLD }
BUTTON_14_DFLT = { UI_CTRL_KEY, HOLD }
BUTTON_15_DFLT = { USER_DEF_45, HOLD }
BUTTON_16_DFLT = { UI_MENU_TOGGLE, HOLD }
BUTTON_17_DFLT = { UI_INC_SENS, HOLD }
BUTTON_18_DFLT = { UI_DEC_SENS, HOLD }
BUTTON_19_DFLT = { UI_HPV_TOGGLE, HOLD }
BUTTON_20_DFLT = { UI_ROT_TOGGLE, HOLD }
BUTTON_21_DFLT = { UI_CONFIG_NEXT, HOLD }
BUTTON_22_DFLT = UNDEFINED
BUTTON_23_DFLT = UNDEFINED
BUTTON_24_DFLT = UNDEFINED
BUTTON_25_DFLT = UNDEFINED
BUTTON_26_DFLT = UNDEFINED
BUTTON_27_DFLT = UNDEFINED
BUTTON_28_DFLT = UNDEFINED
BUTTON_29_DFLT = UNDEFINED
BUTTON_30_DFLT = UNDEFINED
BUTTON_31_DFLT = UNDEFINED
BUTTON_32_DFLT = UNDEFINED

BUTTON_1_USER = { UI_SB1, HOLD }
BUTTON_2_USER = { UI_SB2, HOLD }
BUTTON_3_USER = { UI_SB3, HOLD }
BUTTON_4_USER = { UI_SB4, HOLD }
BUTTON_5_USER = { UI_SB5, HOLD }
BUTTON_6_USER = { UI_SB6, HOLD }
BUTTON_7_USER = { UI_SB7, HOLD }
BUTTON_8_USER = { UI_SB8, HOLD }
BUTTON_9_USER = { UI_SB9, HOLD }
BUTTON_10_USER = { UI_SB10, HOLD }
BUTTON_11_USER = { UI_ESC_KEY, HOLD }
BUTTON_12_USER = { UI_ALT_KEY, HOLD }
BUTTON_13_USER = { UI_SHIFT_KEY, HOLD }
BUTTON_14_USER = { UI_CTRL_KEY, HOLD }
BUTTON_15_USER = { UI_SB11, HOLD }
BUTTON_16_USER = { UI_MENU_TOGGLE, HOLD }
BUTTON_17_USER = { UI_INC_SENS, HOLD }
BUTTON_18_USER = { UI_DEC_SENS, HOLD }
BUTTON_19_USER = { UI_HPV_TOGGLE, HOLD }
BUTTON_20_USER = { UI_ROT_TOGGLE, HOLD }
BUTTON_21_USER = { UI_CONFIG_NEXT, HOLD }
BUTTON_22_USER = UNDEFINED
BUTTON_23_USER = UNDEFINED
BUTTON_24_USER = UNDEFINED
BUTTON_25_USER = UNDEFINED
BUTTON_26_USER = UNDEFINED
BUTTON_27_USER = UNDEFINED
BUTTON_28_USER = UNDEFINED
BUTTON_29_USER = UNDEFINED
BUTTON_30_USER = UNDEFINED
BUTTON_31_USER = UNDEFINED
BUTTON_32_USER = UNDEFINED

; Null Regions. { NegMax, NegMin, PosMin, PosMax }
NULL_REGION_1_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_DFLT = { -1.00, 0.00, 0.00, 1.00 }

NULL_REGION_1_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_USER = { -1.00, 0.00, 0.00, 1.00 }

; Tuning Scalars
TUNING_SCALARS = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sensitivity Values
SENS_BEG_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

SENS_BEG_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sampling Frequency
SAMPLING_FREQUENCY = 14

[SEXPLORER]
; Axis Mappings (XYZRUV is the default)
AXIS_MAP_HRZ_DFLT = "XYZRUV"
AXIS_MAP_VRT_DFLT = "XzYRvU"

AXIS_MAP_HRZ_USER = "XYZRUV"
AXIS_MAP_VRT_USER = "XzYRvU"

; Motion Mapping
MOTION_MAP_1_POS_DFLT = AXIS
MOTION_MAP_1_NEG_DFLT = AXIS
MOTION_MAP_2_POS_DFLT = AXIS
MOTION_MAP_2_NEG_DFLT = AXIS
MOTION_MAP_3_POS_DFLT = AXIS
MOTION_MAP_3_NEG_DFLT = AXIS
MOTION_MAP_4_POS_DFLT = AXIS
MOTION_MAP_4_NEG_DFLT = AXIS
MOTION_MAP_5_POS_DFLT = AXIS
MOTION_MAP_5_NEG_DFLT = AXIS
MOTION_MAP_6_POS_DFLT = AXIS
MOTION_MAP_6_NEG_DFLT = AXIS

MOTION_MAP_1_POS_USER = AXIS
MOTION_MAP_1_NEG_USER = AXIS
MOTION_MAP_2_POS_USER = AXIS
MOTION_MAP_2_NEG_USER = AXIS
MOTION_MAP_3_POS_USER = AXIS
MOTION_MAP_3_NEG_USER = AXIS
MOTION_MAP_4_POS_USER = AXIS
MOTION_MAP_4_NEG_USER = AXIS
MOTION_MAP_5_POS_USER = AXIS
MOTION_MAP_5_NEG_USER = AXIS
MOTION_MAP_6_POS_USER = AXIS
MOTION_MAP_6_NEG_USER = AXIS

; The Button Mappings.
BUTTON_1_DFLT = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_DFLT = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_DFLT = { USER_DEF_46, HOLD }
BUTTON_4_DFLT = { USER_DEF_47, HOLD }
BUTTON_5_DFLT = { USER_DEF_48, HOLD }
BUTTON_6_DFLT = { USER_DEF_49, HOLD }
BUTTON_7_DFLT = { UI_ESC_KEY, HOLD }
BUTTON_8_DFLT = { UI_ALT_KEY, HOLD }
BUTTON_9_DFLT = { UI_SHIFT_KEY, HOLD }
BUTTON_10_DFLT = { UI_CTRL_KEY, HOLD }
BUTTON_11_DFLT = { USER_DEF_45, HOLD }
BUTTON_12_DFLT = { UI_MENU_TOGGLE, HOLD }
BUTTON_13_DFLT = { UI_INC_SENS, HOLD }
BUTTON_14_DFLT = { UI_DEC_SENS, HOLD }
BUTTON_15_DFLT = { UI_ROT_TOGGLE, HOLD }
BUTTON_16_DFLT = UNDEFINED
BUTTON_17_DFLT = UNDEFINED
BUTTON_18_DFLT = UNDEFINED
BUTTON_19_DFLT = UNDEFINED
BUTTON_20_DFLT = UNDEFINED
BUTTON_21_DFLT = UNDEFINED
BUTTON_22_DFLT = UNDEFINED
BUTTON_23_DFLT = UNDEFINED
BUTTON_24_DFLT = UNDEFINED
BUTTON_25_DFLT = UNDEFINED
BUTTON_26_DFLT = UNDEFINED
BUTTON_27_DFLT = UNDEFINED
BUTTON_28_DFLT = UNDEFINED
BUTTON_29_DFLT = UNDEFINED
BUTTON_30_DFLT = UNDEFINED
BUTTON_31_DFLT = UNDEFINED
BUTTON_32_DFLT = UNDEFINED

BUTTON_1_USER = { UI_TRANS_TOGGLE, HOLD }
BUTTON_2_USER = { UI_ROT_TOGGLE, HOLD }
BUTTON_3_USER = { USER_DEF_46, HOLD }
BUTTON_4_USER = { USER_DEF_47, HOLD }
BUTTON_5_USER = { USER_DEF_48, HOLD }
BUTTON_6_USER = { USER_DEF_49, HOLD }
BUTTON_7_USER = { UI_ESC_KEY, HOLD }
BUTTON_8_USER = { UI_ALT_KEY, HOLD }
BUTTON_9_USER = { UI_SHIFT_KEY, HOLD }
BUTTON_10_USER = { UI_CTRL_KEY, HOLD }
BUTTON_11_USER = { USER_DEF_45, HOLD }
BUTTON_12_USER = { UI_MENU_TOGGLE, HOLD }
BUTTON_13_USER = { UI_INC_SENS, HOLD }
BUTTON_14_USER = { UI_DEC_SENS, HOLD }
BUTTON_15_USER = { UI_ROT_TOGGLE, HOLD }
BUTTON_16_USER = UNDEFINED
BUTTON_17_USER = UNDEFINED
BUTTON_18_USER = UNDEFINED
BUTTON_19_USER = UNDEFINED
BUTTON_20_USER = UNDEFINED
BUTTON_21_USER = UNDEFINED
BUTTON_22_USER = UNDEFINED
BUTTON_23_USER = UNDEFINED
BUTTON_24_USER = UNDEFINED
BUTTON_25_USER = UNDEFINED
BUTTON_26_USER = UNDEFINED
BUTTON_27_USER = UNDEFINED
BUTTON_28_USER = UNDEFINED
BUTTON_29_USER = UNDEFINED
BUTTON_30_USER = UNDEFINED
BUTTON_31_USER = UNDEFINED
BUTTON_32_USER = UNDEFINED

; Null Regions. { NegMax, NegMin, PosMin, PosMax }
NULL_REGION_1_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_DFLT = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_DFLT = { -1.00, 0.00, 0.00, 1.00 }

NULL_REGION_1_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_2_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_3_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_4_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_5_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_6_USER = { -1.00, 0.00, 0.00, 1.00 }
NULL_REGION_BUTTON_CURVE_USER = { -1.00, 0.00, 0.00, 1.00 }

; Tuning Scalars
TUNING_SCALARS = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sensitivity Values
SENS_BEG_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_DFLT = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

SENS_BEG_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_INT_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }
SENS_EXP_USER = { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 }

; Sampling Frequency
SAMPLING_FREQUENCY = 14

ngomes
Moderator
Moderator
Posts: 1944
Joined: Mon Nov 27, 2006 7:22 am
Contact:

Post by ngomes » Mon Nov 12, 2007 9:10 am

Hi Rapp_Scallion,

Regarding your poll -- and leaving the matter of legacy application support for some other time -- what would be the interfaces that you'll rather use with 3D mice in Linux? We're always reviewing this specific topic.

Up to now the feedback is that developers appreciate the simplicity of the solution (based on well established X11 communication facilitates).
Nuno Gomes

Rapp_Scallion
Posts: 9
Joined: Tue Aug 28, 2007 4:11 am

Post by Rapp_Scallion » Mon Nov 12, 2007 9:34 am

ngomes wrote: Regarding your poll -- and leaving the matter of legacy application support for some other time -- what would be the interfaces that you'll rather use with 3D mice in Linux? We're always reviewing this specific topic.

Up to now the feedback is that developers appreciate the simplicity of the solution (based on well established X11 communication facilitates).
I think a more modern, and still portable approach for UNIX-systems, would be to use the XInput extension:

http://www.x.org/wiki/XInputSpec

This is much more natural to use for input devices and has several advantages:

1) No custom low-level X11 events
2) More natural event propagation and therefore
3) easier sharing of device between applications (atm devices can battle for the 3dconnexion device by sending a lot of X11 events for requesting the device)
4) well established extension which is used e.g. for pressure sensitive tablets
5) supported natively by Qt and GTK

That's my two cents... :)

Can anyone help me with my other problem? This is really annoying for us, and we currently have to revert to 1.2.11 for that...

ngomes
Moderator
Moderator
Posts: 1944
Joined: Mon Nov 27, 2006 7:22 am
Contact:

Post by ngomes » Mon Nov 12, 2007 9:47 am

Rapp_Scallion wrote:That's my two cents... :)
And very appreciated they are. Yes, we've looked at using XInput and we only require the sort of feedback you sent our way to commit to it.

crobl
Moderator
Moderator
Posts: 131
Joined: Mon Feb 26, 2007 8:34 am
Location: Freiham, Germany

Post by crobl » Tue Nov 13, 2007 9:02 am

Hi Rapp_Scallion,

I've tried to reproduce your issue with 1.2.17 on RHEL4 x86_64 with no luck.

Can you please provide me with some more information on your system:
What Linux distribution and kernel do you use?
Is this application "OpenFlipper" developed by you?
If so - I assume it is - does it utilize either MagellanInit() or MagellanSetWindow() and is the window "OpenFlipper" the correct destination (the window that listens the XEvents)?


Regards,

Christian Robl
3Dconnexion

Rapp_Scallion
Posts: 9
Joined: Tue Aug 28, 2007 4:11 am

Post by Rapp_Scallion » Tue Nov 13, 2007 11:08 am

crobl wrote: I've tried to reproduce your issue with 1.2.17 on RHEL4 x86_64 with no luck.
Too bad... :(
crobl wrote: Can you please provide me with some more information on your system:
Sure.
crobl wrote: What Linux distribution and kernel do you use?
Debian Testing (lenny), Linux version 2.6.22-2-amd64 (Debian 2.6.22-4).
crobl wrote: Is this application "OpenFlipper" developed by you?
Yes, exactly. It is not yet available for the public, but will be some time in the future. :)
crobl wrote: If so - I assume it is - does it utilize either MagellanInit() or MagellanSetWindow() and is the window "OpenFlipper" the correct destination (the window that listens the XEvents)?
No, not exactly. Since our application will be GPL or LGPL, we couldn't link or distribute your library along with the application -- correct me if I am wrong... So we chose to use the libspnav, which worked very well up until 1.2.11 and which relieved us from copying all the code from the SDK manual into our application...

We are using the SVN version (see http://spacenav.sourceforge.net/) of that library, and as you can see from its source code, it uses the same methods (setting the X11 events that are accepted, sending messages to the 3dxsrv panel, etc) as your SDK documentation describes. As I said, as long as I use the default configuration, everything is fine. :)

shihan
Posts: 1
Joined: Tue Mar 25, 2008 10:40 pm

Post by shihan » Tue Mar 25, 2008 11:12 pm

ngomes wrote:
Rapp_Scallion wrote:That's my two cents... :)
And very appreciated they are. Yes, we've looked at using XInput and we only require the sort of feedback you sent our way to commit to it.
For my 2 cents (and keep in mind im a developer only for fun in my spare time), i agree with rapp_scallion on that one, XInput all the way. But i also like what spacenavd has done with his (i.e. communication via X events and via a socket), if the SDK did xinput and a socket, I personally couldn't see why that wouldn't be cross-platform as well as ultimately quite flexible.

astraw
Posts: 1
Joined: Sat Mar 29, 2008 11:30 pm

b

Post by astraw » Sat Mar 29, 2008 11:41 pm

I have no problems with XInput support on my Space Navigator. I used, as hints, the instructions at http://www.fedorawiki.de/index.php/SpaceNavigator and everything works on my Ubuntu Gutsy amd64 machine. In fact, I just wrote a little xinput-based demo program in pyglet.

Post Reply