As a 2D Mouse too, on Windows 10?

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

Kruxe
Posts: 4
Joined: Tue May 05, 2020 6:32 pm

Re: As a 2D Mouse too, on Windows 10?

Post by Kruxe »

Hi Jwick,

im having an issue with this, after saving the file into the specified location and restarting the 3DxServices it tells me that it is an invalid file then proceeds to change the file into a .bak file. any ideas whats going on? i have a space navigator pro and im running the latest version of the 3Dx software.

thanks in advanced!
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: As a 2D Mouse too, on Windows 10?

Post by jwick »

It's probably not an up-to-date file.
There have been a lot of versions of files, with a lot of different instructions in various threads on the forum for this.
The file format has changed over the years.

The log file will probably tell you what is wrong with the file. The driver is getting better about detecting problems in cfg files.
You can PM your file to me if you like, and I'll fix it for the latest version.

There is no official support for this. That is why it is so difficult. It should just be a CheckBox somewhere.
Kruxe
Posts: 4
Joined: Tue May 05, 2020 6:32 pm

Re: As a 2D Mouse too, on Windows 10?

Post by Kruxe »

Thank you for responding so quickly, I apologize but I wont be able to PM you since i just registered its not letting me. In the mean time what file do you need exactly? The XML file? If not, maybe I can allocate it quick.
Kruxe
Posts: 4
Joined: Tue May 05, 2020 6:32 pm

Re: As a 2D Mouse too, on Windows 10?

Post by Kruxe »

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!--
(c) Copyright 3Dconnexion. All rights reserved. 
$Revision: 14085 $
-->
<AppCfg Default="true" xmlns="" CfgFormatVersion="1.2" ThisFileVersion="1.8">
  <!-- 
     Desktop is a profile for switching to/from desktop-wide operations.  You get to it via the
     Driver_Desktop_ToggleGrab button action.  This ButtonAction should be assigned to the same 
     button in each profile that you want to switch from, so you can use that button as a toggle.
	 It is easiest to assign it in global.xml.
     When you toggle into this profile, you have a hard-grab and all events go here until you
     toggle out.  When you toggle out, you go back to the regular arbitration scheme.

     This is useful to toggle into 2D mouse mode, navigate to a different application window
     with MouseX/Y and switch to it with LeftMouse, then toggle back to 3D mouse mode.
     Certainly other desktop-wide operations could be imagined.

