Installation

Note

Once you install hardware to a Windows XP or 2000 system, it's incredibly difficult to remember what the process was like, because the operating system never acts the same way again. I'm quite indebted to John Grantham for doing a last-minute installation guide!

Finding and enumerating the orb

If you used the official SpaceWare software, you probably are aware of the paradigm it used: the software was installed, and then you pointed it at a particular COM port in order to use the orb detected there.

Windows XP and 2000 rely on a fundamentally different driver model: ever device is essentially treated as a plug-and-play device and allocated resources; the resources are then given over to the driver, as if the operating system were saying "say, this looks like it ought to belong to you... do something with it!"

The trick, then, is getting Windows to see the orb. What happens is that on boot-up the serial driver loads up and discovers a lot of serial ports attached to the machine, which is well and good. Next the serial enumeration driver, or "serenum", scans the ports provided by the serial driver and does some magical chicanery to figure out what's attached to them, eventually getting some sort of ID that it can use to identify the device. Once it has that Id, it looks in an internal table to see what that could possibly be and what driver it should give it to.

So the first part of installing the hidsporb driver is simply detecting the orb.

Under both Windows XP and Windows 2000, the simplest way to accomplish this is:

  1. Unzip the drivers to a subdirectory on your system. In this example, the subdirectory has been named g:\hidsporb. The subdirectory should include the two files hidsporb.sys and hidsporb.inf.

  2. Power down your system completely.

  3. Connect the SpaceOrb to a COM port that is not being used by another hardware device, such as a modem or mouse; since the Orb will be sending data at fairly constant rates, it should preferably have its own IRQ. Communications port one is usually best.

  4. Once the SpaceOrb is securelly connected to your Com port, power up your system and log in

  5. The plug-and-play subsystem should then detect and enumerate the orb, and you should be greeted with the "new hardware found" wizard:

    Figure 1. The "Found New Hardware!" wizard

If the boot-up option did not work and you are not greeted with the "Found New Hardware!" wizard, one of two things has probably happened: either the orb is already detected and the system is confused, or something in the plug-and-play part of your machine is baffled.

The first thing to do is to check out your device manager. In Windows 2000, you can do this by choosing start->settings->control panel from the Windows 2000 main menu and then choosing "system" from the resulting window to bring up the system properties dialog. Under the "hardware" tab, choose the "device manager" button. This should bring up a delightful tree showing your devices.

Scan the list of devices. The SpaceOrb may show up as "Spaceball" with an exclamation point next to it. If it does, then it is detected but not operating with current drivers, and we should be able to fix that. Right-click on the "Spaceball" entry, choose "properties", and from the resulting properties page click on the "driver" tab and then the "Update driver" button; proceed to "Installing the driver", below.

If the orb does not show up, try choosing action->scan for hardware changes from the Device Manager menu. This will result in another PNP scan of your system to find the attached orb.

If this fails, something deeper is probably wrong. Check your BIOS settings for PNP options, which has been reported to help in at least one case.

Installing the hidsporb.sys driver

Once the orb is detected or you have asked for the driver to be updated, Windows will railroad you down a series of dialogs in order to get the driver installed. It will first offer a chance to search for a driver, which they recommend. However, the search will be fruitless, because they do not have a driver; choose the "Choose a specific directory" option.

  1. From the "Found New Hardware!" wizard, select the option that says "Install from a list or specific location (Advanced)", and click the "Next" button. You should be greeted with a dialog listing search and installation options.

    Figure 2. The "Search and Installation Options" dialog

  2. From here, choose the option "Don't search. I will choose the driver to install", and click on the "Next" button. You should be greeted with a list of types of devices:

    Figure 3. The "device driver you want to install" dialog

  3. Select "Hid-compliant devices" from the list of devices, and then click the "Have Disk" button, bringing up the "install from disk" dialog

    Figure 4. The "Install From Disk" dialog

  4. You'll need to find the subdirectory that you unzipped to, so click the "browse" button to bring up the "Locate File" dialog:

    Figure 5. The "Locate File" dialog

  5. Navigate to the folder you unzipped the driver to and open it by double-clicking on the folder name, bringing up a list of the folder contents

    Figure 6. Navigating through the system tree

    Figure 7. Navigating through the system tree

    Figure 8. The folder contents, showing hidsporb.inf

  6. Now click on the hidsporb.inf file, and click the "Open" button to select it. This should bring you back to the "Install From Disk" dialog, with your subdirectory selected:

    Figure 9. The "Install From Disk" dialog

  7. Click the OK button to continue. Finally, the "Found New Hardware!" wizard will pop up again, only this time with the SpaceOrb displayed:

    Figure 10. The "Found New Hardware" wizard, with the SpaceOrb available

  8. Select the SpaceOrb and click on "Next" to continue.

    At this point, Windows will complain that the driver you are about to install is not "digitally signed" by Microsoft, and that drivers which are not signed are doubtless unsafe and heinous. This is a good time for me to remind you that the hidsporb driver is NOT endorsed by Microsoft, Logitech, Labtec, or Spacetec, and comes with ABSOLUTELY NO WARRANTY of any sort. If you install this driver and it turns your hard drive into a fruitcake, no one is accountable. Having said that, neither I nor my small team of beta testers has encountered any catastrophic failure or loss of data, but it is still your choice to install an unsupported driver. If you agree, simply click through the dialog boxes.

    Figure 11. The "This Driver May Be Evil" dialog

  9. Click on the "Continue Anyway" button to close this dialog. After a bit of churning, you should be greeted by this happy sight:

    Figure 12. The "Found New Hardware" wizard, almost completed

  10. Click on "Finish" to finish installing the hidsporb.sys driver, and continue to the next portion of installation, "Installing the HID-compliant game controller driver".

