USB Dial
This is another one of those “did it because I can” projects.  It’s a USB dial that uses a Teensy 2.0 Arduino unit at it’s core and allows me to emulate my mouse.  I use TinkerCAD avidly to design my 3D printed models.   I wanted to have both this and my mouse at the same time.  The mouse would be used for some activities (i.e object selection/rotation/editing) while the dial would fill in to perform rotate/zoom in/out actions.  It makes for an interesting dynamic with both units operating at the same time.
In Action:
How it Works:
The knob is connected to a rotary encoder (which has a push button switch built in). Encoded/switch actions are sent through to the Teensy, then over USB acting as a HID mouse/keyboard. Actions are as follows:
- Single-click: Mode 1: Rotates the workspace view in TinkerCAD.
 - Double-click: Mode 2: Zooms in/out in TinkerCAD. Also scrolls in other apps like Chrome.
 - A small vibration motor provides haptic feedback when turning the dial.
 - Third and subsequent clicks can be added later if need be.
 
The Guts:
- Teensy 2.0 micro controller. Arduino Pro Micro will likely work as well, or any controller that emulates a HID device.
 - Alps rotary encoder.
 - 3D printed base unit.
 - micro vibrating motor from old cellphone.
 - 24-30GA silicone wire.
 - Machined aluminum knob (6mm bore). You could print or use others but the metal dial provides a professional feel with the weight.
 - Arduino Sketch: ( specific to Teensy 2.o but probably works with the Pro Micro as is, but YMMV.)
 
![]()  | 
![]()  | 
![]()  | 
![]()  | 
![]() ![]()  | 
![]()  | 











Comments: