How to create a profile like with rbc9

Questions and answers about 3Dconnexion devices on Windows.

Moderator: Moderators

Post Reply
slash123
Posts: 5
Joined: Mon May 05, 2014 2:43 am

How to create a profile like with rbc9

Post by slash123 »

Hello,

i´ve bought a new SpaceNavigator and I am tring to control my XBMC with it.

I´ve tested RBC9 and everything worked fine until the next restart, it was really unstable.

Now I´ve read, that it must be possible to have the same configuration with custom profiles with 3DxWare but haven´t found a tutorial about it or the possibility inside the software.

Whare can I create a custom profile to use the SpaceNavigator like a joystick with mapping to the Arrow Keys?

Thanks a lot,

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

Re: How to create a profile like with rbc9

Post by jwick »

You can create profiles that emulate the keyboard or joystick but there is no GUI for it (ATM).
You have to edit the Cfg files yourself.

There are a couple of template you can start with in %PROGRAMFILES%\3DxWare\3DxWinCore(64)\Cfg.
JoystickTemplate.xml - joystick events
KeyboardWASDTemplate - WASD keys
KeyboardTemplate (arrow keys)

To turn a template (type AppCfgTemplate) into a Cfg/profile, change the type from AppCfgTemplate to AppCfg and fill in the ExecutableName.
slash123
Posts: 5
Joined: Mon May 05, 2014 2:43 am

Re: How to create a profile like with rbc9

Post by slash123 »

Hello,

jwick, thanks for Your helpful answer.

I have created a simple and, I hope clean and readable .xml but it doesn´t work.
I would like to create a key-down event if I navigate to the left and right side but it happens nothing.

Here is my XBMC.xml with only 2 test events:

Code: Select all

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
(c) Copyright 3Dconnexion. All rights reserved. 
$Revision: 9453 $
-->
<AppCfg Default="true" xmlns="" CfgFormatVersion="1.0" ThisFileVersion="1.0">
  <AppInfo>
    <Name>STR_XBMC</Name>
    <VersionRange>
      <Min>1.1.0.0</Min>
      <Max>2.0.0.0</Max>
    </VersionRange>
    <ExecutableName>XBMC.EXE</ExecutableName>
    <ApplicationIcon>cube3d.ico</ApplicationIcon>
    <Transport>MWM</Transport>
  </AppInfo>
  <Settings>
    <!--
    <ScaleX>0.75</ScaleX>
    <ScaleY>0.75</ScaleY>
    <ScaleZ>0.75</ScaleZ>
    <ScaleRx>0.125</ScaleRx>
    <ScaleRy>0.125</ScaleRy>
    <ScaleRz>0.125</ScaleRz>
	-->
  </Settings>
  <ButtonActions>
  
  </ButtonActions>
  <Devices>
    <Device>
      <Name>SpaceNavigator</Name>
      <VendorID>46d</VendorID>
      <ProductID>c626</ProductID>
      <AxisFilter>None</AxisFilter>
      <CurrentButtonBank>Default</CurrentButtonBank>

        <Axis>
        <Enabled>true</Enabled>
        <Input>
          <ActionID>HIDMultiAxis_X</ActionID>
          <Min>0</Min>
          <Max>511</Max>
          <Deadband>100</Deadband>
        </Input>
        <Output>
          <ActionID>KB_LeftArrow</ActionID>
        </Output>
        </Axis>

	<Axis>
        <Enabled>true</Enabled>
        <Input>
          <ActionID>HIDMultiAxis_X</ActionID>
          <Min>511</Min>
          <Max>0</Max>
          <Deadband>100</Deadband>
        </Input>
        <Output>
          <ActionID>KB_RightArrow</ActionID>
        </Output>
      </Axis>

    </Device>
  </Devices>
</AppCfg>
It would be great to know what is wrong and thanks a lot,

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

Re: How to create a profile like with rbc9

Post by jwick »

Hi Tim,

Pretty good try, considering you did it without the GUI.

I changed the exe to notepad.exe so I could see what it was doing.

I changed the Transport to KMJ (Keyboard Mouse Joystick emulation),
and change the Output sections to define the HID keystrokes.
KB_LeftArrow/RightArrow don't work because they themselves are macros.

You can use the guts of the macros, but not the macros themselves (something for me to fix in the future).
Copy the guts out of the StringTable (...\3DxWinCore\Cfg\en-US_def.xml)
It's the <Key> entry that you need. If you can't find the Key you are looking for in the default StringTable, make a macro with the GUI and it will write the Key into your app-specific Cfg (in %Appdata%). You can retrieve the <Key> from there.

Jim

Code: Select all

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
(c) Copyright 3Dconnexion. All rights reserved. 
$Revision: 9453 $
-->
<AppCfg Default="true" xmlns="" CfgFormatVersion="1.0" ThisFileVersion="1.0">
  <AppInfo>
    <Name>STR_XBMC</Name>
    <VersionRange>
      <Min>1.1.0.0</Min>
      <Max>2.0.0.0</Max>
    </VersionRange>
    <ExecutableName>notepad.EXE</ExecutableName>
    <ApplicationIcon>cube3d.ico</ApplicationIcon>
    <Transport>KMJ</Transport>
  </AppInfo>
  <Settings>
    <!--
    <ScaleX>0.75</ScaleX>
    <ScaleY>0.75</ScaleY>
    <ScaleZ>0.75</ScaleZ>
    <ScaleRx>0.125</ScaleRx>
    <ScaleRy>0.125</ScaleRy>
    <ScaleRz>0.125</ScaleRz>
   -->
  </Settings>
  <ButtonActions>
  
  </ButtonActions>
  <Devices>
    <Device>
      <Name>SpaceNavigator</Name>
      <VendorID>46d</VendorID>
      <ProductID>c626</ProductID>
      <AxisFilter>None</AxisFilter>
      <CurrentButtonBank>Default</CurrentButtonBank>

        <Axis>
        <Enabled>true</Enabled>
        <Input>
          <ActionID>HIDMultiAxis_X</ActionID>
          <Min>0</Min>
          <Max>511</Max>
          <Deadband>10</Deadband>
        </Input>
        <Output>
          <ActionID>KB_Keystroke</ActionID>
          <Scale>1.00</Scale>
          <MaxEventRate>41.00</MaxEventRate>
          <Keystroke>
            <Key>4F</Key>
          </Keystroke>
        </Output>
        </Axis>

   <Axis>
        <Enabled>true</Enabled>
        <Input>
          <ActionID>HIDMultiAxis_X</ActionID>
          <Min>-512</Min>
          <Max>0</Max>
          <Deadband>10</Deadband>
        </Input>
        <Output>
          <ActionID>KB_Keystroke</ActionID>
          <Scale>1.00</Scale>
          <MaxEventRate>41.00</MaxEventRate>
          <Keystroke>
            <Key>50</Key>
          </Keystroke>
        </Output>
      </Axis>

    </Device>
  </Devices>
</AppCfg>
jwick
Moderator
Moderator
Posts: 3331
Joined: Wed Dec 20, 2006 2:25 pm
Location: USA
Contact:

Re: How to create a profile like with rbc9

Post by jwick »

This shouldn't be in the beta forum.
This works with the shipping driver.
UtaSH
Moderator
Moderator
Posts: 3754
Joined: Mon Nov 27, 2006 10:34 am
Location: Munich, Germany
Contact:

Re: How to create a profile like with rbc9

Post by UtaSH »

Moved topic to the correct forum. :)
Post Reply