The ADT7470 controller is a multichannel temperature sensor and PWM fan controller and fan speed monitor for noisesensitive systems requiring active system cooling. It is designed to interface directly to an I2C bus and control and monitor the fans using a ser vice processor. The aim is to quickly develop systems that are modular and can easily be expanded depending on the system's cooling requirements. The device can monitor up to 10 temperature sensors. It can also monitor and control the speed of four fans so that they operate at the lowest possible speed for minimum acoustic noise. A FULL_SPEED input is provided to allow the fans to be "blasted" to PWMMAX, via external hardware control, under extreme thermal conditions or on system startup. An SMBALERT interrupt communicates error conditions such as fan underspeed and fan failure to the system service processor. Individual error conditions can then be read from status registers over the I2C bus. In the event of a fan failure condition, any or all PWM outputs can be programmed to automatically adjust to PWMMAX to provide fail-safe cooling.