SpaceNavigator: Mouse/Joystick/Keyboard. Driver Documentation v2.0

Similar documents
Saitek. SST Programming Software USER GUIDE

STEELSERIES FREE MOBILE WIRELESS CONTROLLER USER GUIDE

PN-L702B LCD MONITOR TOUCH PANEL DRIVER OPERATION MANUAL. Version 2.1

EZdok CAMERA ADDON For Microsoft Flight Simulator X

What is OneDrive for Business at University of Greenwich? Accessing OneDrive from Office 365

Driver Updater Manual

DRIVER INSTALLATION PROCEDURE WINDOWS 8 (32 OR 64 BIT)

Viewing.wmv. Setup your computer to watch.wmv files online

Being Productive Venkat Subramaniam

Creating a Poster in PowerPoint A. Set Up Your Poster

Procedure for updating Firmware of EZ4 W or ICC50 W

AODA Mouse Pointer Visibility

M100 System File Manager Help

product. Please read this instruction before setup your VenomXTM.

Windows 10.1 Tablet (UB-15MS10 and UB-15MS10SA) FAQ December 2014

Appointment Scheduler

Pro Flight Rudder Pedals

Lesson 2. From computer to USB

viewon 2 - Create your own Symbols How To

SnagIt Add-Ins User Guide

Seagate NAS OS 4 Reviewers Guide: NAS / NAS Pro / Business Storage Rackmounts

Bluetooth HID Profile

How to Configure Windows 8.1 to run ereports on IE11

Lab: Data Backup and Recovery in Windows XP

How to Install Applications (APK Files) on Your Android Phone

Video on Online Archives and how to use them:

Windows 8.1 User Guide

KEYBOARD SHORTCUTS. Note: Keyboard shortcuts may be different for the same icon depending upon the SAP screen you are in.

Tutorial: Biped Character in 3D Studio Max 7, Easy Animation

Basic Computer Skills for Beginners. Mesa Regional Family History Center

Copyright 2006 TechSmith Corporation. All Rights Reserved.

IT Quick Reference Guides Using the Application Catalog and Software Center

Solar-Generation Data Visualization Software Festa Operation Manual

Installing Lync. Configuring and Signing into Lync

Tablet and Digital Pen Device

Windows 7 for beginners

Windows XP Chinese Character Support Installation Instruction

Auto Clicker Tutorial

ONLINE ACCOUNTABILITY FOR EVERY DEVICE. Quick Reference Guide V1.0

M8 basics. Setting Up Your M8 Android Box Remote Essentials Using Your M8 Android Box Setting up Wireless... 6

XF Extracellular Flux Analyzer. Installation and Troubleshooting Guide

HP LASER GAMING MOUSE USER MANUAL

Appendix A. CMS(Client Management Software)

Macintosh System OSX #1

Capture desktop image to Clipboard. Display contextual Help Window. Rename.

Evoluent Mouse Manager for Windows. Download the free driver at evoluent.com. The primary benefits of the Mouse Manager are:

Help. Contents Back >>

Lab - Data Backup and Recovery in Windows XP

USB Human Interface Joystick Demonstration Create a HID USB Device (sample Joystick) By Jared St.Clare, October 2009 Version 1

Add in Guide for Microsoft Dynamics NAV May 2012

So you want to create an a Friend action

13 Managing Devices. Your computer is an assembly of many components from different manufacturers. LESSON OBJECTIVES

VisTablet Manual. For 12 VT Original and Mini Mouse

Celluon Laserkey - User Guide for Microsoft Windows XP

NHSmail mobile configuration guide NotifySync V4.7 for Blackberry

Getting started with DfuSe USB device firmware upgrade STMicroelectronics extension

IP SERIAL DEVICE SERVER

Create a Poster Using Publisher

Passport installation Windows 8 + Firefox

How to Setup and Connect to an FTP Server Using FileZilla. Part I: Setting up the server

INF-USB2 and SI-USB Quick Start Guide

Sync IT. Detailed description of program. Tab: Sync

IT Quick Reference Guides Using Windows 7

MICROSOFT WINDOWS NAVIGATION

TM Online Storage: StorageSync

Why Use OneNote? Creating a New Notebook

COPYRIGHT TOP NOTCH TABLETS LLC HOW TO: Install the Drivers to your PC so you can Flash Firmware to your RK3066 Powered Tablet.

The following was taken directly from the ARD (Apple Remote Desktop) operator s manual:

FrenzelSoft Stock Ticker

SMART INSTALL CONTENTS. Questions and answers

User Manual. pdoc Pro Client for Windows. Copyright Topaz Systems Inc. All rights reserved.

Dwebs IIS Log Archiver Installation and Configuration Guide for Helm 4

Windows XP Pro: Basics 1

CORSAIR GAMING KEYBOARD SOFTWARE USER MANUAL

