Difference between revisions of "TinyFan"

From Aus3D Wiki
Jump to navigation Jump to search
(Initial Page)
 
(Added Firmware Details, Troubleshooting)
Line 19: Line 19:


== Firmware Modification ==
== Firmware Modification ==
To do
Here's a quick guide on modifying Marlin to run attached fans.
 
First off, you should figure out how you want these fans to be controlled. By default, Marlin supports a print fan which is controlled by M106 and M107 - this is the fan that your slicing software usually controls to cool the print, and on RAMPS this fan is usually connected through the MOSFET on D9. If you're running a dual-extruder setup, you've lost this fan output and probably want to get it back. Let's do this!
 
Navigate to and open the pins.h file. Look for the section titled "Arduino Mega Pin Assignment" - specifically, the part shown below:
 
#if MB(RAMPS_13_EFB) || MB(RAMPS_13_EFF) || MB(AZTEEG_X3) || MB(AZTEEG_X3_PRO)
    #define FAN_PIN            9 // (Sprinter config)
#else
    #define FAN_PIN            4 // IO pin. Buffer needed  '''<- Change this pin to match TinyFan. Either 11 (output 1) or 6 (output 2).'''
#endif
 
Change #define FAN_PIN to either 6 or 11, depending on which output you want to use on TinyFan. This assumes that you've defined your RAMPS board as RAMPS_13_EEB (Extruder, Extruder, Bed) in Marlin's Configuartion.h. If you're not using this configuration, you may need to edit the other #define FAN_PIN line.
 
Now that this is done, you should upload the code and test your configuration. Sending M106 S255 to your printer should cause one of the LEDs to light up, indicating that fan output is switched on. If not, double check you're firmware settings, and check with the [Troubleshooting] section.
 
== Troubleshooting ==
Make sure power is connected via the screw terminals. Also make sure the polarity is correct - indicators are present on the board.


== Driving High-Power Devices ==
== Driving High-Power Devices ==

Revision as of 20:08, 29 August 2015

Introduction

TinyFan is a handy little board that attaches to RAMPS, and allows you to control an extra two fans. TinyFan is ideal for dual-extruder systems, when you've used up all RAMPS’s MOSFETs on your HotEnds but still need to get a few fans up and running.

We designed TinyFan to be as easy to use as possible – an onboard screw-terminal makes it easy to provide power, simply run a short set of wires to the main screw terminals on RAMPS.

TinyFan has two fan outputs – each with an indicator LED and flyback diode for protection when using larger fans. TinyFan can also be used to control LEDs, or even heating elements – we've used TinyFan to power a HotEnd cartridge! Check the specifications for recommended power ratings.

TinyFan plugs directly into the ‘Servos’ header on RAMPS, and any attached fans are controlled by pins D11 and D6. Most printer firmware supports using these pins to control fans – we've got details on modifying Marlin below.

Running a 24V printer? TinyFan can handle it, just make sure your fans can! TinyFan will run on an input from 5V-25V, and because it’s fully PWM-controllable, you can always run your attached fans at any voltage lower than the input – so you can use 12V fans with a 24V supply! Just make sure you limit the PWM value to 50% in firmware, and your fans will run happily!

Features

  • 2 PWM Controllable Channels (D6 and D11 on RAMPS)
  • Vin: 5-25V
  • Max. Current: 3.5A / channel
  • Flyback diode on each channel
  • Indicator LED for each channel
  • Dimensions: 15.5x15.5mm

Firmware Modification

Here's a quick guide on modifying Marlin to run attached fans.

First off, you should figure out how you want these fans to be controlled. By default, Marlin supports a print fan which is controlled by M106 and M107 - this is the fan that your slicing software usually controls to cool the print, and on RAMPS this fan is usually connected through the MOSFET on D9. If you're running a dual-extruder setup, you've lost this fan output and probably want to get it back. Let's do this!

Navigate to and open the pins.h file. Look for the section titled "Arduino Mega Pin Assignment" - specifically, the part shown below:

#if MB(RAMPS_13_EFB) || MB(RAMPS_13_EFF) || MB(AZTEEG_X3) || MB(AZTEEG_X3_PRO)
   #define FAN_PIN            9 // (Sprinter config)
#else
   #define FAN_PIN            4 // IO pin. Buffer needed  <- Change this pin to match TinyFan. Either 11 (output 1) or 6 (output 2).
#endif

Change #define FAN_PIN to either 6 or 11, depending on which output you want to use on TinyFan. This assumes that you've defined your RAMPS board as RAMPS_13_EEB (Extruder, Extruder, Bed) in Marlin's Configuartion.h. If you're not using this configuration, you may need to edit the other #define FAN_PIN line.

Now that this is done, you should upload the code and test your configuration. Sending M106 S255 to your printer should cause one of the LEDs to light up, indicating that fan output is switched on. If not, double check you're firmware settings, and check with the [Troubleshooting] section.

Troubleshooting

Make sure power is connected via the screw terminals. Also make sure the polarity is correct - indicators are present on the board.

Driving High-Power Devices

TinyFan wasn't designed to drive big loads - but provided you're reasonable it's surprising what it can do! We've successfully tested TinyFan powering a 12V 40W ceramic cartridge heater (the type typically used in HotEnds) without any signs of distress. If you use it for something unexpected or unusual, let us know!

TinyFan uses a MOSFET with a very low RDS(ON) value, which means it's pretty efficient at what it does - not a lot of energy is wasted as heat, which is nice. TinyFan should stay cool to warm under most loads - if it's become uncomfortable to touch, then you might be asking too much of it!

Source Files

TinyFan is open source hardware - all source files are available on GitHub under the GPLv3 License.

Purchase

TinyFan is available to purchase from the Aus3D store. As TinyFan is open-source, you might find it crop up elsewhere too!

Schematic / PCB

To do