{"id":286,"date":"2010-11-15T21:24:47","date_gmt":"2010-11-15T19:24:47","guid":{"rendered":"http:\/\/www.contrabyte.de\/de\/?page_id=286"},"modified":"2022-04-01T15:32:21","modified_gmt":"2022-04-01T13:32:21","slug":"pwm-fan-controller","status":"publish","type":"page","link":"http:\/\/www.contrabyte.de\/de\/?page_id=286","title":{"rendered":"PWM Fan Controller"},"content":{"rendered":"<p style=\"text-align: center;\"><em>8-Channel, 8-Bit, Hi-Speed, Software PWM with ATmega AVR-Controller!<\/em><\/p>\n<p>On this page, an innovative technical solution is presented, which allows for a cost-effective, convenient, flexible and professional approach to cool the PC.<\/p>\n<p>Using clever and unique firmware, I have succeeded in implementing a full-featured 8-channel PWM controller with a simple ATmega microcontroller using software.<\/p>\n<p>An 8-bit AVR from Atmel and a 16 MHz clock can achieve the following results:<\/p>\n<ul>\n<li>PWM frequency: 20,833 kHz<\/li>\n<li>Control range: 25% to 100%<\/li>\n<li>Resolution: 8 Bit (256 steps)<\/li>\n<li>PWM channels: 8<\/li>\n<li>Jitter: 0 % (100 % stable signal)<\/li>\n<li>Delay of the control value: ca. 500 \u00b5s<br>\n(one control value can be applied to several channels simultaneously)<\/li>\n<\/ul>\n<p>This would fulfill the prerequisites for the performance of the PWM specifications.<\/p>\n\n<style>.wp-show-posts-columns#wpsp-422 {margin-left: -2em; }.wp-show-posts-columns#wpsp-422 .wp-show-posts-inner {margin: 0 0 2em 2em; }<\/style><section id=\"wpsp-422\" class=\" wp-show-posts\" style=\"\"><article class=\" wp-show-posts-single wpsp-clearfix post-290 post type-post status-publish format-standard hentry category-projects category-pwm-fan-controller\" itemtype=\"http:\/\/schema.org\/CreativeWork\" itemscope><div class=\"wp-show-posts-inner\" style=\"\">\t\t\t\t\t\t<header class=\"wp-show-posts-entry-header\">\n\t\t\t\t\t\t\t<h2 class=\"wp-show-posts-entry-title\" itemprop=\"headline\"><a href=\"http:\/\/www.contrabyte.de\/de\/?p=290\" rel=\"bookmark\">Intent<\/a><\/h2>\t\t\t\t\t\t<\/header><!-- .entry-header -->\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wp-show-posts-entry-content\" itemprop=\"text\">\n\t\t\t\t\t\t\tMy computer has a spacious housing which houses 8 hard drives, 2 optical drives, 2 core processors, performance-hungry graphics card and a DVB-S tuner card. In order to cool everything, many fans are installed:\r\n<ul>\r\n\t<li>2 x 120mm housing fans (above and behind)<\/li>\r\n\t<li>2 x 120mm hard drive \/ housing fans in front<\/li>\r\n\t<li>1 x 100mm CPU fan<\/li>\r\n\t<li>1 x 80mm Graphic card air supply<\/li>\r\n\t<li>2 x graphic card- and power supply- specific fans<\/li>\r\n<\/ul>\r\nThe graphic card and power supply control their fans autonomously. The motherboard can control only one connection &#8211; the processor fan. And the other 5 run unregulated and cause unnecessarily too much noise. The attempt to procure an additional fan control failed miserably. No PWM-capable fan with sufficient connections could be found. So I made one myself&#8230;\t\t\t\t\t\t<\/div><!-- .entry-content -->\n\t\t\t\t\t<\/div><!-- wp-show-posts-inner --><div class=\"wpsp-clear\"><\/div><\/article><article class=\" wp-show-posts-single wpsp-clearfix post-292 post type-post status-publish format-standard hentry category-projects category-pwm-fan-controller\" itemtype=\"http:\/\/schema.org\/CreativeWork\" itemscope><div class=\"wp-show-posts-inner\" style=\"\">\t\t\t\t\t\t<header class=\"wp-show-posts-entry-header\">\n\t\t\t\t\t\t\t<h2 class=\"wp-show-posts-entry-title\" itemprop=\"headline\"><a href=\"http:\/\/www.contrabyte.de\/de\/?p=292\" rel=\"bookmark\">The Implementation<\/a><\/h2>\t\t\t\t\t\t<\/header><!-- .entry-header -->\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wp-show-posts-entry-content\" itemprop=\"text\">\n\t\t\t\t\t\t\t<p>[This section will be revised, please be patient]<\/p>\n<p>A good fan controller should also monitor fan speed and temperature. With just a few simple standard components&#8230;<\/p>\n<p><div style=\"width: 554px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" title=\"Block diagram\" src=\"http:\/\/www.contrabyte.de\/de\/wp-content\/uploads\/images\/pwm3.png\" alt=\"Block diagram\" width=\"544\" height=\"393\" \/><p class=\"wp-caption-text\">Block diagram of the fan controller<\/p><\/div><\/p>\n<p>[This section will be revised, please be patient]<\/p>\n<p><div style=\"width: 554px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" title=\"Prototype\" src=\"http:\/\/www.contrabyte.de\/de\/wp-content\/uploads\/images\/main4+rs232-512x410.png\" alt=\"Prototype\" width=\"544\" height=\"393\" \/><p class=\"wp-caption-text\">Prototype of the fan controller<\/p><\/div><\/p>\n<p>[This section will be revised, please be patient]<\/p>\n\t\t\t\t\t\t<\/div><!-- .entry-content -->\n\t\t\t\t\t<\/div><!-- wp-show-posts-inner --><div class=\"wpsp-clear\"><\/div><\/article><article class=\" wp-show-posts-single wpsp-clearfix post-295 post type-post status-publish format-standard hentry category-projects category-pwm-fan-controller\" itemtype=\"http:\/\/schema.org\/CreativeWork\" itemscope><div class=\"wp-show-posts-inner\" style=\"\">\t\t\t\t\t\t<header class=\"wp-show-posts-entry-header\">\n\t\t\t\t\t\t\t<h2 class=\"wp-show-posts-entry-title\" itemprop=\"headline\"><a href=\"http:\/\/www.contrabyte.de\/de\/?p=295\" rel=\"bookmark\">The Firmware<\/a><\/h2>\t\t\t\t\t\t<\/header><!-- .entry-header -->\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wp-show-posts-entry-content\" itemprop=\"text\">\n\t\t\t\t\t\t\t<p>First and foremost, the firmware generates the PWM signal to the 8 outputs of a port. The control values are provided over the serial interface. In parallel, the firmware digitizes analog values periodically and sends them on to the PC. The tacho signal is also processed. Up to 8 temperature and 8 tachometer values per second can be transmitted. The status LED&#8217;s and the alarm sounder can also be controlled from the PC. In addition, the firmware can respond to requests of the Plug n &#8218;Play enumerator.<\/p>\n<p><div style=\"width: 410px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" title=\"Device manager\" src=\"http:\/\/www.contrabyte.de\/de\/wp-content\/uploads\/images\/DeviceManager2-cut.png\" alt=\"Device manager\" width=\"400\" height=\"200\" \/><p class=\"wp-caption-text\">Fan controller in device manager<\/p><\/div><\/p>\n\t\t\t\t\t\t<\/div><!-- .entry-content -->\n\t\t\t\t\t<\/div><!-- wp-show-posts-inner --><div class=\"wpsp-clear\"><\/div><\/article><article class=\" wp-show-posts-single wpsp-clearfix post-297 post type-post status-publish format-standard hentry category-projects category-pwm-fan-controller\" itemtype=\"http:\/\/schema.org\/CreativeWork\" itemscope><div class=\"wp-show-posts-inner\" style=\"\">\t\t\t\t\t\t<header class=\"wp-show-posts-entry-header\">\n\t\t\t\t\t\t\t<h2 class=\"wp-show-posts-entry-title\" itemprop=\"headline\"><a href=\"http:\/\/www.contrabyte.de\/de\/?p=297\" rel=\"bookmark\">The PC Software<\/a><\/h2>\t\t\t\t\t\t<\/header><!-- .entry-header -->\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wp-show-posts-entry-content\" itemprop=\"text\">\n\t\t\t\t\t\t\t<p>The program provides a graphical interface to configure the controller and to display the readings.<\/p>\n<p><div style=\"width: 695px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" title=\"Screenshot 1\" src=\"http:\/\/www.contrabyte.de\/de\/wp-content\/uploads\/images\/Software1.png\" alt=\"Screenshot 1\" width=\"685\" height=\"608\" \/><p class=\"wp-caption-text\">Program, screenshot 1<\/p><\/div><\/p>\n<p>The fans and the temperature sensors can be identified and activated when required. In the basic functionality, the speed of the fans can be individually adjusted with the sliders.<br \/>\nThe software gives audible and visual alarms if one of the activated fans should unexpectedly stop. The interruption of the connection to the controller is also signaled.<\/p>\n<p><div style=\"width: 410px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" title=\"Screenshot 2\" src=\"http:\/\/www.contrabyte.de\/de\/wp-content\/uploads\/images\/Warning1.png\" alt=\"Screenshot 2\" width=\"400\" height=\"200\" \/><p class=\"wp-caption-text\">Program, screenshot 2<\/p><\/div><\/p>\n<p><div style=\"width: 410px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" title=\"Screenshot 3\" src=\"http:\/\/www.contrabyte.de\/de\/wp-content\/uploads\/images\/Warning2.png\" alt=\"Screenshot 3\" width=\"400\" height=\"200\" \/><p class=\"wp-caption-text\">Program, screenshot 3<\/p><\/div><\/p>\n<p>An interface to the Everest software has been implemented in order to evaluate the temperatures of the processor, chipset, graphics card and other components equipped with sensors.<\/p>\n<p><div style=\"width: 542px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" title=\"Screenshot 4\" src=\"http:\/\/www.contrabyte.de\/de\/wp-content\/uploads\/images\/Software3.png\" alt=\"Screenshot 4\" width=\"532\" height=\"658\" \/><p class=\"wp-caption-text\">Program, screenshot 4<\/p><\/div><\/p>\n<p>This enables the program to centrally monitor the entire PC. In the professional version, an automatic fan control is integrated. This allows efficient and quiet cooling of the PC.<\/p>\n\t\t\t\t\t\t<\/div><!-- .entry-content -->\n\t\t\t\t\t<\/div><!-- wp-show-posts-inner --><div class=\"wpsp-clear\"><\/div><\/article><article class=\" wp-show-posts-single wpsp-clearfix post-301 post type-post status-publish format-standard hentry category-projects category-pwm-fan-controller\" itemtype=\"http:\/\/schema.org\/CreativeWork\" itemscope><div class=\"wp-show-posts-inner\" style=\"\">\t\t\t\t\t\t<header class=\"wp-show-posts-entry-header\">\n\t\t\t\t\t\t\t<h2 class=\"wp-show-posts-entry-title\" itemprop=\"headline\"><a href=\"http:\/\/www.contrabyte.de\/de\/?p=301\" rel=\"bookmark\">Summary<\/a><\/h2>\t\t\t\t\t\t<\/header><!-- .entry-header -->\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"wp-show-posts-entry-content\" itemprop=\"text\">\n\t\t\t\t\t\t\t<p>The advantages of the PWM control technique are undisputed. Good and cheap PWM-enabled fans are on the market. However, PC motherboards make insufficient use of the PWM technology. There are also hardly any PWM fan controllers for retrofitting available &#8211; especially with so many fan connectors.<br \/>\nThis simple and inexpensive hardware, in conjunction with the operational software is a professional cooling solution. Server-, gaming- and performance-computers and demanding or energy-conscious operators will be served well with this solution. Today&#8217;s computer technology uses power-hungry components, which master better and better power management. The growing split between full load and idle calls for efficient, flexible and quiet cooling. This fan controller could immediately and elegantly fill the existing market gap.<\/p>\n<p>I would like to market the technical innovation introduced here. Manufacturers, investors or others interested in the technology may contact me. The 8-channel software PWM algorithm might even be patentable. I am open to any suggestions for cooperation licensing, purchase or &#8230; and am happy to answer questions.<\/p>\n\t\t\t\t\t\t<\/div><!-- .entry-content -->\n\t\t\t\t\t<\/div><!-- wp-show-posts-inner --><div class=\"wpsp-clear\"><\/div><\/article><\/section><!-- .wp-show-posts -->\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>8-Channel, 8-Bit, Hi-Speed, Software PWM with ATmega AVR-Controller! On this page, an innovative technical solution is presented, which allows for a cost-effective, convenient, flexible and professional approach to cool the PC. Using clever and unique firmware, I have succeeded in implementing a full-featured 8-channel PWM <span class=\"more-button\"><a class=\"button-minimal\" href=\"http:\/\/www.contrabyte.de\/de\/?p=301\">Weiterlesen&#8230;<\/a><\/span><\/p>\n","protected":false},"author":2,"featured_media":0,"parent":282,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=\/wp\/v2\/pages\/286"}],"collection":[{"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=286"}],"version-history":[{"count":3,"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=\/wp\/v2\/pages\/286\/revisions"}],"predecessor-version":[{"id":425,"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=\/wp\/v2\/pages\/286\/revisions\/425"}],"up":[{"embeddable":true,"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=\/wp\/v2\/pages\/282"}],"wp:attachment":[{"href":"http:\/\/www.contrabyte.de\/de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=286"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}