The Knob - Micro USB Media Controller (Digispark Arduino)
cults3d
1 knob, 6 functions. This tiny, super cheap media controller works with all devices that support USB Media Controls - computers, tablets, phones etc. I've tested it so far with Windows 10 & Android 6. A single knob performs the following actions: Play - press the knob Pause - press the knob again Volume up - turn the knob right Volume down - turn the knob left Previous track - press and turn the knob left Next track - press and turn the knob right You can also replace the actions of the knob with pretty much any key press, (or combinations of key presses) that you want. See Changing functions further down this page. There are several one-knob media controllers out there, but I've found no version that allows you to change tracks without dedicated buttons (like my larger Arduino Pro Micro-based Media Controller has). And none so cheap and easy to build. The only components needed are a Digispark (Micro USB version) Arduino microcontroller and a KY-040 rotary encoder, which can be had for about 1€ each on eBay/Ali. A few wires to solder and that's it - hardware is done! I'm also including the Arduino source I wrote which includes (or links to) pinouts, libraries , instructions and pretty much everything you need in order to program the controller. I made several different knobs that you can choose from. The encoder has a standard D-shaped 6mm shaft so there are a multitude to choose from if you want to get one from elsewhere. Designed to snap together, but I included holes and support for adding small screws for those of you who are inclined to.. ahem.. screw around. When assembling, make sure that the Digispark and the KY-040 are fully seated in the base before putting the top on - if the boards don't fit, remove any imperfections on their edges with a small file. If you want to sand the parts (I did) or paint them (I didn't), do so before mounting the boards. It's possible to close the case without the boards, and later prying them apart without breaking the parts. This makes it easier to sand and not worry about the edges. After assembling, add either self-adhesive rubber feet or glue a rubber sheet on the bottom to stop it from sliding around. If the media controller will be stationary, you can also fixate it with double-sided tape. CHANGING FUNCTIONS Do you want the knob to do something else than control multimedia? No problem! If you open the Arduino source (.ino), at the end of the file the actions performed are stated like this: TrinketHidCombo.pressMultimediaKey(MMKEY_SCAN_PREV_TRACK) Just change the key in the parenthesis to any in the list below. If two lines like this are in the same statement, they will execute right after each other, even making it possible to write advanced macros. System keys: KEYCODE_APP KEYCODE_ENTER KEYCODE_BACKSPACE KEYCODE_ESC KEYCODE_TAB KEYCODE_SPACE Navigation keys: KEYCODE_ARROW_RIGHT KEYCODE_ARROW_LEFT KEYCODE_ARROW_DOWN KEYCODE_ARROW_UP Function keys: KEYCODE_F1 KEYCODE_F2 KEYCODE_F3 KEYCODE_F4 KEYCODE_F5 KEYCODE_F6 KEYCODE_F7 KEYCODE_F8 KEYCODE_F9 KEYCODE_F10 KEYCODE_F11 KEYCODE_F12 Text keys: KEYCODE_1 KEYCODE_2 KEYCODE_3 KEYCODE_4 KEYCODE_5 KEYCODE_6 KEYCODE_7 KEYCODE_8 KEYCODE_9 KEYCODE_0 KEYCODE_A KEYCODE_B KEYCODE_C KEYCODE_D KEYCODE_E KEYCODE_F KEYCODE_G KEYCODE_H KEYCODE_I KEYCODE_J KEYCODE_K KEYCODE_L KEYCODE_M KEYCODE_N KEYCODE_O KEYCODE_P KEYCODE_Q KEYCODE_R KEYCODE_S KEYCODE_T KEYCODE_U KEYCODE_V KEYCODE_W KEYCODE_X KEYCODE_Y KEYCODE_Z KEYCODE_COMMA KEYCODE_PERIOD KEYCODE_MINUS KEYCODE_EQUAL KEYCODE_BACKSLASH Punctuation keys: KEYCODE_SQBRAK_LEFT KEYCODE_SQBRAK_RIGHT KEYCODE_SLASH
With this file you will be able to print The Knob - Micro USB Media Controller (Digispark Arduino) with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on The Knob - Micro USB Media Controller (Digispark Arduino).