DIY SpaceNavigator Brings The Freedom

[Pepijn de Vos] wanted a 6DOF HID. You know, a 6 Degrees Of Freedom Hardware Interface Device. Those are the fancy controllers for navigating in 3D space, for uses like Computer Aided Design, or Kerbal Space Program. And while we can’t speak to [Pepijn]’s KSP addiction, we do know that the commercially available controllers are prohibitively expensive. It takes some serious CAD work to justify the expenditure. [Pepijn] falls somewhere in-between, and while he couldn’t justify the expense, he does have the chops to design and 3D print his own.

Marvelously, he’s shared the design files for SpaceFox, linked above. It’s 6 spring-loaded potentiometers, supporting a floating printed Big Knob. The pots feed into an Arduino Pro Micro, which calculates the knob’s position on the fly and feeds in into the connected computer. On the computer side, the project uses the spacenavd driver to interface with various applications.

SpaceFox V1 is essentially a proof of concept, just asking for someone to come along and knock off the rough edges. [Pepijn] even includes a wishlist of improvements, but with the caveat that he’s satisfied with his working model. If this project really gets your 6DOF juices flowing, maybe try making an improved version, and share the improvements. And let us know about it!

25 thoughts on “DIY SpaceNavigator Brings The Freedom

  1. Cool stuff!

    Some random suggestions for future versions:
    – In current design ‘cut off the knob’ (that sounds wrong..) then mount a potentiometer to the platform you’re left with, then mount the knob to that, so you get full 360′ rotation in the Yaw axis
    – Could you put something like a joystick or trackball on top for finer control?
    – I think you can make the supporting mechanics a bit smaller by having the linkage arms go below the knob to a inward facing potentiometer? would also allow you to make a shroud/wrap-around of sorts between base & knob to protect the mechanism a bit

    Pretty sure you could make some nice money on the side selling a slightly more polished version of this for a fraction of the costs of the industry standard hardware ^^

    1. These things give you a virtual manipulation “velocity” based on position of the device. Thus, it already controls infinite rotation in all 3 axes. Yaw is the same as pitch and roll.

      Miniaturization and ruggedization would definitely be needed for commercialization.

  2. This is a nice built, and an interesting design. Using an inverted Stewart platform is cunning.

    But I would disagree that commercial offerings are “prohibitively” expensive.
    The 3Dconnexion “Spacemouse” is £160 from Amazon, though I actually bought mine from eBay for £60.

    Definitely a real boon for CAD work, especially assembling assemblies when you need to move about to find mating features.

    1. The drivers are the worst part about the 3DConnexion offerings. When I was working in Catia I used one because of Catia’s horrible mouse manipulation, but the dang drivers would always drop out depending on dock use, plugging other USB items in, phase of the moon, etc. If a program has SW-style manipulation, I’d sooner stick with a mouse.

      An open-source version would be more interesting to me simply because it could have a better driver.

      1. I was a lucky person one xmas and received one of the hockey puck sized SpaceNavigators as a gift. This was in the early days of google earth and it made that program *super* fun. I left it and the horrible drivers installed for a long time and forgot about it. Years later I’m trying to play Mass Effect and my POV keeps spinning down and left. I can barely keep it up with the mouse so that I can drunkenly stagger to the first save point so that I can edit the settings. Days of debugging later and it turns out the game was seeing the (still attached) SpaceNavigator as a controller and was happily taking its input–which was misinterpreted to mean “spin crazily down and to the left”. I never did finish Mass Effect.

        As a controller–for things that were meant to use it–the SpaceNavigator was wonderful. 6DOF is crazy fun to use in 3D applications.

  3. Very nice design. The geometry matches most “full-motion” flight simulator cabin actuator systems, except the pot crank arms add another function you had to linearize in the data.

  4. My workday starts and ends with my Spacemouse, so I definitely appreciate this approach. I could see it being useful for some gaming (Elite Dangerous comes to mind!) and budget-friendly introductory CAD. Very good design, and with a little polish I could see it being a pretty successful project, perhaps even a commercially viable kit a la Ploopy. Well done!

    That aside, Spacemouse Wireless + L-Trac trackball (with external footswitch) is input heaven. I don’t know how I lived before!

    1. 2nded on the spacemouse. Cheap as possible for what it does at the quality delivered.

      I use the basic version lefty, save your money and just click with right hand on mouse. The extra $150 for the pro version just gets you buttons.

      I don’t use a rat (original internal name for the foot mouse that has forever doomed it) style floor button.

      My other comment wasn’t posted, likely because I called for a catchy name for a spacemouse and refed the unPC names for thinkpad style input.

      Trying again I suggest: ‘Twist knob’.

      Copying comment for possible testing of hackaday’s dirty word list.

  5. 3d connexion devices are not ‘prohibitively expensive’. Unless US$150 is prohibitive for you.

    They’ve gone up a bit, and they’ve apparently discontinued the non compact space mouse. I picked it mainly because it was heavier.

    Mine is going strong at 4+ years of fairly heavy use. IIRC I paid under $100.

    IMHO: just get the basic spacemouse. I use it lefty, buttons on it are unused, don’t buy the pro version. You’ve got plenty of buttons on your mouse and keyboard. Turn down the speed or too sensitive.

    The only thing it needs is a ‘clitmouse’/’nurple’ commonly understood name. Spacemouse is too PC.
    Suggest: Twist knob?

  6. I would like to see a design using strain gauges, it would be a cool engineering task to isolate all the different dimensions of stress to actuate the right gauge. (You’re welcome to the idea because I’m not going to have enough time to ever get to it.)

    1. Look through the thread for the referenced commercial product and guess how that works?

      Remember this moment the next time you think you’ve had a new idea. Most inventors, aren’t. A good patent search can save you a fortune in lawyer bills.

        1. Superb teardown. For some reason I had thought that spaceball-type devices used optical fiber strain detection, but I see that the technology in the SpaceNavigator is much less exotic (but still very clever). Perhaps the first 1990s-era devices worked that way. I have an IBM-branded Spaceball 2003 and a Spacemouse Plus, but I have not seen fit to disassemble them.

          The rubber coating on my SpaceNavigator became unpleasantly sticky after several years. I was able to use isopropyl alcohol and paper towels to carefully remove the coating from the knob, leaving the device essentially as usable as before. Still a bargain at $150.

  7. You can get a spacemouse ball from the Playstation “ASCII Sphere 360” controller.

    If I am correct it has optical “strain guages” and just needs some translation. I think every value was 16 or 32 bit or something, so you can set the sensitivity and calibration in software because the resolution is so high.

    At this point all we need is an rpi2040 chip and have the calibration saved on the controller itself.

    1. Ugh, when I bought 5 or 6 of the ASCII Spheres they were $7 apiece, now ebay wants $100+. too bad I threw mine away when I moved. Sadly the Playstation had to map some of the axis to straight button presses for Descent. Probably because of limited bandwidth on the controller ports.

  8. There was a game series in the mid 90s called “Decent”, a first person shooter (FPS) that utilized full 6DoF for movement and game play, first of its kind. I think it was also the first FPS to use true 3D graphics instead of tricks with 2D shapes. Kicked off a whole genre of games and clones.

    I only ever played the demos (remember demo disks?) but they were amazingly fun if a bit cumbersome on a keyboard mouse setup. I’d love to go back and replay them with a 6DoF rig. Replace the potentiometers with steppers to give it some force feedback and put a few vibration motors in the hand piece to get a tactile “rumble” response. Given the stress game controllers go through it would likely need to be beefed up all the way around.

    On a more practical note, this would make for an interesting FPV drone controller in urban environments when you needed to transition from traditional forward flight to hovering work. Working from a ground station obviously, I don’t know how practical it would be mounted to a control deck hanging from your neck.

    1. Descent
      Very cheap to get that game in a bundle with Deacent II and III, or the new one: https://en.m.wikipedia.org/wiki/Overload_(video_game)

      Also some demos of Overload available if you look around.

      I had a 3Dconnexion SpaceORB, but sadly I was no longer on Win98 so there was no driver support for it.

      If playing Descent look for a Dos4GW replacement usually used for DosBOX, it will let Descent for Dos work natively on newer OS or processors. Or just use the D1x or D2x ports.

    2. I played that with a flight joystick and keyboard pair and it was miles better than a mouse+keyboard. We ran a LAN at the computer shop I worked at part time in high school and played 4 player. First LAN parties I ever attended. Still haven’t seen a game like Descent. Eventually you learned there was no ‘up’ in that game and it became significantly easier and less vertigo inducing.

      1. Overload is a new game like Descent.

        I always played keyboard only. Mapped the numpad to pretty much all motion. 5 forward numpad enter for reverse. + and minus rise up and drop down.

        1 and 3 for strafe. 7 and 9 for roll. Left arrow for turbo because I could thumb it.

      2. I used a trackball and keyboard. Much quicker rotation than the stick. Also used shutter glasses. Much easier to navigate in 3D without running into walls all the time.
        Actually still have it loaded on two machines here.

    3. I think I might have played a similar game called “Descent”
      It made me seasick.
      It might actually have not had that same effect with a better-suited input device, where intent and effect were closer-coupled.

    4. That was a great game, came on several easy to copy floppy discs and we somehow also came up with a hack or editor or cheat disc that allowed you to pick whatever weapons you’d want during gameplay. Quad megamissles all day, baby. Also joystick with R hand and keyboard with L hand for full 6 degrees of freedom. The stick was yaw/pitch/roll and keyboard for translations.

  9. This reminds me more of the Novint Falcon, than of a SpaceMouse/Orb/whatever, although I believe the former only has three D’s of F. I’ve never seen the Falcon in-person, let alone used one, but I own one of the latter. The software support was always the trickiest part of unique HIDs like these, especially when haptic feedback is involved. I hope he cracks it; I want to build one!

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.