DIY USB Media Controller for PC

Introduction: DIY USB Media Controller for PC

About: Hello, I'm Ak in my page you can see some creative DIY projects, Tutorials and more technical stuff. Please follow my page for regular updates.

Hello Everyone,

Today I am going to show you how to make DIY USB Media Controller for PC using the Arduino Pro Micro / Leonardo.

Using this you can control the "Volume up, Down, Mute, Pause, Play, Next and Pervious" Midea key functions.

This controller will also show the volume level in the 16bit WS2812B ARGB LED Ring / Neopixel Ring,

Also check out my YouTube channel and Subscribe for more projects,

Kindly subscribe Support me to reach 1000 Subscribers in my youtube channel.

Step 1: Materials Used

1. Arduino Pro Micro ATmega32U4 5V/16MHz

2. Ws2812B Addressable 5050 RGB LEB Ring 16 Bit / RGB LED NeoPixel Ring 16Bit (4.8 mm Diameter)

3. 360 Degrees Rotary Encoder Module For Arduino KY-040

4. Rotary Encoder Potentiometer Knob

5. Junction box ABS plastic box

6. TTP223 Touch Switch Module

Step 2:

Step 3: Circuit Diagram

Step 4: CODE

Download the .ino code file below and open it in Arduino


Before compiling the code make sure you have HID and FastLED Library installed

This program works only with Arduino Pro Micro ATmega32U4 5V/16MHz don’t try with any other Arduino Micro controller like UNO.

Check out my Youtube video for detailed instructions.

Update : 12/25/2022 - I have been receiving more feedback on reversed LED direction for Volume control, So i have added another code, if you face that issue Use the USB_Media_Controller_Reverse.ino file

Note : Use only if you face this reversed animation issue for volume control.

Thank you all for your feedback and support.

Step 5:

Be the First to Share


    • Make It Bridge

      Make It Bridge
    • For the Home Contest

      For the Home Contest
    • Game Design: Student Design Challenge

      Game Design: Student Design Challenge



    1 year ago

    Can I use Potentiometer instead of KY-04 encoder
    I have 1kohm Pot CPP-045 as per specs, if I apply more than 1ma the potentiometer will burnout,
    please check above pics

    thank you.


    1 year ago

    Thank you so much for you feedback, I also thought about the long press feature but i don't want to do a mess with interrupts in code, That's why i didint include that.


    Question 2 years ago

    First i just want to say this is exactly what i was looking for. All the usb volume control knobs that are for sale do not even come close to this project, thank you.

    I do have a question though.
    Have you ever thought of adding a long press feature to the buttons?

    And a suggestion.
    I Just recently made one but i did run into some small issues with the enclosure and ring size.
    I did find an identical one that was slightly larger @ 95*55*23mm vs the one that is linked @ 80*50*19mm .

    The larger box is sold by the same aliexpress vendor that you link to.
    Once i get the new box ill post some pics of the small and larger enclosures.

    Thanks again.