プログラミングに関する私的メモ

HD-LAN AVRコマンド

最終更新:

匿名ユーザー

- view
だれでも歓迎! 編集

HD-LAN Ver2.13aのAVRのコマンド

ハードウェア制御を行うAVRマイクロコントローラーへ、次のように同じキャラクタを四回繰り返す形式でコマンドを送信すると、いくつかのハードウェアの制御ができる。
echo -n "AAAA" > /dev/ttyS1
echo -ne "\010\010\010\010" > /dev/ttyS1
echoの-e(エスケープシーケンスオプション)では8進3桁でASCIIキャラクタを表すので、"\30"は間違いで"\030"となる。
制御対象は次の通り。
  • POWER LED(緑)
  • LINK/ACT LED(緑)
  • DISK FULL LED(赤)
  • DIAG LED(赤)
  • 背面排熱ファン
  • 電源

※\010-\077までは下位3bit(8進最下位桁)が無視されるようだ。
キャラクタ 送信結果 マニュアル記述
\000 電源OFF
\001-\007 DIAG消灯
\010 DIAGの一回点滅を繰り返す。
\020 DIAGの二回点滅を繰り返す。
\030 DIAGの三回点滅を繰り返す。 パーティション異常
\040(空白) 電源OFF、DIAGの四回点滅を繰り返す。 ファン異常
((\050) 電源OFF、DIAGの五回点滅を繰り返す。 FlashROMデータ異常
0(\060) 電源OFF、DIAGの六回点滅を繰り返す。 ハードディスク認識異常
8(\070) 電源OFF、DIAGの七回点滅を繰り返す。 RAM/LAN/ハードディスクコントローラ異常
A(\101) 何も起こらない?
C(\103) この後shutdown -r nowを実行するとリブートする。CCCCを発行しない場合はリブートせず電源も落ちない。コンセントを抜かなければならない。
E(\105) この後shutdown -h nowを実行すると電源OFFする。EEEEを発行しない場合は電源が落ちない。コンセントを抜かなければならない。
F(\106)
J(\112)
K(\113)
Q(\121) (スクリプトには「スリープタイマー用Uart通信リセット」とコメントあり)
R(\122) SSSSのキャンセル。
S(\123) POWER,LINK/ACT, DISK FULL, DIAG が点滅する。
T(\124)
U(\125)
V(\126) WWWWのDISK FULLを消灯
W(\127) DISK FULL点灯、消すのはVVVV
X(\130) YYYYのDISK FULLを消灯
Y(\131) DISK FULL点滅、消すのはXXXX
  • Y(点滅)->W(点滅のまま)->X(点灯に切り替わる)->V(消灯)
  • Y(点滅)->W(点滅のまま)->V(点滅のまま)->X(消灯)
  • W(点灯)->Y(点滅)->X(消灯)
  • W(点灯)->Y(点滅)->V(点滅のまま)->X(消灯)
キャラクタ 送信結果 マニュアル記述
Z(\132) [[[[のキャンセル。
[(\133) POWER(緑)が点滅を繰り返す。
\(\134) ファンを低速回転
](\135) ファンを高速回転
`(\140) 何も起こらない?
a(\141) 何も起こらない?
b(\142) 何も起こらない?
c(\143) 何も起こらない?
d(\144) 何も起こらない?
f(\146) 何も起こらない
g(\147) 何も起こらない
h(\150)
i(\151) 何も起こらない
j(\152)
k(\153) 何も起こらない
l(\154)
m(\155) 何も起こらない
n(\156)
o(\157) 何も起こらない
p(\160)
q(\161)
r(\162)
s(\163)
t(\164)
u(\165)
v(\166)
w(\167)
x(\170)
y(\171)
z(\172)

次のコマンドで使われている場所を調べた。
grep -r '/dev/ttyS1' /bin /etc /home /lib /root /sbin /usr/ /www
スクリプト CCCC EEEE QQQQ SSSS VVVV WWWW XXXX YYYY \030\030\030\030
/sbin/mkfilesystem.sh
/usr/sbin/ppc_uartd
/usr/sbin/ap_servd
/www/script/melsub_shutdown2.sh
/www/script/melsub_diskcheck.sh
/www/script/melsub_init.sh
/www/script/melsub_shutdown.sh
/www/script/melsub_disk_rebuild.sh
/www/script/melsub_disk_repair.sh
/www/script/melsub_flash.sh
/www/script/set_hdd_check.sh
/www/script/set_hdd_check_finish.sh
/www/script/set_hdd_format.sh
/www/cgi-bin/hdd-repair.cgi
/www/cgi-bin/setup-time-in.cgi
人気記事ランキング
最近更新されたページ