Minimalistic Media Dial
thingiverse
One more media control knob, it does exactly the same as every other one does :P. I got motivated to design my own after seeing the oversized media knob Prusa released just a few days ago (https://blog.prusaprinters.org/3d-print-an-oversized-media-control-volume-knob-arduino-basics/). So I took my take on the design as well. The Prusa media knob is a very fun and cool project, and as soon as I printed one I just wanted to make it feel more stable and put everything in its place. I used whatever I had laying around to come up with a way to do that, and I ended up using a bicycle spoke wrench as a weight and a rubber sealing (used in plumbing) as an anti-slip bottom surface. The result has a smaller footprint, it feels as heavy as I want it to be, and the board is fixed in place. When I have time I may make a second version with 2 or 3 buttons at the bottom static part, just to assign more actions. You can follow the wiring and use the code of the Prusa project. The source code in the files of this project only works on Windows since it uses the surface dial API. But the libraries used are exactly the same as the original project (Prusa). My code is not optimized and needs tweaking, but it's a good starting point and it mostly works. The pin assignment in this code is not the same as the Prusa project. Of course, the weight and the rubber pad/ring are optional and not required for the knob operation; they just help to provide a better feeling while using it. For reference, I included a BOM. Important notice: the encoder's dimensions have to be one with 15mm shaft and max 13x13mm dimensions on XY, otherwise it won't fit.
With this file you will be able to print Minimalistic Media Dial 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 Minimalistic Media Dial.