Introduction: Neo Desktop Fan

About: Electronics | Maker | Hardware | DIY | Open-source 🚀

PC fans are always stylish, adding beauty to the desktop PC while enhancing aesthetics and setting the ambiance for gaming, design etc., Recently, I purchased a few fans for my PC, and with one extra fan on hand, I decided to create a simple fan setup that would look cool on my desktop and add to the overall ambiance.

This desktop fan, along with a dust filter and fan grill, can also be utilized as an air filter on the desk or a fume extractor at workstation.

Supplies

Electronics

  1. 120mm fan with RGB LEDs - link
  2. RP2040 XIAO module - link
  3. Boost converter module - link
  4. Rocker switch - link
  5. SPST push button - link
  6. USB Power Brick - 1 (5V, 1.5A min)
  7. Wires - 26 AWG (Power) and 30 AWG (Signals)


Mechanical

  1. M3 bolt x 10mm - 14
  2. M3 Hex Nut - 4
  3. M3 Dome Nut - 4
  4. M3 Brass Inserts - 6
  5. 120mm fan filter cover - 1 link
  6. White sticker paper 5mm x 200 mm - 2


3D printed parts

  1. Fan Holder Frame and Bracket - 1
  2. Headphone Stand - 1 Thingiverse
  3. Enclosure -1
  4. PCB holder - 1
  5. 120mm Fan grill - (optional) Thingiverse



Tools:

  1. Arduino IDE
  2. Soldering Iron
  3. Scissors, Knife, Ruler
  4. Insulation Tape, Screwdriver

Step 1: Inspiration

Credits: Daniel W | MakerBot

Both are great designs!!

Step 2: 3D Print Parts


Print config: Medium/High Quality with 60% infill for better results

Material: PLA

Install Brass inserts to the enclosure(4x) and bracket(2x) with soldering iron of temperature around 220 C

Step 3: 120mm Fan Details & Pinout

Prizm 120 ARGB fan has 2 sets of ribbon cables coming out,

Fan operates on DC 12V and LED on DC 5V supply

  • 4-pin cable: FAN control

white stripped wire is Ground of the fan and the next to it is +12V

  • 3-pin cable: RGB LED control

white stripped wire is +5V of the LED and the next to it is DATA IN and Ground

There are 18 RGB LEDs in the RING - WS2812B

Step 4: Electronics

Plan is to operate the setup with USB TYPE-C (5V) input power, since the fan requires 12V, a boost converter is used to step UP the voltage from 5V to 12V

Rocker switch to control the power supply of the fan and RGB LED strip

Push button to change the LED strip color, 10K series resistor is used with push button and connected to P3

Data pin of the LED strip is connected to P4

USB Power Consumption: 5V and approx. 700 to 900 mA

Step 5: Soldering and Wiring

Solder the setup based on the electrical diagram

Place the XIAO microcontroller module in the socket of the enclosure

Close it with 3D printed PCB holder to secure it from moving with 2 x M3 bolt

Add a piece of insulation tape around the Boost module to avoid any electrical short during the final assembly

Step 6: Arduino Program

Arduino program is a slightly modified example code "buttonCycler" from Adafruit NeoPixel library

Modify the pin assignment as per the electrical diagram

  • Button PIN as 3
  • PIXEL PIN as 4
  • PIXEL COUNT 18
  • BRIGHTNESS
  • 0 - 0%
  • 255 - 100%

Upload the code with rocker power switch OFF (Since the fan consumes more current, few PC USB ports cannot deliver the current)

Unplug from PC, connect to USB power brick and power ON to test the code

Step 7: Final Assembly

4 x M3 Bolts are used with M3 Dome nuts to hold the filter and grill/mesh

FAN is attached to the Bracket with 4 x M3 bolts and Hex nuts

Two white stripes of sticker is used for aesthetics on the enclosure

Attach the frame to the enclosure with 2 x M3 bolts

Bracket is attached to the frame with 2 x M3 bolts in the sides

Setup frame is hung on the headphone stand similar to a headphone 🎧, USB-C is connected in the back

FAN can be flipped direction 🔃 to change the air flow direction by flipping the fan and 90 deg to the bracket

Step 8: Here It Is..

Wrapping it up!

Hope you enjoyed the project ,

Thank you and happy making! 🚀

Instagram: @ideazero_

Step 9: P.S.