Main article about this trackball:
There's almost no need to change mechanics of this device. The only improvement I've done is addition of fixing C-rings to the supporting bearing. Without that, it had too much axial play, rubbing the edges of support cage. Rings are easy to make by cutting coil spring of appropriate size: its inner diameter should be slightly less than shaft size. Attaching the rings to both sides of bearing make it stable and freely spinning without touching anything except ball. Another minor thing was getting rid of buttons pre-travel by adding pieces of electric tape.
Electronics require more radical update. I've removed COP822 controller with quartz and capacitors, and installed Arduino Micro clone board with ATmega32U4 controller instead. Connections are made by pieces of wire going from removed IC holes to the board: all needed inputs are here. USB cable routed in place of original ADB one, and MicroUSB connector added for connection to the board (it's easier than soldering directly to the narrow traces in this case). Board fixed to main PCB with double-sided sticky tape.
Before final assembling, ATmega controller was loaded with HID sketch converting signals from sensors and buttons to HID mouse protocol. It's based on NicoHood ImprovedMouse HID library and GuilleAcoustic quadrature decoding algorithm.
According to this page, Curtis Manufacturing Company was renamed to Curtis Computer Products, and USB database even reserved Vendor ID 049B for them. Thinking about appropriate Product ID, I decided to create it based on FCC ID code TB002 for that product, omitting first character as not suitable for hexadecimal numbering. So, resulting code was compiled with VID_049B&PID_B002 and serial port disabled: this is how the operating system identifies it now:
Arduino board have bright status LEDs, causing nice backlight illumination, especially if translucent ball is used:
Modified trackball was actually used to create this article.
1 post • Page 1 of 1