-->
  <AppInfo>
    <Signature>
      <Name>STR_DESKTOP</Name>
      <ExecutableName></ExecutableName>
      <Transport>KMJ</Transport>
    </Signature>
  </AppInfo>
  <CfgProperties>
    <Grab>Hard</Grab>
  </CfgProperties>
  <AuthorInfo>
    <DriverVersion>1.0.3.0</DriverVersion>
    <Created>
      <Tool>3DxService.exe</Tool>
      <Version>10.6.7</Version>
      <Date>2011:14:1:28:10:58:11:745</Date>
      <User>3DxCfgAdmin</User>
    </Created>
  </AuthorInfo>
  <Settings>
    <ResponseCurve>1.00</ResponseCurve>
  </Settings>
  <MacroTable>
    <MacroEntry>
      <ID>Settings</ID>
      <Sequence>
        <KeyPress>E3</KeyPress>
        <KeyPress>C</KeyPress>
        <KeyRelease>C</KeyRelease>
        <KeyRelease>E3</KeyRelease>
      </Sequence>
    </MacroEntry>
    <MacroEntry>
      <ID>PresentationMode</ID>
      <Sequence>
        <KeyPress>E3</KeyPress>
        <KeyPress>13</KeyPress>
        <KeyRelease>13</KeyRelease>
        <KeyRelease>E3</KeyRelease>
      </Sequence>
    </MacroEntry>
    <MacroEntry>
      <ID>Sysinfo</ID>
      <Sequence>
        <KeyPress>E3</KeyPress>
        <KeyPress>0</KeyPress>
        <KeyRelease>0</KeyRelease>
        <KeyRelease>E3</KeyRelease>
      </Sequence>
    </MacroEntry>
    <MacroEntry>
      <ID>Start Menu</ID>
      <Sequence>
        <KeyPress>E0</KeyPress>
        <KeyPress>29</KeyPress>
        <KeyRelease>29</KeyRelease>
        <KeyRelease>E0</KeyRelease>
      </Sequence>
    </MacroEntry>
  </MacroTable>
  <ButtonActions xmlns:driver_images="./images/3DxService/" xmlns:device_images="../images/">
    <ButtonAction Type="App">
	  <ID>PresentationMode</ID>
	  <Name>Project</Name>
      <Arg>None</Arg>
			<Image>
				<Source>[driver_images:PresentMode.png]</Source>
			</Image>
	</ButtonAction>
    <ButtonAction Type="App">
	  <ID>Taskmgr</ID>
	  <Name>Task Manager</Name>
      <Arg>None</Arg>
			<Image>
				<Source>[driver_images:Taskmgr.png]</Source>
			</Image>
	</ButtonAction>
	
	<ButtonAction Type="Driver">
		<ID>Driver_Start_3DxViewer</ID>
		<Name>STR_DRIVER_START3DXVIEWER</Name>
		<Image>
			<Source>[driver_images:Viewer.png]</Source>
		</Image>
	</ButtonAction>

    <ButtonAction Type="Exe">
      <ID>EXE_Start_Sysinfo32</ID>
      <Name>System Information</Name>
      <Executable>msinfo32.exe</Executable>
      <Arg>None</Arg>
	  			<Image>
				<Source>[driver_images:SysInfo.png]</Source>
			</Image>
    </ButtonAction>
	
    <ButtonAction Type="App">
	  <ID>Settings</ID>
	  <Name>Settings</Name>
      <Arg>None</Arg>
			<Image>
				<Source>[driver_images:Settings.png]</Source>
			</Image>
	</ButtonAction>
    <ButtonAction Type="Exe">
      <ID>EXE_Start_Notepad</ID>
      <Name>Notepad</Name>
      <Executable>NOTEPAD.EXE</Executable>
      <Arg>None</Arg>
	  			<Image>
				<Source>[driver_images:notepad.png]</Source>
			</Image>
    </ButtonAction>
    <ButtonAction Type="Exe">
      <ID>EXE_Start_Paint</ID>
      <Name>Paint</Name>
      <Executable>MSPAINT.EXE</Executable>
      <Arg>None</Arg>
			<Image>
				<Source>[driver_images:mspaint.png]</Source>
			</Image>
    </ButtonAction>
    <ButtonAction Type="Exe">
      <ID>EXE_Start_calc</ID>
      <Name>Calculator</Name>
      <Executable>calc.EXE</Executable>
      <Arg>None</Arg>
			<Image>
				<Source>[driver_images:calc.png]</Source>
			</Image>
    </ButtonAction>	
	<ButtonAction Type="Driver">
		<ID>Driver_Desktop_ToggleGrab</ID>
		<Name>Toggle 2D 3D mode</Name>
	</ButtonAction>
  </ButtonActions>
  <Devices>
    <Device>
      <Name>Standard 3D Mouse</Name>
      <VendorID>0</VendorID>
      <ProductID>0</ProductID>
      <AxisFilter>None</AxisFilter>
      <CurrentButtonBank>Default</CurrentButtonBank>
      <CurrentAxisBank>Default</CurrentAxisBank>
      <AxisBank Default="true">
        <Name>STR_DEFAULT_BANK</Name>
        <ID>Default</ID>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rx</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_Y</ActionID>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Ry</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_X</ActionID>
            <Reversed>true</Reversed>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rz</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_Wheel</ActionID>
          </Output>
        </Axis>
      </AxisBank>
		<ButtonBank Default="true">
			<Name>STR_DEFAULT_BUTTONBANK</Name>
			<ID>Default</ID>
			<Button>
			  <Input>
				<ActionID>V3DK_MENU</ActionID>
			  </Input>
			  <Output>
				<ActionID>HIDMouse_Left</ActionID>
			  </Output>
			</Button>
			<Button>
			  <Input>
				<ActionID>V3DK_FIT</ActionID>
			  </Input>
			  <Output>
				<ActionID>HIDMouse_Right</ActionID>
			  </Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_1</ActionID>
				</Input>
				<Output>
					<ActionID>Driver_Start_FileManager</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_2</ActionID>
				</Input>
				<Output>
					<ActionID>Driver_Start_Browser</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_3</ActionID>
				</Input>
				<Output>
					<ActionID>Driver_Start_3DxViewer</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_4</ActionID>
				</Input>
				<Output>
					<ActionID>Macro_TaskManager</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_5</ActionID>
				</Input>	
				<Output>
					<ActionID>EXE_Start_Sysinfo32</ActionID>
				</Output>
			</Button>
			<Button>	
				<Input>
					<ActionID>V3DK_6</ActionID>
				</Input>	
				<Output>
					<ActionID>Settings</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_7</ActionID>
				</Input>
				<Output>
					<ActionID>EXE_Start_Notepad</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_8</ActionID>
				</Input>
				<Output>
					<ActionID>EXE_Start_Paint</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_9</ActionID>
				</Input>
				<Output>
					<ActionID>EXE_Start_calc</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_10</ActionID>
				</Input>
				<Output>
					<ActionID>PresentationMode</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_11</ActionID>
				</Input>
				<Output>
					<ActionID>Macro_TabApplication</ActionID>
				</Output>
			</Button>
			<Button>
				<Input>
					<ActionID>V3DK_12</ActionID>
				</Input>
				<Output>
					<ActionID>Macro_LockScreen</ActionID>
				</Output>
			</Button>
		</ButtonBank>
    </Device>
    <Device>
	  <Name>Standard 2D Mouse</Name>
	  <VendorID>0</VendorID>
	  <ProductID>0</ProductID>
      <ButtonBank Default="true">
        <Name>STR_DEFAULT_BUTTONBANK</Name>
        <ID>Default</ID>
        <Button>
          <Input>
            <ActionID>V2DK_RADIALMENU</ActionID>
          </Input>
          <Output>
            <ActionID>Base_RadialMenu_MenuRM1</ActionID>
          </Output>
        </Button>
      </ButtonBank>
    </Device>
    <Device>
      <Name>SpaceNavigator</Name>
      <VendorID>46d</VendorID>
      <ProductID>c626</ProductID>
      <InheritsFrom>Standard 3D Mouse</InheritsFrom>
      <CurrentAxisBank>Default</CurrentAxisBank>
      <AxisBank Default="true">
        <Name>STR_DEFAULT_BANK</Name>
        <ID>Default</ID>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rx</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_Y</ActionID>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Ry</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_X</ActionID>
            <Reversed>true</Reversed>
          </Output>
        </Axis>
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rz</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_Wheel</ActionID>
          </Output>
        </Axis>
      </AxisBank>
      <ButtonBank Default="true">
        <Name>STR_DEFAULT_BUTTONBANK</Name>
        <ID>Default</ID>
        <Button>
          <Input>
            <ActionID>HIDButton_1</ActionID>
          </Input>
          <Output>
            <ActionID>HIDMouse_Left</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>HIDButton_2</ActionID>
          </Input>
          <Output>
            <ActionID>HIDMouse_Right</ActionID>
          </Output>
        </Button>
      </ButtonBank>
    </Device>
  </Devices>
  <Menus>
    <Executable>3DxPieMenus.exe</Executable>
    <Menu Type="Radial">
      <Name>RM CadMouse</Name>
      <ID>MenuRM1</ID>
      <GesturesEnabled>true</GesturesEnabled>
      <Button>
        <Input>
          <ActionID>MenuButton_1</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_Start_Browser</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_2</ActionID>
        </Input>
        <Output>
          <ActionID>Macro_Paste</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_3</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_ShowDriverGUI</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_4</ActionID>
        </Input>
        <Output>
          <ActionID>Macro_Copy</ActionID>
        </Output>
      </Button>
    </Menu>
  </Menus>
  	<UI>
		<ButtonFlyouts>	
			<Category Sort="false">
			<ID>UI_3Dx</ID><Name>STR_UI_3DX</Name>
				<ButtonAction><ID>Driver_Start_FileManager</ID></ButtonAction>
				<ButtonAction><ID>Driver_Start_Browser</ID></ButtonAction>
			</Category>
			<Category Sort="false">
				<ID>UI_Macros</ID><Name>STR_UI_MACROS</Name>
				<ButtonAction><ID>Macro_Search</ID></ButtonAction>
				<ButtonAction><ID>Macro_LockScreen</ID></ButtonAction>				
				<ButtonAction><ID>Macro_TaskManager</ID></ButtonAction>
				<ButtonAction><ID>Macro_TabApplication</ID></ButtonAction>
				<ButtonAction><ID>Macro_AlignWindowLeft</ID></ButtonAction>
				<ButtonAction><ID>Macro_AlignWindowRight</ID></ButtonAction>				
				<ButtonAction><ID>Macro_MaximizeWindow</ID></ButtonAction>
				<ButtonAction><ID>Macro_MinimizeAll</ID></ButtonAction>	
				<ButtonAction><ID>Macro_QuitProgram</ID></ButtonAction> 
				<ButtonAction><ID>Macro_FileManager</ID></ButtonAction>       			
				<ButtonAction><ID>Macro_InternetBrowser</ID></ButtonAction>   
				<ButtonAction><ID>Settings</ID></ButtonAction>  
			</Category>
 
		</ButtonFlyouts>
	</UI>
