Project in progress
LulzBot Mini 2 – Fan and Lighting Controller

LulzBot Mini 2 – Fan and Lighting Controller © MIT

Lulzbot Mini 2 3D printer fan and LED lighting control using a Nextion HMI display, Arduino and ultra quiet Noctua fan.

  • 1 respect

Components and supplies

Necessary tools and machines

Apps and online services

About this project

I was so impressed with my Lulzbot Mini 1, that I decided to buy a Mini 2.  Holding true to my mantra, whenever I get a new toy, I can’t leave well enough alone.   So, I decided to re-create my original Mini 1 custom fan and lighting controller with some tweaks and enhancements for my new Mini 2.  Two key drivers were to a) reduce fan noise, and b) add lighting with control.

As this is an ongoing project, check out my blog @ for the latest updates.

How it works:

The brain is an Arduino Nano MCU, with Nextion HMI touch screen as an interface, 2 LM35 temperature sensors, a 12V Noctua quiet fan with RPM measurement and 12V LEDs.    video below)

Although the Mini 2 made great strides over the Mini 1 in the noise category (the new stepper drivers make a huge difference), both the case and extruder fans are still noisy.  On power up the stock case fan is already noisy. Once printing starts it pretty much hits 100% and is on for the duration of the print. So, it had to go. The Nano monitors the temperature of the Eisny and dynamically adjusts the fan speed based on the driver temperature.

One temperature sensor is mounted to the Y axis driver chip. There is no need to monitor the other axis as the Z driver barely gets warm and the X is much the same as Y.  The other temperature sensor monitors the CPU of the Raspberry Pi running OctoPrint.   The controller only uses the Mini 2 temperature reading to dynamically control the case fan as that is what counts (and because the Pi is outside). However, an alarm will trigger if either temperature reading goes too high.  Tapping the Einsy range meter on the screen will also trigger the case fan to go high. Tapping again turns it back to automatic mode. Have a look at the videos to see it in action.

Noise Comparison:

These Noctua fans are worth every penny. As can be seen with the sound meter measurements, there’s a significant drop in noise generated by the case fan. Both in idle mode (~35%) and full on.  Also, the fan seldom even hits 100% and tends to stay around 65% as the chips don’t get that hot.   It is also sufficient to keep the rest of the components in the case cool.

LED Lighting Control:

The unit also controls the LED lights (2 x 12V) mounted to the printer.  Tapping the LED range meter to the right will trigger from High > Medium > Low > Off modes.  By default, the LEDs start high when the printer powers up.


I like to keep my projects as “un-integrated” as possible. Particularly in this case as I don’t want to introduce interference to the Einsy board which could cause issues printing.   It also reduces the risk of frying something on the printer which can be costly.  This entire until only has tie-in to the 24V power of the Mini 2.  I’m not using any power or fan pins from the Einsy.  The fan also comes on by default and based on the way the transistor is configured, the fan takes full (12V) power from the power supply regardless if the Nano is working or not.  Essentially, the Nano pulls the transistor base pin Low once powered, else it’s High. So, if the Nano fails, the fan is still cooling the case area.

End Result:

Adding the Noctua fan is a significant improvement in silencing the Mini 2 even more than it’s stock configuration.  However, one caveat is the fan on the Aerostruder is now more noticeable.  That said, it’s manageable and easier to get used to having only one fan making some noise.  Of course the LED control is more of a requirement than a nice-to-have.  I was also able to re-use all the parts from the original build on my Mini 1. I had the Nextion kicking around, so cost was only my time.  You can build this for less than $60 CAD with the bulk of the cost being the Nextion and the Noctua fan.  If you haven’t played around with the Nextion, have a look around my blog for tips and information on the Nextion HMI display. They are powerful and fairly easy to get the hang of.  I use them for all my builds now.

Want to build it?

Wiring it up:


D6 Fan PWM Control Fan 12V / GND to power supply D2 Fan Hall Sensor   A1 Pi LM35 Out Pin LM 35 5V & GND A2 Mini LM35 Out Pin LM 35 5V & GND   LED signal pin LED’s Transistor to 12V / GND power supply D7 Beeper pin Beeper GND D2 RXD To Nextion TX   D8 To Nextion RX Nextion 5V/GND to power supply


Coming soon.  I have to squash some bugs.

Build Pictures:

3D Printing, LulzBot, Nextion

COVID-19 Daily Stats on a Nextion HMI using ESP8266

Nextion TFT LCD – Why you need one!

WIoT-2 Weather and Home Automation – Nextion with ESP8266/ESP32


Lulzbot Mini 2 Fan & LED Controller
Fancontroller v2 bb 1024x613 bhbnxzkfsh


Similar projects you might like

LulzBot Mini: Arduino Temp Monitor/Fan Controller

Project showcase by

  • 1 comment
  • 8 respects

Make a Fan Controller with Arduino

Project tutorial by Monstermotte

  • 1 comment
  • 8 respects

PWN Fan controller with temp sensing and button override

Project in progress by KaptenJansson

  • 13 respects

ATtiny85 Mini Arcade: Snake

Project tutorial by Arduino “having11” Guy

  • 23 respects

3D Printer Power Controller and Fault Monitor

Project in progress by Colin Russell-Conway

  • 7 respects

MK2 Plus Robot Arm Controller

Project tutorial by Samira Peiris

  • 37 respects
Add projectSign up / Login