A DIY CAD Mouse You Can Actually Build

When you spend a lot of time on the computer doing certain more specialised tasks (no, we’re not talking about browsing cat memes on twitter) you start to think that your basic trackpad or mouse is, let’s say, lacking a certain something. We think that something may be called ‘usability’ or maybe ease-of-use? Any which way, lots of heavy CAD users gush over their favourite mouse stand-ins, and one particularly interesting class of input devices is the Space Mouse, which is essentially patented up-to-the-hilt and available only from 3DConnexion. But what about open source alternatives you can build yourselves? Enter stage left, the Orbion created by [FaqT0tum.] This simple little build combines an analog joystick with a rotary knob, with a rear button and OLED display on the front completing the user interface.

The idea is pretty straightforward; you setup the firmware with the application you want to use it with, and it emits HID events to the connected PC, replacing the mouse or keyboard input. Since your machine will take input from multiple sources, it doesn’t replace your mouse, it augments it. It may not be very accurate for detailed PCB layout work, but for moving around in a 3D view, or dialling in a video edit, this could be a very useful addition to your workstation, so why not give it a try? The wiring is simple, the parts easily found and cheap, and it’s only a few printed parts! This scribe is already printing the plastics right now, if you listen carefully you might be able to make out the sound of the Lulzbot in background.

There are many other takes on this idea, with varying levels of complexity, like this incredible build from [Ahmsville] that sadly doesn’t make the PCBs available openly, and here’s one we covered earlier mashing the expensive 3DConnexion spacemouse into a keeb.

Thanks [baldpower] for the tip!

