Skip to content

marcuslechner/Lechnology-Smart_RGB_Laptop_Cooling_Dock

Repository files navigation

Lechnology Smart RGB Laptop Cooling Dock

An open-source, smart, RGB laptop cooling dock engineered from the ground up with 3D-printed components, a custom-designed PCB, and embedded C firmware on an STM32 Microcontroller. It features PID-controlled fan speed regulation based on real-time temperature sensing, ensuring optimal cooling performance. With individually addressable RGB lighting, tactile rotary encoder input, and an OLED display interface, this dock balances function and flair for any gaming or productivity setup.

📦 Proudly sponsored by PCBWay — all PCBs in this project were professionally fabricated through their prototyping service.


🎥 Design and Build Video

📺 Click below to watch the full project video on YouTube Watch on YouTube

Watch on YouTube
GitHub Stars


🔧 Features

  • 🌬️ PID-Controlled Dual Fan System — Intelligent fan speed adjustment using a PID algorithm for stable thermal regulation
  • 🌡️ Temperature Monitoring — Real-time temperature sensing feeds the PID loop for adaptive cooling
  • 💡 RGB Illumination — Individually addressable WS2812B LEDs with programmable visual effects
  • 🌀 Custom PCB — Professionally designed circuit board integrating power regulation, sensors, encoder, and display
  • 🔁 Rotary Encoder Input — Allows cycling between lighting modes, adjusting target temperature, or manual override
  • 📟 OLED Display — Shows current temperature, fan speed, and system status
  • 🧠 STM32F103C8 MCU — Affordable 32-bit microcontroller running robust, well-structured embedded firmware
  • 🧱 3D-Printed Enclosure — Custom-designed chassis optimized for airflow, electronics mounting, and cable routing

🧰 Bill of Materials

Category Item
Microcontroller STM32F103C8T6
Cooling Computer Fans
Lighting WS2812B RGB LED Strip
Input Rotary Encoder
Display OLED Screen
Power Reg. Buck-Boost Converter
Sensors Temperature Sensor
Housing 3D Printed (PLA)
Fastening Heat Inserts

🖨️ Mechanical Design

All mechanical parts were modeled in SolidWorks and 3D printed on an Ender 3.
🔗 Thingiverse Model Files


📡 Circuit Design & PCB

Schematics and PCB were designed in KiCad, and manufactured via PCBWay.

🧾 Get $5 off your first order at PCBWay:
👉 https://pcbway.com/g/QN1n73
📄 Public PCB project link


🧠 Firmware Overview

The embedded control firmware is written in C and built with STM32CubeIDE, running on the STM32F103C8T6 microcontroller. It includes:

  • PID Temperature Control Loop: A closed-loop control system that modulates fan speed based on measured temperature vs. target setpoint (in progress)
  • I²C OLED UI Module: Live system readouts including temp, PWM duty, and user settings
  • Rotary Encoder with Debounce: Interrupt-driven input for precise user interactions
  • WS2812B LED Control: Uses DMA and timer peripherals to generate precise LED signal without CPU-intensive bit-banging
  • BME280 Sensor via I²C: Interfaces with an external BME280 sensor to measure ambient temperature (and optionally humidity/pressure)
  • Modular Code Structure: Organized into reusable drivers and logic layers for easy expansion

🎯 Source code is modular and documented in the /Core folder.


🚀 Getting Started

  1. Clone the repo:

    git clone https://github.com/marcuslechner/Lechnology-Smart_RGB_Laptop_Cooling_Dock.git
  2. Open the .ioc file in STM32CubeIDE

  3. Compile and flash the firmware using a ST-Link or USB-UART bootloader


📜 License

This project is licensed under the Lechnology Non-Commercial MIT + Beerware License:

If you use this and we meet in person, you're invited to buy me a coffee or beer ☕🍺
Commercial use is prohibited without prior approval.

See LICENSE.md for full terms.


❤️ Support the Channel

Using these links helps support Lechnology Engineering at no cost to you:

🛠️ Recommended Tools
🔌 Electronics Kits
🎥 More Projects on YouTube

About

A 3D-printed laptop cooling stand with STM32-based PID fan control, RGB lighting, OLED display, and rotary encoder UI.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages