Open5

Khadas VIM4のデバイス固有のセットアップ

yag_aysyag_ays

Khadasのシングルボードコンピュータ(SBC)であるVIM4の、デバイス固有のセットアップを行う。

スペック

  • Khadas VIM4 Amlogic A311D2
  • Khadas 新M2Xエクステンションボード
    - M.2 SSD

ちなみにkhadas DIYケースを購入したが、M2Xエクステンションボードを装着すると格納できなかった。

情報

yag_aysyag_ays

LEDの点滅を消す

VIM4の起動中はデフォルトでは白色LEDが点滅する仕様のため、点滅から常時点灯するには/etc/rc.localの該当部分をコメントアウトする。

# Setup LED: heartbeat if bootup completed
# echo heartbeat > /sys/class/leds/pwmled/trigger

LEDを完全に消すにはコメントアウトする代わりにecho noneとする。

LED [Khadas Docs]

yag_aysyag_ays

ファンを設定を確認する

ファンの設定を確認する。

$ fan.sh mode
Fan mode: auto
Fan level: off
Fan state: active

ファンの速度をトリガーする温度を確認する。

$ fan.sh trig
Fan trigger low temp: 50
Fan trigger mid temp: 60
Fan trigger high temp: 70

ファン設定がautoの場合、low/mid/highの各温度になった時点でファンレベル(ファンの速度)が変動する。

Cooling Fan [Khadas Docs]

yag_aysyag_ays

CPU温度とファンレベルを取得する

CPU温度

$ fan.sh temp
Fan temp: 49

または直接取得する

$ cat /sys/class/thermal/thermal_zone0/temp
49200

ファン

ファンは回転数ではなくレベル(0~4)で表される。

$ cat /sys/class/fan/level
Fan level: 0

Grafanaでの可視化

上記の情報を10sごとに取得して可視化すると、以下のようになる。50℃を超えるとファンレベルが1になってファンが起動し、CPU温度を下げていることがわかる。

yag_aysyag_ays

ファンの起動設定を調節する

デフォルトの設定ではCPU温度が50℃になった瞬間にファンが回り始めるため、何も動かしていなくても定期的にファンが回る/止まるを繰り返す。ファンが回り始める温度を上げて、ファンが回らないようにしたい。

そこでtrigger_temp_lowを60℃、trigger_temp_midを65℃に設定する。なお、これらの数値は同じ値を設定することができないので注意。

$ echo 65 | sudo tee /sys/class/fan/trigger_temp_mid
$ echo 60 | sudo tee /sys/class/fan/trigger_temp_low

以下のような設定になった。

$ fan.sh trig
Fan trigger low temp: 60
Fan trigger mid temp: 65
Fan trigger high temp: 70

CPU温度の時系列変化を見るとアイドル状態で53~54℃で安定したので、なにか処理を動かしていないときはファンが回らないようになった。