</AppCfg>
mordewal
Posts: 12
Joined: Sat May 09, 2020 2:03 am

Re: As a 2D Mouse too, on Windows 10?

Post by mordewal »

hello jwick

thanks for the 2D Mouse funktion. I wonder why 3Dconnexion does nit implement this in the driver over the years.

Either way i have one problem with that. I can not switch to 3d mode. It seem's not to work.
Nothing happen. I have to lock the rotation, when i want doe move 3d objekts.
Also i want to switch the app in focus. This works not at all.
Sometimes the driver switch to the app in focus sometimes not.

thanks for help
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: As a 2D Mouse too, on Windows 10?

Post by jwick »

I've put a Desktop.xml that is for 3DxWare version 10.6.7 (CfgFormatVersion="1.3") here: Desktop.xml
Put this file into %programdata%\3Dconnexion\3DxWare\Cfg.
(You need a very recent driver)

This starts in Windows Desktop mode. That is, no matter which application is in focus, the driver/device will always be in the same mode, same buttons, same 2D cursor movement. In this mode, you can reprogram the [other] buttons to do whatever you want using the GUI. Changes to the Axes requires manual editing.

The other file you need is a global.xml: Global.xml

This globally reserves a button for the function that toggles between Desktop mode and the mode that follows the focus of the mouse to different applications. SME Button #3 in this case.
If you don't have a SME, or want to change the button reserved for toggling back and forth, you will have to edit global.xml.
I can help you with that. The GUI can not edit global.xml in a general way.
Put this file into %appdata%\3Dconnexion\3DxWare\Cfg.