Installing the HID-compliant game controller driver

The hidsporb.sys driver, as important as it is, is only part of the picture. The other half is a "virtual device" which represents the game controller as it's seen by windows. By this time, the "Found New Hardware" wizard has reappeared, with a somewhat mysterious message:

Figure 13. The "Found New Hardware!" wizard, again...

Luckily, this is an even simpler portion of the procedure than the first bit:

  1. From the "Found New Hardware" box, you are offered a couple of choices. Since the "HID-compliant game controller" driver is a standard part of Windows XP, you can probably select the "Install the Software Automatically" option. Here, though, we elect to choose the "Install from a list or specific location" option, and click "Next" to get to the "search and installation options" dialog, which should already include the hidsporb directory.

    Figure 14. The "Search and installation options dialog", again

  2. Ensure the "Search for the best driver in these locations" box is marked and simply click on the "next" button, bringing up the search dialog and eventually the completion dialog:

    Figure 15. The "Found New Hardware" wizard, searching bravely for the HID-compliant game controller driver

    Figure 16. Success!

  3. At this point, everything for the driver should be installed correctly. Click on "Finish" to close the dialog, and proceed on with "Verifying the installation"

Verifying the Installation

At this point, both the hidsporb.sys driver and the "HID-compliant game controller" driver should be installed. Just to be sure, it's a good idea to bring up the system device manager and make sure everything looks right.

  1. First, right-click on "My Computer" and select "Properties" to bring up the system properties page:

    Figure 17. The "System Properties" dialog

  2. Select the "Hardware" tab...

    Figure 18. The "Hardware" tab

  3. ...and then the "device manager" button...

    Figure 19. The Device Manager

  4. Navigate to the "Human Interface Devices" subtree and open it:

    Figure 20. The "Human Interface Devices" subtree

  5. You should see at least two devices here: the "Spacetec Spaceorb 360" and the "HID-compliant game controller"; if you have other HID devices connected to your system, such as mice or gamepads, you may see multiple entries here. If the two devices do not appear, something has gone wrong with the installation; you may want to try the installation again, or do further diagnostics, if this occurs.

Testing the Driver

After installation, the orb will show up as a simple HID device as far as windows is concerned. Open up the game controller control panel (under Windows 2000, this is done via start->settings->control panel->game controllers; under Windows XP it is somewhat different (start->control panel->game controllers icon) You should see a list of game controllers, with the SpaceOrb listed:

Figure 21. A sight for sore eyes--the SpaceOrb is OK!

Your SpaceOrb should show up as a "Spacetec SpaceOrb 360" under your control panel. It may show up simply as "6-axis 16-button device", which has occurred rarely. It should also say "OK" for its status. Click the page's "properties" button and verify that your orb is represented as a six-axis sixteen-button device:

Figure 22. The mighty orb, working at last

Wiggle the orb to get an idea of how it will respond. Play with the buttons; the orb by default will start with chording turned on; see the section marked "Controlling the Hidsporb Driver" to learn how to change options on your orb.

Congratulations! Your orb is now in working order. If you had any trouble with these instructions, seek assistance first from the SpaceOrb community at http://www.planethardware.com/spaceorb. If you absolutely cannot get anything working, let me know and I will do my best to assist you.