Quick Guide #3G: Philips MRx Configuration and Operation with Rosetta- DS (Bluetooth Connection)

Tutorial. Introduction to Windows Movie Maker 2.1. A Hands-on Workshop. from the Academic Technology Center. Distributed Learning Services, CIT

OneNote 2016 Tutorial

ASUS GPU Tweak User Manual

Remote Support. User Guide 7.23

AutoDWG DWGSee DWG Viewer. DWGSee User Guide

How to remotely access your Virtual Desktop from outside the college using VMware View Client. How to guide

Open Arcade Architecture Device Data Format Specification

Ocster Backup - Rescue System

EASE Scan Tool Customers. SECTION I - Installation

, SHAPE Services

ACS CLIENT SOFTWARE USER MANUAL

DRIVER INSTALLATION PROCEDURE WINDOWS 8 (32 or 64 BIT)

MAKING THE MOST OF WINDOWS 7

Troubleshooting And Support

How To Sync Between Quickbooks And Act

Getting Started with Web Based Data Reporting. November, 2005

Office 365 Training. Contents

Using TViX Network. NFS mode : You must install the TViX NetShare utility in to your PC, but you can play the TP or DVD jukebox without stutter.

Generative Drafting. Page DASSAULT SYSTEMES. IBM Product Lifecycle Management Solutions / Dassault Systemes

Internet Explorer Settings for Optum CareTracker

AXIS 1440 Print Server For EPSON Printers: Product Update. Important Information for Windows

3D-GIS in the Cloud USER MANUAL. August, 2014

Super Pro Net TM Network Key Installation and Operation

Transcription:

SpaceNavigator: Mouse/Joystick/Keyboard. Driver Documentation v2.0 Currently I am now using my SpaceNavigator for ALL of my application and/or games and still using it in 3D apps with the original 3DxWare software. I dreamt of it, I hoped for it to appear in my socks for Christmas And no such luck. So, I ve written it myself. A driver for our SpaceNavigator!!!!

Why use a Driver and not just a simple User-Mode application? Or using the 3DConnexion SDK? Some applications or games don t accept hooking up a keyboard, or useing DirectX Input, so with a user-mode app, I m not able to send information the way I want. With a driver, SpaceNavigator doesn t emulate a keyboard/mouse/joystick But IS a keyboard, IS a mouse, and IS a Joystick. In a few words, an HID Device (Human Interface Device) has a HID_Descriptor that tells the OS (Windows) what kind of device it is. This HID_Descriptor resides in the firmware device waiting for the OS to ask for it when initializes. When there is no driver installed, Windows will use the standard HID driver (HIDClass.sys), and assigns the HID_Descriptor to it. The HID_Class driver reads the information from the device and sends it back to Windows. If you install a driver, you can send back a fake HID_Descriptor. In the same way, a HID_Descriptor can tell the OS that the device is a Multi-device. The original HID_Descriptor from SpaceNavigator is a 99% a Joystick one. In fact, it s more than 99%, only 2 bits in the descriptor, who has more than 12000 Bytes, are different I think this is voluntary. Here are the first bytes of this descriptor: /* Space Nav */ 0x05, 0x01, // USAGE_PAGE (Generic Desktop) 0x09, 0x08, // USAGE (Undefined) 0xa1, 0x01, // COLLECTION (Application) 0xa1, 0x00, // COLLECTION (Physical) 0x85, 0x01, // REPORT_ID (1) 0x16, 0x0c, 0xfe, // LOGICAL_MINIMUM (-500) 0x26, 0xf4, 0x01, // LOGICAL_MAXIMUM (500) 0x36, 0x00, 0x80, // PHYSICAL_MINIMUM (-32768) 0x46, 0xff, 0x7f, // PHYSICAL_MAXIMUM (32767) The second line: 0x09, 0x08 change it to 0x09, 0x04 and u have a Joystick. With those 2 bits changed, SpaceNavigator is seen as a Joystick without any driver. OK, I want more, I want a bind functions, I want a keyboard, I want a mouse!!!

Let s Go. There are 2 parts in my driver: 1. RBC9-SpaceNav.sys, the driver. 2. RBC9-SpaceNav.exe, a user mode application to create Layout(s) that the driver will use. And if u want, an AutoSwitch feature. NB: there is a Harcoded Layout, used by default if you don t create more layouts. The binds are A. Nav Axe -> Joy Axe and Mouse Move B. Nav Btn -> Joy Btn and Mouse Btn C. Nav Rotation -> Mouse Wheel.

I. Installation IMPORTANT: Don t start the exe until told. Stop the 3DxWare application momentarily. Run RBC9 - SpaceNav.msi and follow the step quiet simple folder to install and nothing more This will install RBC9-SpaceNavigator.exe and copy to your system32 driver directory the RBC9-SpaceNavigator.sys Go to your device manager, select SpaceNavigator If you have multiple HIDs on your computer, check the property info and look for the one with VID_046D&PID_C626.