There are some caveats here. It relies on the driver being in the "Default" ButtonBank. Many applications take it out of that ButtonBank. E.g., they have different ButtonBanks for different modes of the application. Some more modifications would have to be made to work with those applications.

Please provide feedback if you find this useful. This may help get it promoted to having support by the GUI someday.
Kruxe
Posts: 4
Joined: Tue May 05, 2020 6:32 pm

Re: As a 2D Mouse too, on Windows 10?

Post by Kruxe »

My friend, Thank you so much for this, this works amazingly! :mrgreen:
mordewal
Posts: 12
Joined: Sat May 09, 2020 2:03 am

Re: As a 2D Mouse too, on Windows 10?

Post by mordewal »

after many try and errors I managed to get it to work.
The problem was the global.xml because I have a SpaceMouse Pro Wireless.
The driver seems to delete the last rows of the global.xml every time.
I had to change the device ID in the section <Devices>

Code: Select all

<Devices>
		<Device>
			<ID>ID_ProductID_C631</ID>
			<Settings>
				<OverallScale>1.0000</OverallScale>
			</Settings>
			<ButtonBank Default="true">
				<ID>Default</ID>
				<Name>STR_DEFAULT_BUTTONBANK</Name>
				<Enabled>true</Enabled>
				<Button>
					<Input>
						<ActionID>HIDButton_15</ActionID>
					</Input>
					<Output>
						<ActionID>Driver_Desktop_ToggleGrab</ActionID>
					</Output>
				</Button>
			</ButtonBank>
		</Device>
	</Devices>
and delete <Name></Name>
After that i could use the Spacemouse as a 2D or 3D Mouse.
Now I have to figure out how I could use some self-created macros and rm menus in all apps. For the moment I copy the macroentry with ultraedit in all created profiles to use it for my apps.
davykyndt
Posts: 7
Joined: Wed Jul 01, 2020 9:58 am

Re: As a 2D Mouse too, on Windows 10?

Post by davykyndt »

Hi,

I'm trying to get the global and desktop files running.
I've managed to get the 2D mouse up and running, extended it with zooming, scrolling, and arrow functions.

Unfortunately I unable to get the "Grab" function working.
I'd like to have a button HIDButton_15, to be able to swap between the Desktop files and the program sensitive files.

Can you please help me out, where I'm doing thins wrong?

Thank you.

Here are my codes:
Global.xml

Code: Select all

