SmartFan®Cirrus-6 Manual

I2C Interface Specification

SmartFan Cirrus-6 Fan Speed Control and Alarm for 4-Wire Fans: I2C Specification

I2C Specifications

  • The Bus supports seven-bit addressing and only acts as a slave device.
  • The address for the fan controller is 0001A2A1A0.
  • General call support is not provided.
  • The fan controller will stretch the clock further if needed. The I2C master must observe clock stretching.
  • The hardware register will support Standard Mode I2C with speeds up to 100 KHz, however, lower clock speeds are recommended for increased noise immunity.
  • If temperature control mode is disabled and I2C speed mode is used, then I2C communication must occur within ~2 minutes of the last communication, or there will be an I2C communication timeout error. When an I2C timeout occurs, full speed will be applied to the fans, and fan speed must be reset with a new speed command. Performing any valid I2C operation on either bus will clear the timeout condition and restart the watchdog timer.
  • Fan failure based on 2000 minimum PPM of fan in slow (default) mode or 4000 minimum PPM in fast mode. Fan failure is not updated when the output is set to 0%.
  • It is possible for noise to cause the I2C hardware to miss an address or data. In this case an Ack will not be generated. The production tester allows 3 errors to occur before marking the board as failing. Also during the EEPROM write cycle the I2C will not generate ACK signals as no more data can be accepted until the write cycle is complete. Typical write cycle is 8ms.

Table 3.0 defines the bits used in the serial bus protocol.

Write sequence

S A6 A5 A4 A3 A2 A1 A0 W Ack L7 L6 L5 L4 L3 L2 L1 L0 Ack D7 D6 D5 D4 D3 D2 D1 D0 Ack P

Read sequence

S A6 A5 A4 A3 A2 A1 A0 W Ack L7 L6 L5 L4 L3 L2 L1 L0 Ack P S A6 A5 A4 A3 A2 A1 A0 R Ack D7 D6 D5 D4 D3 D2 D1 D0 Ack P

Register Locations: L7-L0 Label (R/W) [initial condition]

Register 0×00 – 0xEF: Generic EEPROM storage (Read/Write) [undetermined]

Register 0xF0: Firmware Revision (Read only) [00:current rev]

Register 0xF1: Alarm0 Status (Read only) [0x00]

D0: Status of fan of 1 (0=no fault, 1= fault)
D1: Status of fan of 2 (0=no fault, 1= fault)
D2: Status of fan of 3 (0=no fault, 1= fault)
D3: Status of fan of 4 (0=no fault, 1= fault)
D4: Status of fan of 5 (0=no fault, 1= fault)
D5: Status of fan of 6 (0=no fault, 1= fault)
D6: Always 0
D7: Always 0

Register 0xF2: Alarm1 Status (Read only) [0x00]

D0: Always 0
D1-3: Always 0
D4: Status of speed override (0=normal, 1=100%)
D5: Status of on-board sensor (0=connected, 1= open)
D6: Status of external sensor (0=connected, 1=open)
D7: Status of controlling sensor (0=valid, 1=alarm)

Register 0xF3: Temperature (Read only) [1111 1111] on-board sensor

D0-7: Temperature from 0 – 70 in degrees C in 0.5 deg steps 0XFF = temperature not read yet or open (Temperatures above 70 are reported as 254)

Register 0xF4: Temperature (Read only) [1111 1111] external sensor

D0-7: Temperature from 0 – 70 in degrees C in 0.5 deg steps 0XFF = temperature not read yet or open (Temperatures above 70 are reported as 254)

Register 0xF5: Current Target Speed (Read only) [0001 0100]

D0-7: 0×14 = 100%, 0×00 = 0%C

(Commanded speed with alarm status override included)
(In temperature mode this register will read 0×14)

Register 0xF6: Current Speed (Read only) [0001 0100]

D0-7: 0×14 = 100%, 0×00 = 0%C

(What the actual current voltage is)
(In temperature mode this register will read 0×14)

D0-3: 0×14 = 100%, 0×00 = 0%

0×00 – 0×14 = 0 – 100 %, 5% per step
If set to 0xFF then temperature mode is enabled and I2C speed control disabled

Register 0xF8: Off Temperature (Read/Write) [1111 1111]

D0-7: Temperature from 0 – 70 in degrees C in 0.5 deg steps Temperature below which the controller turns off the fan output (0 VDC)

If set to 0xFF then function disabled

Register 0xF9: Control Temperature (Read/Write) [0101 0000]

D0-7: Temperature from 0 – 70 in degrees C in 0.5 deg steps

Full speed temperature, only used if Commanded Speed set to 0xFF.

Register 0xFA: Alarm Temperature (Read/Write) [1111 1111]

D0-7: Temperature from 0 – 70 in degrees C in 0.5 deg steps

Temperature above which the controller alarms
If set to 0xFF then function disabled

Register 0xFB: Config0 Register (Read/Write) [0011 1111]

D0-D5: 0=Mask, 1=Active for an Fan (J1-J6)
D6-D7: Not Used

Register 0xFC: Config1 Register (Read/Write) [0000 0000]

D0: Not Used
D1-4: Set to 0, may be set to 1 to allow system to indicate a fan controller reset.
D5: 0=5deg slope, 1=10 deg slope for temperature mode only
D6: 0=2000PPM tach, 1=4000PPM tach fan alarm speed
D7: 0=External, 1=On-board sensor selection for temperature mode only

Register 0xFD-0xFF: CRI Test Register (Reserved) [xxxx xxxx]

D0-7: Do not use

Note: If a fan failure occurs the Current Speed will be updated to full but the Commanded Speed will remain at its previous value. Once the failure clears the Current Speed will return to the Commanded Speed value. An I2C timeout changes BOTH the Current Speed and Commanded Speed to full. The Commanded Speed must be reset after a timeout. During the speed ramp the Current Speed will not match the Commanded Speed until the ramp completes.

ADDITIONAL MANUAL PAGESOperation/Installation Manual

Use the links below for addtional manual pages or for a complete manual or click on the Operation/Installation Manual PDF link above.

Back to top
Control Resources
For Engineers, by Engineers.
Since 1984.
Control Resources Inc., 11 Beaver Brook Road, Littleton, MA 01460 USA Tel: 978-486-4160 Fax: 978-486-4772 Email: sales@controlres.com