Thermaltake Riing Fan Rewiring and Pinout

I needed a 120mm fan for my 3D Printer that I was messing around with and found some Thermaltake Riing Plus fans I had lying around, but I needed to control them via a standard fan header rather than using the special 9 pin plug they have. Here’s a quick run down to change the pins around to use it as a standard PC fan, as well as how to wire up the LEDs to work with WLED (on an ESP8266/ESP32), Marlin on an Ender 3 (SKR Mini E3 V1.2) or to a 5V Motherboard RGB header.

About the Fan

The fan I have is a Thermaltake TT-1225 – It’s a DC Brushless 12V fan that uses up to 0.7Amps. It has a 9 pin connector on it (two rows, one for the fan, one for the RGB).
It has 12 LEDs around the outside that use 0.425A on full white.
You’re supposed to use these with the Riing Plus Controller to control both the LEDs and the fan speeds – I wasn’t a huge fan of the software for this.

Thermaltake TT-1225 Fan

Fan Pinout

Here’s the image I found online that shows the pins.

One thing to note: “Data Return” is actually the “Data In” for your LEDs, you can use the Out to pass it on to another set of LEDs.

Here’s a diagram I made with the wire colours as well (the LED wires are all black with little white stripes on them – make sure you double check yours before you snip the plug off!)

Powering the Fan

This fan works as a 2, 3 or 4 pin fan depending on how many wires you hook up.

To use it on a PC, you’ll need to attach it to a PC fan plug – here’s the pinout for a 4 pin fan – https://allpinouts.org/pinouts/connectors/motherboards/motherboard-cpu-4-pin-fan/
And for a 3 pin fan: https://allpinouts.org/pinouts/connectors/motherboards/motherboard-cpu-3-pin-fan-connector/

My 3D Printer power supply has a 12v fan header with only 2 wires (12v and Ground) – but I used a buck converter to drop the voltage a little more to get it to run quieter – running the fan at 8v instead of 12v makes it pretty near silent.
Some 3D Printers will have 24v fans, so you need to check this first! If it has 24v, you’ll need a buck converter to drop it down to 12v.

Driving the LEDs

There’s 12xLEDs arranged in a ring around the fan. They need 5V to run and are in GRB order (Green/Red/Blue). Set to all white it consumes 0.425A (round that up to 0.6A to be safe!)
For comparison – A 5v Motherboard ARGB header usually has a maximum of 3A. My 3D Printer mainboard (SKR Mini E3 v1.2) supports 8 LEDs, or 30 with the DC power module (as per the manual here https://github.com/bigtreetech/BIGTREETECH-SKR-mini-E3/blob/master/hardware/BTT%20SKR%20MINI%20E3%20V1.2/The%20Notement%20of%20BTT%20SKR%20MINI%20E3%20V1.2.pdf – keep reading for a workaround) and see here for WLED – https://kno.wled.ge/advanced/wiring/.

Wiring for PC
The diagram above is pretty good for how to wire it up to your motherboard’s argb header – just be sure it’s the 5V one and not the 12v one!

Wiring for WLED
This one’s pretty easy too, Give it some juice and connect the data pin up, then in WLED set your settings to 12LEDs in GRB order and you’re set!

Wiring for my 3D Printer
I’ve got an Ender 3 Pro with an SKR Mini E3 V1.2 Mainboard – these notes should apply to any mainboard with a Neopixel port on it.
This one was a little more difficult as I needed to get 5v from somewhere that’s not my printers mainboard (due to current limits). I have a Buck converter with some power to spare that’s also running my Raspberry Pi, so I attached a couple wires there and used them to power the LEDs along with a wire from the middle (data) pin of the Neopixel plug on my printer mainboard.

You’ll also need to compile Marlin with Neopixel support for this to work! Here’s a video that goes through compiling custom firmware for the SKR Mini – https://youtu.be/Vn5rMdJgkAI

The main settings I changed were (do a search for these options and look at the other options around it to see if you want to adjust anything else there)
In Configuration.h (To enable Neopixel LEDs)

#define NEOPIXEL_LED

#define NEOPIXEL_TYPE          NEO_GRB

#define NEOPIXEL_PIXELS              12

And in Configuration_adv.h (To let you control them from the screen on the printer)

#define LED_CONTROL_MENU

If this helped you, leave a comment below and let me know how you went

Leave a Reply