<?xml version="1.0" encoding="utf-8"?><Global Default="false" xmlns="" CfgFormatVersion="1.3" ThisFileVersion="2.0">
	<CfgProperties>
	
		<ID>ID_Global_Cfg</ID>
		<Name>STR_GLOBALCFG</Name>
		<InheritsFromID>ID_Global_Cfg</InheritsFromID>
	</CfgProperties>
	<Settings>
		<InstallerAutoCheckForUpdates>true</InstallerAutoCheckForUpdates>
	<LastAutoCheckForUpdates>2-7-2020</LastAutoCheckForUpdates></Settings>
	<ButtonActions>
		<ButtonAction Type="Driver_Other">
			<ID>Driver_Desktop_ToggleGrab</ID>
			<Name>STR_DRIVER_DESKTOP_TOGGLEGRAB</Name>
			<Image>
				<Source>[driver_images:Driver_Desktop_ToggleGrab.png]</Source>
			</Image>
		</ButtonAction>
	</ButtonActions>
	<AuthorInfo>
		<DriverVersion>17.6.8.17515</DriverVersion>
		<LastChange>
			<Tool>3DxService.exe</Tool>
			<Version>17.6.8.17515</Version>
			<Date>2020:7:4:2:5:26:50:41</Date>
			<User>dkyndt</User>
		</LastChange>
		<Created>
			<Tool>3DxService.exe</Tool>
			<Version>17.6.3.16588</Version>
			<Date>2019:10:2:8:10:59:19:315</Date>
			<User>jwick</User>
		</Created>
	</AuthorInfo>
	<Devices>
		<Device>
			<ID>ID_ProductID_C633</ID>
			<Name>SpaceMouse Enterprise</Name>
			<Settings>
				<OverallScale>1.0000</OverallScale>
			</Settings>
			<ButtonBank Default="true">
				<ID>Default</ID>
				<Name>STR_DEFAULT_BUTTONBANK</Name>
				<Enabled>true</Enabled>
				<Button>
					<Input>
						<ActionID>HIDButton_15</ActionID>
					</Input>
					<Output>
						<ActionID>Driver_Desktop_ToggleGrab</ActionID>
					</Output>
				</Button>
			</ButtonBank>
		</Device>
	</Devices>
</Global>

