Ensure you have the correct fan for your carrier board. Check the supported fan voltage for the board within the carrier User Manual.
Jetson nvfancontrol
Jetson fan control can be done through the user-space fan speed control daemon, nvfancontrol. (Note, the link attached is for NVIDIA® Jetson™ Linux version 36.4.3). You can use one of the preconfigured profiles or add your own profile table to the /etc/nvfancontrol.conf file. You may need to experiment with different values in order to get the balance of noise and cooling effect you desire.
Fan Control File
To manage PWM fan control without the use of nvfancontrol you will need to use the fan control file, /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1.
To use the PWM fan control file, you need to first disable nvfancontrol, sudo systemctl stop nvfancontrol. To confirm that nvfancontrol was succesfully stopped, run systemctl status nvfancontrol.service.
To read the current PWM value:
$ cat /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1
To write to the PWM fan:
$ sudo echo <speed> > /sys/devices/platform/pwm-fan/hwmon/hwmon*/pwm1
Where, <speed> = 0 to 255
speed = 0 (turn off the fan)
speed = 255 (full speed)
If your fan has speed feedback through tachometer, you can view the rpm by first checking which hwmon* is for tach, cat /sys/class/hwmon/hwmon*/name. Once you have found the appropriate hwmon<x> associated with pwm_tach, you can view rpm with, cat /sys/class/hwmon/hwmon<x>/rpm.
jetson_clocks
Another way to manage PWM fan settings is through jetson_clocks. Here are a few useful jetson_clocks commands:
$ jetson_clocks –-store
This saves the PWM settings so that it can be restored to turn off the fan.
$ jetson_clocks --fan
This command turns on the fan on full speed.
$ jetson_clocks --restore
This command turns off the fan.