8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ラズパイの赤LED、緑LEDの挙動を変える方法

Last updated at Posted at 2021-02-20

ラズパイの赤LED、緑LEDの挙動を変える

ラズパイには赤LED、緑LEDがついていますが、/boot/config.txtに書いておくと、その挙動をある程度、変えることができます。ラズパイ4B、3B、3B+で確認。

挙動を一時的に変えることもできます。

そもそも、なんで変えたいかというと、ラズパイは、電源を切ったら良いのか??という話からつながっています。
「不安定なラズパイの作り方、あるいはラズパイの電源の切り方」
https://qiita.com/naohiro2g/items/1767f5a775ef8e4283d6

ちなみに、「赤LED、緑LEDの挙動を変えて、稼働中かどうかをわかりやすくする」という趣旨の記事は散見されますが、この記事含め、根本的な解決である、安心して電源が切れる、になりません。残念ながら、(2)の期間が長い時があり、(4)との区別がつかないからです。

# 状態 赤LED 緑LED 備考
(0) 電源投入→起動中 点灯 アクセス
(1) 稼働中(オリジナル設定) 点灯 アクセス
(1') 稼働中(今回の設定) アクセスランプ ゆっくり点滅 「稼働中」が明確
(2) シャットダウン処理開始→ 点灯 消灯 数秒〜数分
(3) シャットダウン処理終了時 点灯 10回点滅
(4) シャットダウン完了後 点灯 消灯 電源を切ることができる

オリジナル設定では、赤LEDがいつも点灯しているので、稼働中/シャットダウン指示後の区別がつきにくい。今回の設定では、稼働中が明らかにわかるところが改善点。しかし、依然、シャットダウン中/完了がはっきりしない。

結果、「緑LEDの10回点滅」あるいは「ディスプレイ信号がなくなりました」を見逃せない状況はあまり変わらないのです。シャットダウン処理がいつも数秒で終わるとよいのですが。。

デフォルト設定

赤LED:「input」

  • 電源低下の監視。一定以上電源電圧が低下すると消灯。それ以外は常に点灯。
    緑LED:「mmc0」
  • マイクロSDの読み書きのときにチカチカ点滅。

設定キーワード紹介

設定して、再起動で反映されます。
使えそうなグループ。

heartbeat:ハートビート、心臓の鼓動のように点滅。チカチカ、、チカチカ、、
(1010 0000 1010 0000....)
timer:0.5秒点灯、0.5秒消灯、つまり、1秒周期でゆっくりチカチカ点滅。
mmc0:マイクロSDアクセス
mmc1:USB接続のSSDアクセス   赤のほうがおとなしく見える。

その他

none:消灯、赤LEDには効かない模様。
default-on:常時点灯
input:電源電圧監視、低下すると消灯
cpu:少しでも動いていると点灯なので、ほぼ意味なし。
cpu0, cpu1, cpu2, cpu3:各コア別。同上。
rfkill0:WiFi 起動中、シャットダウン中など無効時のみ消灯。
rfkill1:Bluetooth  無効時に消灯。
backlight:純正LCDのバックライトと連動?、使ってないとずっと消灯。(未確認)

cpu、スレッショルドが設定できれば、使えるのに残念。。
WiFi/Bluetoothもアクセス状況の監視には使えません。

ちなみに、赤に動作を割り当てても、以下のフェーズではデフォルトの電源インジケータ(input設定)になります。

  • 電源投入直後から起動終了まで
  • shutdown開始からshudown完了後まで

一時的に挙動を変えたい!

ファイルシステム上のデバイスとして、ここにあります。
緑色: /sys/class/leds/led0
赤色: /sys/class/leds/led1

挙動を変える(各設定値を試すときに便利です。)

sudo sh -c 'echo heartbeat  >led0/trigger'

強制で点灯/点滅

$ sudo sh -c 'echo 1 >led0/brightness'  # 緑色消灯
$ sudo sh -c 'echo 0 >led0/brightness'  # 緑色点灯

クラスなどでラズパイを複数台使っている時、どれがどれだかわからなくなった/わかりにくい時に便利。遠目でもわかりやすい。(レアケースだけど、あるんです! 非常に実用的。)

設定キーワードを試す

お試しは、以下のように

sudo sh -c 'echo heartbeat  >led0/trigger'

キーワード一覧はこちら。

cat led0/trigger   # green-act led

none rc-feedback kbd-scrolllock kbd-numlock
kbd-capslock kbd-kanalock kbd-shiftlock
kbd-altgrlock kbd-ctrllock kbd-altlock
kbd-shiftllock kbd-shiftrlock kbd-ctrlllock
kbd-ctrlrlock timer oneshot heartbeat backlight
gpio cpu cpu0 cpu1 cpu2 cpu3 default-on input
panic mmc1 [mmc0] rfkill-any rfkill-none
rfkill0 rfkill1

cat led1/trigger   # red-pwr led

none rc-feedback kbd-scrolllock kbd-numlock kbd-capslock kbd-kanalock kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock timer oneshot heartbeat backlight gpio cpu cpu0 cpu1 cpu2 cpu3 default-on [input] panic mmc1 mmc0 rfkill-any rfkill-none rfkill0 rfkill1

キーボードのロック表示で使おうとしていた形跡がありますね。

個人的に気に入っている設定例

稼働中は、緑が1Hzでゆっくり点滅、ファイルアクセスで赤がチカチカ。
シャットダウンのプロセスに入ると、緑が点滅、赤が点灯。
シャットダウン完了後は、赤が点灯。(本当は全部、消灯してほしい。)

通常のマイクロSDカード起動の場合

dtparam=act_led_trigger=timer        # slow blink for green
dtparam=pwr_led_trigger=mmc0         # microSD for red

SSDブートの場合

dtparam=act_led_trigger=timer        # slow blink for green
dtparam=pwr_led_trigger=mmc1         # SSD for red
8
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?