Introduction: Deepcool Castle AIO RGB Arduino Controller

I found out too late that my motherboard did not have an addressable rgb header so I improvised using similar tutorials. This tutorial is mainly for someone with Deepcool Castle AIOs but may be applicable to other pc rgb hardware.

DISCLAIMER: I tried to be as explicit as I could with my directions, but I am not liable for any damage you may inflict on your computer, Arduino, or anything else while following this tutorial. I believe anyone with basic knowledge of electronics and electrical safety should be able to follow this tutorial without any issues, but that is just my belief.


  • Arduino (An off-brand nano like this is cheap and will work perfectly, but any Arduino should be fine.)
  • A case for your Arduino.
  • USB cable with data (Make sure it works for your Arduino)
  • Supplies for making custom cables (Jumper wires and headers can be used but will not look as clean.)
    • DuPont connectors
    • 24-28 awg wire
    • Wire strippers and crimpers (alternatively pliers)

Step 1: Download Arduino IDE

Download the Arduino IDE and install the FastLED library by going to:

Sketch -> Include Library -> Manage Libraries...

I already have the library installed so I cannot reinstall it, but normally an install button would show up when you hover over the FastLED library.

Step 2: Download Sketch and Upload It to the Arduino

Download DeepCool_RGB.ino and open it with the IDE. I have written a few basic patterns for the LEDs and set them to randomly display on a loop.

Connect the Arduino to your computer using the USB cable. Open the tools menu and make sure you have selected your Arduino board. If you do not have a port selected, hover over port. Unless you have other serial devices connected, your Arduino should be the only port available. Upload the sketch.

Once the code is done uploading, unplug the Arduino from your computer.

Step 3: Making the VDG Cable

The AIO came with a vdg connector. I used the Gigabyte connector and made a custom 3 pin male-male cable. The Gigabyte connector denotes the V, D, and G pins. You will need to connect the following pins on your Arduino:

V -> 5V

D -> D7 (I choose digital pin 7 but you can choose any digital pin as long as you define it in the sketch)

G -> GND

I have included a picture of my cable plugged into my Arduino Uno and the VDG connector.

Male jumper wires can be used instead of a custom cable.

Step 4: Connecting the USB to the Computer

For a clean installation, I recommend using one of your motherboard's internal USB 2.0 headers to connect to the Arduino. You can continue to use one of the exterior USB ports, but it will not look as clean. I cut my Arduino's usb cable and replaced the type a connector with a 2x5 DuPont connector. USB convention goes red (5v), White (D+), Green (D-), and Black (Gnd). You only need a 4 pin connector but I found the 2x5 was easier to plug in correctly. I used a 3D pen to fill the top left pin of the DuPont connector to make the connector directional like most motherboard USB connectors.

Step 5: Connect the Cables

Make sure your computer is turned off and unplugged.

Plug the usb connector into the motherboard connector and the Arduino. Connect the VDG cable to the Arduino using the cable you made or the jumpers.

Make sure the pins of your Arduino are not making contact with the case or any electrical components in your computer. I recommend buying or 3d printing a case for your Arduino.

Step 6: Turn on Your Computer and Enjoy!

You should still be able to upload new sketches with the Arduino IDE.