1. Now right click and select update driver software 2. Select Browse my computer for driver software 3. Select Let me pick.

4. Select RBC9 SpaceNavigator 5. Select Install this driver software anyway

And u should obtain Installation is Complete!

Now, in your device manager, you have 2 new devices, 1. An HID Keyboard device and a HID-Compliant Mouse 2. and in your Game Controllers, a new Joystick. The joystick has 8 axes and 8 buttons. This is in case some game needs Throttle or Slider instead of X Y Z Rotation At this moment the driver is working, and you should be able to move SpaceNavigator around to see the Joystick cursor move, and Button Lights On this is the hardcoded Layout running.

II. Create Layout / Configure : Now u can start RBC9-SpaceNav.exe An Icon should appear in your Systray. Click on it to pop up the Configuration menu «Status», Device Remove, Current Layout. Right Click on it, pop up the menu. The Menu Option: SpaceNavigator Auto: Turn On/Off AutoSwitch, this feature needs the RBC9- SpaceNav.exe running, the driver could do it by itself. o AutoSwitch is a feature that tells the driver with Layout use in function of the Application Focus. o The AutoSwitch will use Layout define for listed applications and go back to the Default Layout for the others. Switch Layout Does what it says Switch to a specific Layout. Edit Layout : Here we Are

EDIT LAYOUT You can create as many Layouts as you want. For Each Layout, u can Bind What you want to what you want. One Axe of SpaceNavigator to One Axe or multiple Axes on the Joystick, in the same time, for this Axe, a mouse move and a Key Hold there is no limitation

A) Create a New Layout : Click on the Add button, a new line with -New Layout- appears at bottom of the Layout list. Click it to rename. (For Each Layout u can choose a Global Deadzone for the Axes.) B) Each Layout have (or not) a list of Exe for the AutoSwitch part. Use Add / Del button, and click to type in the exact name of the application. On the picture I have a Dummy Layout use to turn off all bind when I m in 3Dx software. C) Select the SpaceNavigator Axe/Button u want to bind. NB: u can see value; indicate the actual position of SpaceNavigator Axe. Use it to adjust min / max or Deadzone. D) Click Add under Bind To list

For each Bind u can Invert Axe/Btn, and select the part of the axe to use from SpaceNav. Part position with the Slider and/or Positive/Negative value with the Combo. E) Now select Bind Type : Joy Axe / Joy Btn / Joy POV : choose Axe / Btn to bind on Joystick.

Mouse X / Y : Change the Sensitivity o Mouse Wheel : Choose the repeat delay o Mouse Button : o Switch Layout : The layout u want to switch to o NB: I use this i.e., I bind Alt Key + Tab Key when I push down the SpaceNavigator, so I get the windows Task Switch. I add a bind on the same axe to Switch Layout So When I push, Task Switch come, and the SpaceNav is bind to 3 new functions only. 1) Pull up : leave the task switch and go back to another layout. 2) Left and right rotation : bind to Left Arrow and Right Arrow

Keyboard: You can bind 5 keys into one Bind, if you need more, add a second bind. Each bind could be a Key Press = standard keyboard event. Key Hold = the key is keep press until another bind tell to release. Key Release = A repeat option is available, i.e., in some video app, u can go from frame to frame with left/right arrow. Sometimes press key is enough, if u keep down, but sometimes need to press/release to go on and the speed u do it.. Ok, i create 3 bind on the rotation axe, 1) min 10 max 100 : repeat delay 500 (2 times per second) 2) min 101 max 200 : repeat delay 250. 3) min 201 max 360 : repeat delay 50 With this I have a sensitive control on the frame to frame movement It s an example. Or u can use it as Autofire in some games Apply : Save your Config and quit Layout Editor. Cancel : Forget everything thing you ve changed. Calibrate

Some info : When u are in the Edit Layout screen, the driver stop sending to Joystick Mouse and Keyboard. The driver restart when u leave this screen. The AutoSwitch option is save when u change in the Edit Layout Screen, if u turn on /off in the pop up menu, it will go back to the saved state next restart of the application. The driver load the default layout when it start, so u don t need to run exe if u don t want any autoswitch. U can change layout without using exe application. Pull up and turn left (at end point max value) the space navigator for more than 3 seconds and it will enter in Special mode. The Led flashing indicate this mode. Left Button : go to default Layout. Right Button : go to next Layout. Push down to leave Special mode. Know bugs: Uninstall the driver, (no problem with the application). In the device manager, when the uninstall procedure looks like freeze, u have to move something on the SpaceNavigator to free a thread in the driver. I have a mistake with an event in the IOCTRL routine see later. Have Fun Ced Aka RBC9.