Space Mushroom Is a 6 DoF Mouse Perfect for CAD Software
To make it easier to work in the 3D environments of CAD software, Shiura built this Space Mushroom mouse that offers six degrees of freedom.
Computer aid design (CAD) software is the lifeblood of mechanical designers and engineers, but it isn’t intuitive to use. That’s especially true because a standard mouse and keyboard are meant for working on a 2D plane, while CAD environments present models in 3D. Every CAD program has an interface that lets users rotate and orbit models with specific key presses or mouse movements, but that isn’t a great experience. To make it easier to work in the 3D environments of CAD software, Shiura built this Space Mushroom mouse that offers six degrees of freedom (DoF).
This clever mouse has configurable code to work with different programs. Users can manipulate the clever mushroom-like knob to move the current model within its 3D environment. They can rotate the model relative to the viewport, pan the viewport, orbit the model, and zoom in/out. Space Mushroom doesn’t replace the user’s primary mouse, which they will still want to use to interact with the modeling tools and to select entities. But it makes life much easier for those of us who spend a lot of time working in CAD (both parametric and mesh modeling).
Underneath the mushroom knob are a trio analog joysticks in a radial arrangement. The knob interfaces with all three of those joysticks, which is how the user is able to smoothly orient the virtual 3D model with one hand. The joysticks connect to a SparkFun Pro Micro development board, which contains the same ATmega32U4 microcontroller as the Arduino Leonardo. Shiura chose that development board because it is configurable as a USB HID, which means that computers will see it as a standard keyboard and/or mouse. The mushroom knob, joystick mounts, and base/enclosure are all 3D-printable.
The code and configuration depend on which program the user intends to work within. Different CAD programs require different control schemes. One might require that you hold down CTRL to orbit the model, while another program might default to orbit. The code provided by Shiura is for use within Blender. If you plan to use Space Mushroom with a different program, then you’ll probably need to tweak the code to change what control commands it sends to the computer via USB.