Reconfigurable High-Resolution Trackball
Reconfigurable high-resolution trackball suitable for CAD, Photo editing and gaming with user programmable buttons.
I started working on this several months ago to create the trackball that I was always looking for, but could never find. It incorporates many unique design features that I have not seen on devices like this one. I have been using the prototype version for a few months now and I absolutely love it. While this started as a self-serving project, I figured that other people may be seeking a similar solution, so I have started this project to share my work.
Capacitive Touch Buttons: The only moving part on this trackball is the ball itself. All 11 of the programmable buttons are metal touch pads. This allows the trackball to be completely quiet. I wanted this feature so I wouldn't bother the rest of my family while I was playing on the computer. A happy discovery with this was the ultra responsive buttons that are instant and even faster than traditional tactile click switches included in other trackballs and mice.
Modular: Everything about this trackball is changeable. The oversized support is covered with a heavy duty rubberized material and allows you to configure it to fully support your hand and wrist for maximum comfort. The support material is solid yet allows you to easily form curves where needed and packs down tight to hold the form you set. This allows this trackball to be the perfect companion for either your right or left hand. The buttons connect to the hand support with standard hook and loop, so they can be moved anywhere you want to put a button. The ball can also be relocated, so it can be placed anywhere around the hand support, or even in the middle with buttons on either side. Buttons come in a variety of configurations including clusters of five, three or just one that can be placed anywhere. Multiple single or clusters of buttons can be used at the same time.
Adjustable CPI / Resolution: The speed and responsiveness of the pointer movement can be adjusted on-the-fly with a simple touch of the finger. It can go super fast at up to 5760 CPI or all the way down to 90 CPI for delicate design work. The selected speed is represented with a rainbow of colors from a tri-color LED, allowing you easily see what speed is currently set. There are a total of 64 steps from the lowest speed to the highest allowing you to dial in exactly the speed you want any time. Simply hold your finger on the adjustment and watch the colors change until the desired speed is achieved. Tap and hold the adjustment to lower the speed.
Programmable: There are a total of 11 programmable buttons. These can be used for anything from mouse buttons (up to 3), scrolling (up or down), CPI resolution, any keyboard letter in either upper or lower case, numbers or F1-F12 or most other special keyboard keys. A full list of programmable key strokes can be seen on this page. If you decide you don't need scroll buttons for example, simply reprogram them for some other function. This goes for any button.
Extendable: The control system is based on the open standards of the Arduino compatible Teensy 2.0 board from PJRC and its Arduino extension software Teensyduino. You will get access to the complete source code that I wrote which controls every feature of this trackball, buttons and light, right down to the firmware version on the laser optical sensor. If you want to add more buttons, do-dads, bells and whistles, the sky is the limit. If you would like to change how a particular feature works or want to add a new feature, customize it your way using the Arduino programming environment.
Project Status:Currently, there is only one prototype in existence. I machined the prototype parts on a CNC router and I have all of the CAD drawings for all aspects of the design. I can either outsource the component manufacturing or I can simply make copies of my current parts and cast them myself. The popularity of the project will determine how it will be manufactured. I have invested a few thousand dollars in research and development along with hundreds of hours developing and fine tuning the software. If the project ends up very successful, I plan to create a community where people can exchange ideas, get help and share customized versions of software with the latest funky additions.
Applications:This trackball is great for several types of applications, including intricate work like CAD design and photo editing. It also has a home on your desk as a formidable input device for high-end gaming. In addition, It makes for a great learning tool for anyone who likes to tinker and tweak since every aspect can be easily adjusted and reprogrammed.
Technical Summary:Optics: Avago ADNS-9500
Processor: Teensy 2.0
Programmable Buttons: 11
Hand Support Materials: Neoprene covered in loop + Conductive fabric
OS: Works with Mac OS X, Linux & Windows
Drivers: Standard USB composite Mouse+Keyboard. No driver required
Ball: 1.5 inch acetal precision bearing ball
Acknowledgments:While I have my name all over this, there are a few special people who helped make this project possible:
I want to throw out a huge THANK YOU to Jeff Rowberg. After reading about his Keyglove project here on Kickstarter, I consulted with him to get some direction before I started this project. He has been a great resource and very supportive in helping to get this trackball up and running.
My wife has been very helpful in both helping to sew the parts together and a sounding board for features and discussion through the design process.
Paul Stoffregen over at PJRC has been great to answer my questions regarding the Teensy 2.0 and Teensyduino software.
Hope you all enjoy the presentation and send me comments or questions if you have any.
- (30 days)