Jetson Nano に装着した冷却ファンの回転数を自動制御してみる

#はじめに
Jetson Nano に冷却ファンを装着したのだけれども、接続しただけだと回らない。
なんやらかんやらで、回るようにはなったけれども、回転数が固定なのがいまいち。
しかもOS起動後に自動で回ってくれない・・・
発熱量に合わせてうまいこと回転数を制御してくれないものか？
そんなところへ良さげなものを発見！

#環境
* [NVIDIA Jetson Nano 開発者キットB01](https://www.marutsu.co.jp/pc/i/1631693/) ~~￥12,800~~ ⇒ ￥9,980（お盆セール）
* [ACアダプター 5V 4A (2.1mmプラグ)](https://www.marutsu.co.jp/GoodsDetail.jsp?q=4A%20ATS024T-W050U&salesGoodsCode=1319370&shopNo=3) ￥980
* [Noctua NF-A4x20 5V PWM 40mm 静音 ファン 5000rpm](https://www.amazon.co.jp/Noctua-NF-A4x20-5V-PWM-5000rpm/dp/B071FNHVXN/ref=sr_1_1?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=Noctua+NF-A4x20+5V+PWM+40mm+%E9%9D%99%E9%9F%B3&qid=1597415511&s=computers&sr=1-1) ￥2,660
* [microSDカード 128GB](https://www.amazon.co.jp/microSDXC-SanDisk-%E3%82%A2%E3%83%97%E3%83%AA%E6%9C%80%E9%81%A9%E5%8C%96-%E3%82%B5%E3%83%B3%E3%83%87%E3%82%A3%E3%82%B9%E3%82%AF-JNH%E3%82%AA%E3%83%AA%E3%82%B8%E3%83%8A%E3%83%ABSD%E3%82%A2%E3%83%80%E3%83%97%E3%82%BF%E3%83%BC%E4%BB%98/dp/B07QNSZZ16/ref=sr_1_3?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=microSDXC+128GB+%E8%B6%85%E9%AB%98%E9%80%9FUHS-I+U1+A1%E5%AF%BE%E5%BF%9C&qid=1597415623&s=computers&sr=1-3) ￥2,080
* [TP-Link WiFi 無線LAN 子機 AC600](https://www.amazon.co.jp/TP-Link-Wireless-Nano-Archer-T2U/dp/B07MXHJ6KB/ref=sr_1_3?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=TP-Link+WiFi+%E7%84%A1%E7%B7%9ALAN+%E5%AD%90%E6%A9%9F+AC600&qid=1597415347&s=computers&sr=1-3) ￥1,433
* [Geekworm Jetson Nano用金属ケース、電源コントロールスイッチ/リセットスイッチが付き](https://www.amazon.co.jp/Geekworm-Nano%E3%81%A82-5%E3%82%A4%E3%83%B3%E3%83%81-%E3%82%B9%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B8%E6%8B%A1%E5%BC%B5%E3%83%9C%E3%83%BC%E3%83%89%E7%94%A8%E9%87%91%E5%B1%9E%E3%82%B1%E3%83%BC%E3%82%B9%EF%BC%88T300-C2%EF%BC%89%E3%80%81Jetson-Nano%E3%81%A8T300-%E3%83%9C%E3%83%BC%E3%83%89%E3%81%AE%E3%81%BF%E3%81%AB%E9%81%A9%E7%94%A8/dp/B07W5D2ZFY/ref=sr_1_3?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&dchild=1&keywords=Geekworm+Jetson+Nano%E7%94%A8%E9%87%91%E5%B1%9E%E3%82%B1%E3%83%BC%E3%82%B9&qid=1597415438&s=computers&sr=1-3) ￥3,199


#なんやらかんやら
* [Jetson Nano関係のTIPSまとめ－FAN制御の方法](https://qiita.com/karaage0703/items/b14c249aa33112669ee4#fan%E5%88%B6%E5%BE%A1%E3%81%AE%E6%96%B9%E6%B3%95)  
とか
* [Jetson Nanoでjtopを使ってみる](https://qiita.com/zrock/items/ab9a4b3042b0d6d9c41e)（jtop の 5CTRLタブ）  
とか
* [NVIDIA Jetson Nanoを 4A電源を使い電源起動時から CPUを 10Wモードのフルパワーで駆動する方法](http://www.neko.ne.jp/~freewing/raspberry_pi/nvidia_jetson_nano_cron_crontab_autoexec_script/)



#良さげなものを発見！
* [jetson-fan-ctl](https://github.com/Pyrestone/jetson-fan-ctl)

####セットアップ手順
python3 のバージョン確認（3.5以上ならOKらしい）

```
$ python3 -V
Python 3.6.9
```


git クローン

```
$ cd ~ 
$ git clone https://github.com/Pyrestone/jetson-fan-ctl.git
```

インストール

```
$ cd jetson-fan-ctl/
$ sudo ./install.sh
```

設定ファイルの確認と編集（デフォルトでも問題なし）

```
$ sudo vi /etc/automagic-fan/config.json
```

```
{
"FAN_OFF_TEMP":20,
"FAN_MAX_TEMP":50,
"UPDATE_INTERVAL":2,
"MAX_PERF":1
}
```

FAN_OFF_TEMP ： ファン回転数をゼロにする温度
FAN_MAX_TEMP ： ファン回転数を100%にする温度
上記２点間を小刻みの回転数でファンが回る模様。
UPDATE_INTERVAL ： ファン回転数を更新する頻度（秒単位）
MAX_PERF ： 良く解らないけど 1 以上で良さげ。

サービスの再起動

```
$ sudo service automagic-fan restart
```

jtopで回転数を確認

```
$ jtop
```

![jtop.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/510937/a77ec310-0b7f-bc51-037b-3f0e0d03917d.png)



####おまけ
サービスの起動状態確認

```
$ sudo service automagic-fan status
```

アンインストール

```
$ cd ~ 
$ cd jetson-fan-ctl/
$ sudo ./uninstall.sh
```

#感想
非常に満足♪