Desktop.xml

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<!--
(c) Copyright 3Dconnexion. All rights reserved. 
$Revision: 14085 $
-->
<AppCfg Default="true" xmlns="" CfgFormatVersion="1.3" ThisFileVersion="1.10">
  <CfgProperties>
    <ID>ID_STR_DESKTOP_Cfg</ID>
    <Name>STR_DESKTOP</Name>
    <InheritsFromID>ID_Base_Cfg</InheritsFromID>
	<Grab>Hard</Grab>
  </CfgProperties>
  <AuthorInfo>
    <DriverVersion>17.6.1</DriverVersion>
    <Created>
      <Tool>3DxService.exe</Tool>
      <Version>17.5.5</Version>
      <Date>2017:11:2:28:10:58:11:745</Date>
      <User>3DxCfgAdmin</User>
    </Created>
    <LastChange>
      <Tool>XMLCfgEditor.exe</Tool>
      <Version>17.6.1</Version>
      <Date>6/27/2019 10:04:47 AM UTC</Date>
      <User>jwick</User>
    </LastChange>
  </AuthorInfo>
  <AppInfo>
    <Signature>
      <Name>STR_DESKTOP</Name>
      <ExecutableName>never matches</ExecutableName>
      <Transport>KMJ</Transport>
    </Signature>
  </AppInfo>
  <Settings>
    <ResponseCurve>1.00</ResponseCurve>
  </Settings>
  <MacroTable>
    <MacroEntry>
      <ID>Settings</ID>
      <Sequence>
        <KeyPress>E3</KeyPress>
        <KeyPress>C</KeyPress>
        <KeyRelease>C</KeyRelease>
        <KeyRelease>E3</KeyRelease>
      </Sequence>
    </MacroEntry>
    <MacroEntry>
      <ID>PresentationMode</ID>
      <Sequence>
        <KeyPress>E3</KeyPress>
        <KeyPress>13</KeyPress>
        <KeyRelease>13</KeyRelease>
        <KeyRelease>E3</KeyRelease>
      </Sequence>
    </MacroEntry>
    <MacroEntry>
      <ID>Sysinfo</ID>
      <Sequence>
        <KeyPress>E3</KeyPress>
        <KeyPress>0</KeyPress>
        <KeyRelease>0</KeyRelease>
        <KeyRelease>E3</KeyRelease>
      </Sequence>
    </MacroEntry>
    <MacroEntry>
      <ID>Start Menu</ID>
      <Sequence>
        <KeyPress>E0</KeyPress>
        <KeyPress>29</KeyPress>
        <KeyRelease>29</KeyRelease>
        <KeyRelease>E0</KeyRelease>
      </Sequence>
    </MacroEntry>
  </MacroTable>
  <ButtonActions xmlns:driver_images="./images/3DxService/" xmlns:device_images="../images/">
    <ButtonAction Type="App">
      <ID>PresentationMode</ID>
      <Name>Project</Name>
      <Arg>None</Arg>
      <Image>
        <Source>[driver_images:PresentMode.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="App">
      <ID>Taskmgr</ID>
      <Name>Task Manager</Name>
      <Arg>None</Arg>
      <Image>
        <Source>[driver_images:Taskmgr.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="Driver">
      <ID>Driver_Start_3DxViewer</ID>
      <Name>STR_DRIVER_START3DXVIEWER</Name>
      <Image>
        <Source>[driver_images:Viewer.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="Exe">
      <ID>EXE_Start_Sysinfo32</ID>
      <Name>System Information</Name>
      <Executable>msinfo32.exe</Executable>
      <Arg>None</Arg>
      <Image>
        <Source>[driver_images:SysInfo.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="App">
      <ID>Settings</ID>
      <Name>Settings</Name>
      <Arg>None</Arg>
      <Image>
        <Source>[driver_images:Settings.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="Exe">
      <ID>EXE_Start_Notepad</ID>
      <Name>Notepad</Name>
      <Executable>NOTEPAD.EXE</Executable>
      <Arg>None</Arg>
      <Image>
        <Source>[driver_images:notepad.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="Exe">
      <ID>EXE_Start_Paint</ID>
      <Name>Paint</Name>
      <Executable>MSPAINT.EXE</Executable>
      <Arg>None</Arg>
      <Image>
        <Source>[driver_images:mspaint.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="Exe">
      <ID>EXE_Start_calc</ID>
      <Name>Calculator</Name>
      <Executable>calc.EXE</Executable>
      <Arg>None</Arg>
      <Image>
        <Source>[driver_images:calc.png]</Source>
      </Image>
    </ButtonAction>
    <ButtonAction Type="Driver">
      <ID>Driver_Desktop_ToggleGrab</ID>
      <Name>Toggle 2D 3D mode</Name>
    </ButtonAction>
  </ButtonActions>
  <Devices>
    <Device>
		<ID>ID_ProductID_C633</ID>
		<Name>SpaceMouse Enterprise</Name>
      <AxisFilter>None</AxisFilter>
      <CurrentButtonBank>Default</CurrentButtonBank>
      <CurrentAxisBank>Default</CurrentAxisBank>
      <AxisBank Default="true">
        <Name>STR_DEFAULT_BANK</Name>
        <ID>Default</ID>
<!--    Y axis mouse. -->
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rx</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_Y</ActionID>
          </Output>
        </Axis>
<!--    X axis mouse. -->
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Ry</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
            <ActionID>HIDMouse_X</ActionID>
            <Reversed>true</Reversed>
          </Output>
        </Axis>
<!--    scroll mouse. -->
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Rz</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
          </Input>
          <Output>
		  <Scale>1.00</Scale>
            <ActionID>HIDMouse_Wheel</ActionID>
			<Reversed>true</Reversed>
          </Output>
        </Axis>
<!--    X axis  left does move arrows left. -->
		<Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_X</ActionID>
            <Min>-512</Min>
            <Max>0</Max>
            <Deadband>200</Deadband>
          </Input>
          <Output>
            <ActionID>KB_Keystroke</ActionID>
            <RepeatStyle>PressAndHold</RepeatStyle>
            <KeyStroke>
              <Key>50</Key>
            </KeyStroke>
          </Output>
        </Axis>
<!--    X axis  right does move arrows right. -->
		<Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_X</ActionID>
            <Min>0</Min>
            <Max>511</Max>
            <Deadband>200</Deadband>
          </Input>
          <Output>
            <ActionID>KB_Keystroke</ActionID>
            <RepeatStyle>PressAndHold</RepeatStyle>
            <KeyStroke>
              <Key>4F</Key>
            </KeyStroke>
          </Output>
        </Axis>
<!--    Y axis  top does move arrows up. -->
		<Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Y</ActionID>
            <Min>0</Min>
            <Max>511</Max>
            <Deadband>200</Deadband>
          </Input>
          <Output>
            <ActionID>KB_Keystroke</ActionID>
            <RepeatStyle>PressAndHold</RepeatStyle>
            <KeyStroke>
              <Key>51</Key>
            </KeyStroke>
          </Output>
        </Axis>
<!--    Y axis  bottom does move arrows down. -->
		<Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Y</ActionID>
            <Min>-512</Min>
            <Max>0</Max>
            <Deadband>200</Deadband>
          </Input>
          <Output>
            <ActionID>KB_Keystroke</ActionID>
            <RepeatStyle>PressAndHold</RepeatStyle>
            <KeyStroke>
              <Key>52</Key>
            </KeyStroke>
          </Output>
        </Axis>
<!--    Z axis up/down does zoom in and out. -->
        <Axis>
          <Enabled>true</Enabled>
          <Input>
            <ActionID>HIDMultiAxis_Z</ActionID>
            <Min>-512</Min>
            <Max>511</Max>
			 <Deadband>100</Deadband>
          </Input>
          <Output>
            <ActionID>HIDMouse_Wheel</ActionID>
            <Modifiers>
              <Modifier>Control</Modifier>
            </Modifiers>
            <Scale>1.00</Scale>
            <Reversed>true</Reversed>
          </Output>
        </Axis>
		<AxisFilter>Dominant</AxisFilter>
      </AxisBank>
      <ButtonBank Default="true">
        <Name>STR_DEFAULT_BUTTONBANK</Name>
        <ID>Default</ID>
        <Button>
          <Input>
            <ActionID>V3DK_MENU</ActionID>
          </Input>
          <Output>
            <ActionID>HIDMouse_Left</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_FIT</ActionID>
          </Input>
          <Output>
            <ActionID>HIDMouse_Right</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_MENU_1</ActionID>
          </Input>
          <Output>
            <ActionID>HIDMouse_Left</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_MENU_2</ActionID>
          </Input>
          <Output>
            <ActionID>HIDMouse_Right</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_1</ActionID>
          </Input>
          <Output>
            <ActionID>Driver_Start_FileManager</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_2</ActionID>
          </Input>
          <Output>
            <ActionID>Driver_Start_Browser</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_3</ActionID>
          </Input>
          <Output>
            <ActionID>Driver_Start_3DxViewer</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_4</ActionID>
          </Input>
          <Output>
            <ActionID>Macro_TaskManager</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_5</ActionID>
          </Input>
          <Output>
            <ActionID>EXE_Start_Sysinfo32</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_6</ActionID>
          </Input>
          <Output>
            <ActionID>Settings</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_7</ActionID>
          </Input>
          <Output>
            <ActionID>EXE_Start_Notepad</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_8</ActionID>
          </Input>
          <Output>
            <ActionID>EXE_Start_Paint</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_9</ActionID>
          </Input>
          <Output>
            <ActionID>EXE_Start_calc</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_10</ActionID>
          </Input>
          <Output>
            <ActionID>PresentationMode</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_11</ActionID>
          </Input>
          <Output>
            <ActionID>Macro_TabApplication</ActionID>
          </Output>
        </Button>
        <Button>
          <Input>
            <ActionID>V3DK_12</ActionID>
          </Input>
          <Output>
            <ActionID>Macro_LockScreen</ActionID>
          </Output>
        </Button>
				<Button>
					<Input>
						<ActionID>HidButton_15</ActionID>
					</Input>
					<Output>
						<ActionID>Driver_Desktop_ToggleGrab</ActionID>
					</Output>
				</Button>
      </ButtonBank>
    </Device>
    <Device>
      <Name>Standard 2D Mouse</Name>
      <ID>ID_Standard_2D_Mouse</ID>
      <ButtonBank Default="true">
        <Name>STR_DEFAULT_BUTTONBANK</Name>
        <ID>Default</ID>
        <Button>
          <Input>
            <ActionID>V2DK_RADIALMENU</ActionID>
          </Input>
          <Output>
            <ActionID>Base_RadialMenu_MenuRM1</ActionID>
          </Output>
        </Button>
				<Button>
					<Input>
						<ActionID>HidButton_15</ActionID>
					</Input>
					<Output>
						<ActionID>Driver_Desktop_ToggleGrab</ActionID>
					</Output>
				</Button>
      </ButtonBank>
    </Device>
  </Devices>
  <Menus>
    <Executable>3DxPieMenus.exe</Executable>
    <Menu Type="Radial">
      <Name>RM CadMouse</Name>
      <ID>MenuRM1</ID>
      <GesturesEnabled>true</GesturesEnabled>
      <Button>
        <Input>
          <ActionID>MenuButton_1</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_Start_Browser</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_2</ActionID>
        </Input>
        <Output>
          <ActionID>Macro_Paste</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_3</ActionID>
        </Input>
        <Output>
          <ActionID>Driver_ShowDriverGUI</ActionID>
        </Output>
      </Button>
      <Button>
        <Input>
          <ActionID>MenuButton_4</ActionID>
        </Input>
        <Output>
          <ActionID>Macro_Copy</ActionID>
        </Output>
      </Button>
    </Menu>
  </Menus>
  <UI>
    <ButtonFlyouts>
      <Category Sort="false">
        <ID>UI_3Dx</ID>
        <Name>STR_UI_3DX</Name>
        <ButtonAction>
          <ID>Driver_Start_FileManager</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Driver_Start_Browser</ID>
        </ButtonAction>
		<ButtonAction>
          <ID>Driver_Desktop_ToggleGrab</ID>
        </ButtonAction>
      </Category>
      <Category Sort="false">
        <ID>UI_Macros</ID>
        <Name>STR_UI_MACROS</Name>
        <ButtonAction>
          <ID>Macro_Search</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_LockScreen</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_TaskManager</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_TabApplication</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_AlignWindowLeft</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_AlignWindowRight</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_MaximizeWindow</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_MinimizeAll</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_QuitProgram</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_FileManager</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Macro_InternetBrowser</ID>
        </ButtonAction>
        <ButtonAction>
          <ID>Settings</ID>
        </ButtonAction>
      </Category>
    </ButtonFlyouts>
  </UI>
</AppCfg>
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: As a 2D Mouse too, on Windows 10?

Post by jwick »

I think

Code: Select all

<ID>ID_STR_DESKTOP_Cfg</ID>
should be

Code: Select all

<ID>ID_Desktop_Cfg</ID>
Did I give you that file? If so, I'll have to fix it.

If you turn the log file on (3Dx systray icon), it should log what it is doing and list problems it finds in cfg files.
The log file is %localappdata%\3dconnexion\3dxware\cfg\3dxservice.log.
ldtzbme
Posts: 2
Joined: Sat Jan 09, 2021 12:12 pm

Re: As a 2D Mouse too, on Windows 10?

Post by ldtzbme »

Hello,

I am trying go use my 3d spacemouse as a simple 2d version that I can use as a pointer for my cursor with my left hand, in addition to my razor tartaus vII, which is all further away from my laptop as I sit on my couch. or possibly for pinch and zoom/drag effect for things like having multiple pdf files open and being able to zoom in or reading small print on websites even(windows 10 touchscreen laptop). Either one really.... can anyone help? I have tried the first steps mentioned in this post and have tried removing the driver altogether and I still do not have any of these options I would like to use.

can this work?

thanks
Lucas T.
dahlmeyer
Posts: 4
Joined: Thu Feb 25, 2021 5:36 am

Re: As a 2D Mouse too, on Windows 10?

Post by dahlmeyer »

Is there any current version for those files for a SpaceMouse compact with current Win10x64 drivers? or documentation how to derive them?

I see no pattern in what has to be changed (numerous device IDs, driver versions, and XML-file versions out there...). Is there a simple algorithms like "Copy original files from X to Y, find ABCD, and Paste this code in there....?

One the one hand, it is great that @jwick is supporting all these questions here. On the other hand, it should not need volunteers' support to edit configuration files for such a device to work...
Abyss1
Posts: 1
Joined: Fri Sep 24, 2021 8:06 am

Re: As a 2D Mouse too, on Windows 10?

Post by Abyss1 »

Hello, new to the forum. Found this place after a few troubleshooting searches and thought i'd sign up

I just got the Connexion wireless space mouse this week and its great for AutoCAD.

I also wanted use it for microsoft 3D paint, it currently only lets me zoom? I want to use the pan L/R and U/D, but is not being recognized by space mouse, will the XML files mentioned in this work or will I need a different code?

Thanks in advace
EmtMtnDewCan
Posts: 1
Joined: Mon May 22, 2023 2:36 pm

Re: As a 2D Mouse too, on Windows 10?

Post by EmtMtnDewCan »

jwick wrote: Wed Nov 27, 2019 2:01 am Yak_Forger38,

There is a ButtonAction to swap back and forth between the cfg being used by the current application and the Desktop cfg.
It is not normally exposed but it can be used. You can copy it from Base.xml.
Its name is "Driver_Desktop_ToggleGrab". All it does is set and unset the Hard Grab element in the Desktop cfg.

I usually assign it to a button on my device in my Global cfg. Then it is available all the time. Then I can press the button to toggle between 2D mouse mode and 3D mouse mode.

Sorry, the GUI doesn't support any of this. You have to edit the XML files.

E.g.,

Code: Select all

%appdata%/.../Global.xml:
<Global>
...
<ButtonActions>
		<ButtonAction Type="Driver_Other">
			<ID>Driver_Desktop_ToggleGrab</ID>
			<Name>STR_DRIVER_DESKTOP_TOGGLEGRAB</Name>
			<Image>
				<Source>[driver_images:Driver_Desktop_ToggleGrab.png]</Source>
			</Image>
		</ButtonAction>
...
<Devices>
   <Device>
      <Name>SpaceMouse Enterprise</Name>
...
		<ButtonBank>
			<Name>STR_DEFAULT_BUTTONBANK</Name>
			<ID>Default</ID>
			<Button>
				<Input>
					<ActionID>HIDButton_13</ActionID>
				</Input>
				<Output>
					<ActionID>Driver_Desktop_ToggleGrab</ActionID>
				</Output>
			</Button>
		</ButtonBank>
	</Device>
This is somewhat dependent on the application in use, since the ButtonBank "Default" is not used in some applications.

If you need more help on this I can give you an entire file over email.
Hello I just got a SpaceMouse compact and was trying to set it up for exclusively 2D mode since I do not have an 3D apps to use it with yet. I found this thread and have been trying to follow the instructions in this thread but have been having trouble. Do you still have a file or instructions you could send?
Post Reply