50 thoughts on “A DIY CAD Mouse You Can Actually Build

  1. Hmm. I wonder if it’s been done before?

    https://collections.museumsvictoria.com.au/items/724697

    I would have loved having a Bitstik (and the software) back in the day, but QCad and a mouse is sufficient now.

    One day I might build an accurate 3D-printed copy of it, for nostalgic reasons. The X-Y would be an analogue joystick. The Z knob would be a rotary encoder, like a mouse scroll wheel. The three buttons would be left, middle, and right click. Actually, the Z knob rotary encoder could have a click, like a scroll wheel click. The LED would be a 5mm RGB LED, for authentic look, but also new functionality.

    Or maybe I won’t.

    1. My dad used to use these when he was in university back in the late 80’s (in the UK). It was part of a CAD package they used that ran on a BBC Master. I had a bit of a play a couple of times and remember thinking it would make an awesome controller for Elite.

  2. I am very tempted to give this a go too. Over the years I have owned a few 3DConnexion devices (Space Mouse, Spaceball etc) and coud never get on with any one of them, finding them way too sensitive for me. The strain guage devices are just not tuneable enough, requiring very light touch or they ‘run away’ on me

    Feels like a multi-turn encoder and a potentiometer (and a software ‘driver’ i can tune myself) might just be a winner :) This and a mouse sounds like a good combination to me. I am old enough to remember the days of CAD using ONLY a joystick, so slooowwww…I don’t want to go back to picking screen menus with a joystick’s crosshairs ever again :)

    1. As a mech-e, I’ve been using a 3D Connexion Navigator for over a decade. You aren’t kidding about the sensitivity. It took me a few nights at home playing with the 3D puzzle that came with the software to finally get the hang of it. I highly recommend playing with the puzzle to anyone interested in using one.

  3. this is just a joystick with a clever body and firmware. I was hoping for an actual 4+DOF CADmouse. get more functionality out of using the bridging software with a gamepad

    OH WAIT

    you have to unplug all joysticks anyway (or disable CADmouse controls entirely) in FreeCAD because it has worse mapping controls than most games, or you get Spurious Inputs

    Seriously, just use game controller mapping and you’ll have a much better UX

    Put a Twinstick (any modern gamepad) on your desk turned around backwards (and brace it somehow), and you have 5 DOF and several buttons (two sticks and the left analog trigger)

      1. you’re not using it ‘normally’; you’re turning it around and using two fingers of one hand on the joysticks (4 axes), you can reach the directional pad and hit the left bumper and trigger with your thumb, so that’s five degrees of freedom but in a very … not intuitive way. it won’t replace a spacemouse but neither will the OP device even less

        when I saw the OP blurb, I was “Oh, somebody has figured out a cheap way to make a multi-axis Spacemouse?” noooope, it’s just a fancy single joystick and encoder wheel

    1. no.. just no. Game controllers like that suck compared to using a 3d mouse. With a minimal amount of effort you get a lot of intuitive manupualtion control of 3d objects with these kind of mice that no attempt at mashing together multiple joys can approach.

    1. I had one back when I was doing 3D fire sprinkler designs. Out of the software I use, it only really worked in Revit, but it was really hand for navigation.

      Usually using a mouse you can EITHER orbit, zoom, or pan. With a 3D mouse, you can do all 3 at the same time, which is great when you’re trying to figure out how much room you’ve got, or how you’re going to resolve clashes.

    2. It’s hard to understand until you’ve used one for a while. I first started w/ the Spacemouse series when I was selling a 3D-capable remote access solution into automotive engineering shops around Detroit. In literally every meeting, somebody would pose the question “does this solution work with Spacemouse” followed quickly by “if it doesn’t, please see yourself out of the door”.

      So I went and bought one just to use for demo purposes. After spending a few hours modelling with one… it’s now firmly in the “from my cold dead hands” category and I finally understood what my customers had been telling me.

      Once you have a mouse that works in 6 axis, going back to 2 axis mousing in CAD is hopeless. I was offering these people a work from home solution (before it was cool), and they’d literally rather drive into the office and use a Spacemouse than try and CAD from home without it.

      1. Yes. I was learning CNC programming in school with spacemice, and I bought a used one for home. It was designed for WinXP but I was trying to use it with Vista. When I contacted 3DConnexion they told me to just buy a current ($450) unit on a students budget.
        I love the device, but the people at the company can go die in a fire.

        1. I’m using a 3DConnexion spacemouse I bought in $2008 for $43 from Newegg (I was an EARLY adopter). What do you mean you can’t use an older one on a newer OS?

          You can also get plenty of them for under $100 on ebay, it’s hardly a $450 investment…

    3. A real spacemouse can be rotated and translated in 3 axis, so it gives you a full 6dof. Once you get used to it, it’s a decent upgrade from using the middle mouse button to constantly re-align your view. Probably not worth it if you’re just dicking around with cad, but if you’re buying even the cheapest solidworks license for 4k, whats another 100 bucks if it makes things go a little smoother.

      I bought one, and it felt fairly pointless at first, but now that I’ve been using it for about a year, I find it a chore to go back to using the middle mouse button when I have to.

    4. Having control of all 6 axis can be very useful. I have a space mouse and I find it great for presentations. I can fly through 3d models and keep really nice framing the whole way along. The only thing I don’t like is that I still need to use a mouse and must switch back and forth when modeling. I’d love to have a space mouse compact with an optical mouse built in the base.

      1. I use CREO to work in solid models every day, and I can imagine a world where a space mouse combined with a mouse would be nice… but somehow it seems like it’d turn out to be the seventh circle of hell – and not only because I am an unrepentant track ball user. While modeling I find that I need to quickly position the model and select surfaces with the cursor (not to mention select functions from the ribbon menu) which is more easily done using a 3d mouse and separate pointing device simultaneously. If anything, I find it more useful to have a customizable shortcut keyboard coupled with the 3d mouse (just so I don’t have to bother with the tabs and ribbon). It sounds like you use your dominate hand for the mouse and the 3d mouse; once you get used to using the 3d mouse with with your off hand you can really fly along. I mean, at this point I feel clumsy using the 3d mouse with my dominate hand – and I wouldn’t have it any other way :) Give it a try, it’ll only take a week until it feels natural.

    5. With CAD it is better than a mouse, per se. But, in CAD this (by “this” I mean a real spacemouse) doesn’t replace the mouse. You have your regular mouse in your right hand, and the spacemouse in your left hand. In modern CAD programs the keyboard is rarely used. And, if you do use it, it’s for a hotkey with only one or two keystrokes.

  4. That Spacemouse looks litigiously close to the Logitech Cyberman 2 game controller I had as a kid. If that’s how those mice work, they’re not worth the money they’re asking. I also wonder if the mechanism is the same, whether they bought the patent from Logitech or if a second invalid patent has been granted to them. Worth figuring out for those with skin in the game.

    1. Before the Spacemouse was spun off into 3DConnexion, it was made by Logitech. I saw a video breakdown of the insides, and it’s a mess of springs and IR transmitters, receivers, and optical slits. It would be mechanically simpler to just put an IMU on the end of a rubber rod and twist and move that.

  5. I’ll admit, it does have a sort of gadgety attraction, but I think I’ll stick to my trackball. It’s not like my left hand is too busy to occasionally hit shift, ctrl, or enter a numerical value. Rotation on any axis is much better, too.

  6. I just got an Elecom EX-G trackball. It’s doing quite well. They even make an exact mirror version of this model for left hand use. It’s the only left handed product they make. Their other mice and trackballs are either non-handed or right handed.

    1. If you value your time in money, then how would you value your fun? Sometimes fun is more valuable than money and making things can be fun.
      You never hear people say things like “What’s your time worth?” when: other people are, having a holiday, going to the cinema or watch a movie at home, watching the news, playing a game, solving a puzzle, playing with the kids, walking the dog, washing the car, mowing the lawn, preparing food, shopping, commenting on other peoples projects or doing any other stuff in life that could be outsourced or skipped. Sometimes we do things because they are fun, and sometimes we do they because they we have to.
      $65 may seem not much to you, but if you haven’t got it but you have time to spare and/or want to do something to exercise or improve your skills than this might be a perfectly fine project. Who are we to judge what a project is worth and if a project is worthy.

    2. If I’m not at work, my time is worth zero dollars because no one is paying me.

      Whether I build or buy something depends on what I get out of it.

      Do I want it to learn about it or to try out an idea? Build it myself.

      Do I want it because I need to it accomplish another task? Probably buy because my free time is limited and I need to work on just the interesting parts of the project rather than spending my time reinventing the wheel.

      Nobody is paying me to do my hobby stuff, so asking how much my (free) time is worth in money is a stupid question.

      In the case of this Space Mouse thingy, if I thought needed one to better complete a 3D design task I’d probably just buy one. If I were interested in how the Space Mouse works or if I wanted a 3D printer project that produces a nominally useful device, then I’d make one myself.

    3. I simply refuse to buy a spacemouse because the company that makes them does not bother to write proper linux drivers and they have to be hacked together by the community. I’d rather give those hackers a beer than pay a cent to that spacemouse company.

      1. They dont make proper drivers period. They have proprietary software for windows that limit their device to being used with software they have controls for OR using their cludgy system to try and map out user customized controls. That system was made intentionally worse a number of years ago when the UI they had for it was taken out.

        For the things they work for.. it works great. Other then that.. terrible.

        1. Yeah, the driver thing really sucks. 3D Conexxions does release an SDK for their hardware, so if your favorite programs implement the functionality, then it is great. Adobe PDF viewer does a great job of using the pan and zoom functions. The dedicated engineering drawing viewer at my work – not at all. I wish excel had better support. It is a nightmare to pan around large spreadsheets once you’ve used a 3d mouse (yes, I know you can map tilt to simulate a scroll wheel, but it isn’t smooth at all).

          And don’t bother asking about games. 3D Connexion’s stance is that they make “professional input devices” not game controllers. Which, in my opinion, looses them a ton of money – considering even semi serious gamers will pay in the mid $1-200 range for a mouse.

          Fortunately, there is 3rd party software that makes the space mouse mappable as a game controller. Search for my name and you’ll find it quickly, since I don’t post often.

  7. There’s a Hackaday Prize entry I only just came across that has a full 6 DOF version along with some nice macro keys: https://hackaday.io/project/179803-ahmsville-dial-v2

    It has pretty solid assembly instructions, variants with/without the macro keys or the 6 DOF, and is hybrid wired/wireless. I’ve wondered why it didn’t seem to have gotten much attention (maybe just because the PCBs don’t appear to be open source themselves?)

    1. What’s especially elegant is that (if I have this the right way around) he uses magnetic field detection rather than the light intensity detection used by the spacemouse, to deliver the same 6dof capability. I will happily buy Nigerian if I’m ever so good at CAD as to need a 3D mouse! Absolute hero.

  8. Question regarding CERN-OHL-S in regards to this product.

    First I would like to thank the developer, for his great work.
    The product looks fabulous. I do expect panning in blender will become easier (intuitive) using this mouse.
    “… DIY CAD Mouse …” I accepted the challenge and planning to build the CAD Mouse. Housing is already printed.

    Licence/License – someone here willing to clarify with regards to commercial use?
    In the github folder is the “LICENSE.md” file refering to CERN-OHL-S (for the whole project). I am not familiar with the kind of license. From scanning the licence, my understanding is ..
    “CERN-OHL-S License” basically means, with regards to commercial-use … you can do whatevery you want – incl. commercial use – , however your product automatically becomes CERN-OHL-S.
    BUT the “*.ino” files contain the line “//FREE FOR ANY NON COMMERCIAL PROJECT”
    => isn’t that contradict to CERN-OHL-S license (and its spirit)?

    Not that I do have any plans of commercial use any parts of this product. Maybe a clarification here, helps anyone with interest in CERN-OHL-S and/or the CAD Mouse :-)

    1. I think (as a non-contributor to the project) that the intent is for the license file in the root directory to apply to anything that doesn’t say otherwise, and the one-sentence license (to the extent that it can even be considered a license) “FREE FOR ANY NON COMMERCIAL PROJECT” to apply to files containing it. I also think (as a non-lawyer) that you might get away with arguing in court that the license file in the root directory does apply to everything, because no clear statement otherwise was made; even if they do someday add such a statement, you could easily argue that the CERN-OHL-S has been applied to everything predating the clarification, and that that’s irrevocable (which I believe is a well-established principle of licensing), so you can still use anything that was uploaded prior to clarification under that license.

  9. I own a SpacePilot Pro and have used them professionally for some years. If you don’t mind dipping your toes into some xml files and some manual and configuration you can pretty much set them up for any software, including games. One of the developers is super active on the forums and will help with just about any query. I don’t like the current drivers abs software for it so I use some older bits.

    1. Can you give a link of an example to configuring the 3d Connexions space mouse to work (better) with excel? I’d love to be able to pan and zoom excel the same as a CAD drawing. They love huge spreadsheets at work, since my company just refuses to get purpose-suited software.

Leave a Reply to Michael RinkleCancel 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.