Premiere Pro Edit Dial Controller (Seek / Play / Pause) ($6 DIY)




About: Hi, I'm Eunchan Park from S.Korea. I have 3 missions Making Happy Things, Sharing How To Make Happy Things, Copying Happy Things Maker for the world's Happiness In order to pursue my mission, I have a big go...


new version is here!!

I’m really into making Youtube videos for Instructables. Sometimes it is hard to rewind the moment I wanted pause. So, I thought it would be nice if I had a dial for it.

[ Instruction ]


Source Code

3D Printing File

[ About the maker ]

Youtube Channel

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Preparing Materials and Tools

[3d printing]

[ Parts ]

[ Tools ]

Step 2: Assemble the Encoder and the Arduino

The very first step is soldering.

This weird connection shows that I didn’t want to use any wires for soldering it at all.

I used digital output for giving ground and 5v.

It works well!

Step 3: Solder 5 Pins. It Is All!

Solder all 5 pins.

it is very easy.

Step 4: Put the Circuit Board Into the Drum Frame.

There is vertical hole on the side wall.

It is for usb terminal

Step 5: Fasten It

I uploaded a nut shape model on the thingiverse just in case you don’t have a proper size of nuts.

(Using a M7 nut is better way.)

Step 6: Glue It (Optional)

If you want to fix it completely, glue it.

Step 7: Put Coins Into the Bottom Frame

Put 4 quarter into the bottom frame for making it heavy.

Step 8: Assemble Them Together

Step 9: Assemble the Dial Knob

Put the dial into the frame or you can use other knobs for it.

You can use other knobs (I prefer smaller one)

Step 10: Download the Source Code From Github

just in case, here is code

#include "Keyboard.h"

#define OUTPUT_B 15 #define OUTPUT_A A0 #define BUTTON A1 #define PIN_5V A2 #define PIN_GND A3

bool aState; bool aLastState; int lastButtonState = 0;

void setup() {



pinMode(PIN_5V, OUTPUT); pinMode(PIN_GND, OUTPUT); digitalWrite(PIN_5V, HIGH); digitalWrite(PIN_GND, LOW);


aLastState = digitalRead(OUTPUT_A); } bool count = 0; bool keyFlag = false; long lastClickTime = 0; long lastRotateTime = 0;

void loop() {

if (millis() - lastClickTime > 1000) { aState = digitalRead(OUTPUT_A); if (aState != aLastState) { if (digitalRead(OUTPUT_B) != aState) {; } else {; } Keyboard.releaseAll(); aLastState = aState; }

if (digitalRead(BUTTON) == LOW) { if (lastButtonState == HIGH) { Keyboard.print(" "); lastClickTime = millis(); } lastButtonState = LOW; } else { lastButtonState = HIGH; } }


Step 11: Plug USB Cable

Meanwhile, plug usb cable into your arduino board and your PC.

if you didn’t install the arduino IDE, please install it.

Step 12: Select Leonardo

Select Arduino Leonardo in the Tool bar - Board - Arduino Leonardo

Step 13: Select Com Port

And Select the Communication Port which is in Tool - Port.

You can see the new port when you plug your Arduino to your pc

Step 14: Upload

Now, Hit the upload button

Step 15: Confirm "Done Uploading"

If you can see “Done uploading” text, it means done.

Step 16: Congratulations! DONE!

It has a click switch.

Everytime you click it, the arduino sends a space text.

So, you can make the premiere pro play and pause.

I think you guys have been suffered from this situation.

For example, I wanted to pause when the scene is changed.

But I cannot stop it immediately, So, I had no choice but to seek it by clicking here and there.

Now with this dial, I am able to seek it way better than ever.

Be the First to Share


    • Made with Math Contest

      Made with Math Contest
    • Multi-Discipline Contest

      Multi-Discipline Contest
    • Robotics Contest

      Robotics Contest

    11 Discussions


    8 months ago

    Is it possible to add this dial to tweak lumetri color sliders like exposure, highlights, shadows etc? If so is there a way to add many dials under a single usb cable to make a board of dials for color grading purposes?

    1 reply

    Reply 8 months ago

    1. we can make 2 or more dials on the same board.
    2. color sliders and some specific purpose is somehow difficult at this stage. Because this only send arrow keyboard signal such as up and down.

    Hi again, I made and uploaded the source code for Vegas. It will be working well. when I rotate it counter clock wise, it press Alt+Left arrow. when counter wise, Alt+right arrow. :)

    Thank you a lot!! You are the best!!!

    Also one more question, can i use arduino nano instead of leonardo?

    You are welcome, unfortunately, nano is not support it as far as I know. even though it is possible, it could be more complex and difficult than using arduino micro.

    Thanks for your comment! I hope this instruction helps.

    If you have any question, please let me know, I will do my best for it :)