Jump to content

How to enable pwm Fan on Jetson Nano?


Hollywood

Recommended Posts

Used the kernel and u-boot from NVIDIA. Perhaps the Armbian builds do not have enough settings\script to manage. You need to compare both systems and look for what is missing. I don't have time for this yet. You can check and find the solution yourself, it's not difficult (compare and copy from the source system where it works to Armbian). If you have ready-made solutions, I can quickly include them in the build of subsequent images.

Link to comment
Share on other sites

8 hours ago, Hollywood said:

The simplest way is: just add the following line before last line "exit 0' in /etc/rc.local

If I don't forget, I'll try to add this option to the next versions.

Link to comment
Share on other sites

Finally found time to test the fan. :)

May need to make a correction to the start line (add at the end of&). Without it, my fan wouldn't turn on.

 

Question. @Hollywood If you use the suggested value of 255, the fan turns on at maximum speed. I have tried different loads and even when using a value of 100 (and low fan speed), the temperature under load does not exceed 40 degrees (for temperature control, I run "armbianmonitor -m" in the terminal). And what temperature and under what loads do you have ?

Link to comment
Share on other sites

My fan is really quiet with 255. I think it depends on the fan if it is too loud or not.

The temperature of my jetson nano is under 40 degrees too.

 

In tried https://github.com/Pyrestone/jetson-fan-ctl, but it works with ubuntu from nvidia only.

I tried nvidia ubuntu and the fan works really quiet and it sets the fan speed dynamically.

It uses /usr/bin/jetson_clocks which produces an error on armbian but the fan starts working. Maybe, on nvidia ubuntu are some defines set which are not available on armbian.

 

/usr/bin/jetson_clocks is used by https://github.com/Pyrestone/jetson-fan-ctl, too.

 

The do_gpu() function of /usr/bin/jetson_clocks produces an error:

Maybe, there are some environment variables about GPU not set in this section: /usr/bin/jetson_clocks line 242...

 

    for devfreq in /sys/class/devfreq/*; do
        name=$(tr -d '\0' <${devfreq}/device/of_node/name)
        if [[ "${name}" == "gv11b" || "${name}" == "gp10b" || "${name}" == "gpu" ]]; then
            GPU_MIN_FREQ="${devfreq}/min_freq"
            GPU_MAX_FREQ="${devfreq}/max_freq"
            GPU_CUR_FREQ="${devfreq}/cur_freq"
            GPU_RAIL_GATE="${devfreq}/device/railgate_enable"
            break
        fi
    done

    if [[ "${name}" == "" ]]; then
        echo "Error! Unknown GPU!"   <------------------- this error is shown on armbian
        exit 1
    fi

Link to comment
Share on other sites

The difference between armbian and nvidia ubuntu 18.04 is:

nvidia ubuntu shows in /sys/class/devfreq/ 2 links:

lrwxrwxrwx  1 root root 0 Jan 28  2018 54340000.vic -> ../../devices/50000000.host1x/54340000.vic/devfreq/54340000.vic
lrwxrwxrwx  1 root root 0 Jun  5 18:40 57000000.gpu -> ../../devices/57000000.gpu/devfreq/57000000.gpu


armbian 20.05.5_Jetson-nano_buster_legacy_4.9.140_20200528 shows in /sys/class/devfreq/ only 1 link:

lrwxrwxrwx  1 root root 0 Jun  5 20:46 54340000.vic -> ../../devices/50000000.host1x/54340000.vic/devfreq/54340000.vic

 

Here is a link https://www.jetsonhacks.com/2018/10/07/nvpmodel-nvidia-jetson-agx-xavier-developer-kit/

 

which decribes nvpmodel and jetson_clocks.sh (which was renamed to jetson_clocks, meanwhile)

Interesting of the link above is, that the performance model can be set nvpmodel.

If you take the nvpmodel program, the jetson_clocks script from nvidia ubuntu 18.04 and if you uncomment line 391 of jetson_clocks

    do_hotplug
    do_clusterswitch
    do_cpu
    #do_gpu <--- commented out at line 391
    do_emc
    do_fan
    do_nvpmodel

then the script seems to work.

Additionally  https://github.com/Pyrestone/jetson-fan-ctl should work then too.

 

I will try it and i report it to you.

Link to comment
Share on other sites

  • Werner locked this topic
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines