AMC6821 based Fan Control Module with Qwiic connectors for integration into 3.3V MCU projects.
GitHub repository at Tecsmith/arduino-fan-control
This project contains 2 PCB boards:
KK-254-47053-1000
connector
A0 / JP0 | A1 / JP1 | 7-bit | Hex | Address |
---|---|---|---|---|
GND | GND | 0011000 | 0x18 |
24 ☆ |
3V3 | GND | 0011001 | 0x19 |
25 |
N/C~ | GND | 0011010 | 0x1A |
26 |
GND | 3V3 | 1001100 | 0x4C |
76 |
3V3 | 3V3 | 1001101 | 0x4D |
77 |
N/C~ | 3V3 | 1001110 | 0x4E |
78 |
GND | N/C~ | 0101100 | 0x2C |
44 |
3V3 | N/C~ | 0101001 | 0x2D |
45 |
N/C~ | N/C~ | 0101110 | 0x2E |
46 |
☆ = default setting
~ = Not connected
JP2 | PWM Mode |
---|---|
GND | High Frequency range, 1kHz to 40kHz ☆ (25kHz) |
3V3 | Low Frequency range, 10Hz to 94Hz |
JP3 | I2C Pullups |
---|---|
Both connected | 2.2KΩ pull-ups ☆ |
Both cut | No pull-ups |
LED (JP4) | LED function |
---|---|
Tied | LED active to show power state ☆ |
Cut | Power LED disabled |
The AMC6821 fan controllers has a voltage range on the TACH and PWM pins of -0.3Vdc to 6.5Vdc.
⚠ Do not connect 12Vdc lines to the IC pins.
For the AMC6821 (and also the EMC2101) the TACH (tachometer) reading is done on the TACH or SENSE pin of the fan. Most fans operate by grounding this pin once or twice per revolution - thus requiring a pull-up resistor.
For 12V Fans a voltage divider array of resistors (made up of R2, R3 & R4) ensure that the TACH pin on the IC is near the 3V range, and the SENS pin on the fan is in the 7V range.
For 5V Fans only a pull-up resistor is required (R2).
In summary:
Jumper | for 12V Fans | for 5V fans |
---|---|---|
JP1 | bound to 12V ☆ | bound to 5V |
JP2 | cut ☆ | bound |
JP3 | bound ☆ | cut |
JP4 | bound ☆ | cut |
Fan speed control is managed by the PWM signal from the AMC6821 (and also the EMC2101). This pin should always be pulled up to the reference voltage of the IC (not the fan!).
ℹ The board does not provide a 3.3Vdc line. This is sourced from the daughter board GND pin.
4-pin fans have a the fourth pin providing PWM signal to the fan internals. This is pin is enabled by default via the bound trace on JP6.
2-, and 3-pin fans do not regulate speed internally, so a N-Channel MOSFET is used to provide low-frequency PWM control to the Ground side of the fan (avoiding the problems experienced in linear control at lower voltages).
To activate the MOSFET driver JP7 must be bound (and JP6 cut to prevent PWM to fan signal).
In summary:
Jumper | for 4-pin Fans | for 5V fans |
---|---|---|
JP5 | bound “to GND” ☆ | bound “to MFET” |
JP6 | bound ☆ | cut |
JP7 | cut ☆ | bound |
I have not sent these for production yet. Want to make sure the thing works on a proto-board first. I’ll update this page when done.
amc6821-breakout-v3.0.pdf
amc6821-breakout-v3.0.sch
amc6821-breakout-v3.0.brd
–
fan-host-board-v1.0
fan-host-board-v1.0.sch
fan-host-board-v1.0.brd
–
Currently under development … refer to:
★