玄箱NetBSD用AVR制御デーモンの説明
(アーカイブ同梱のreadmeのコピペです _o_)
NetBSD上で動く玄箱/LinkStation(/TeraStation)用AVR制御デーモンです。
ライセンスはBSDです。
まず第一歩という事で、ごくごく基本的な部分のみ実装しています。
(手抜きにより、多重起動チェック等を行っていません _o_)
ライセンスはBSDです。
まず第一歩という事で、ごくごく基本的な部分のみ実装しています。
(手抜きにより、多重起動チェック等を行っていません _o_)
make でkuro_avrd本体のコンパイルを行います。
次に、rootにてmake installを行うことでkuro_avrd本体を/usr/local/sbin/へ、起動スクリプトを/etc/rc.d/以下へコピーします。
(本体の場所については異論があると思いますが...)
次に、rootにてmake installを行うことでkuro_avrd本体を/usr/local/sbin/へ、起動スクリプトを/etc/rc.d/以下へコピーします。
(本体の場所については異論があると思いますが...)
次に/etc/rc.confへ、以下の行を追加してください。
kuro_avrd=YES
その後システムを再起動するとkuro_avrdが起動します。
何らかの理由により手動で開始・停止する場合は、各々
/etc/rc.d/kuro_avrd start /etc/rc.d/kuro_avrd stop
とします。
kuro_avrdは引数を(いまのところ)使用しません。
起動すると/dev/dty01をオープンし、初期設定文字列(リセット防止用)を送り、AVRからのメッセージを待ちます。
AVRからのメッセージは現在のところ、
起動すると/dev/dty01をオープンし、初期設定文字列(リセット防止用)を送り、AVRからのメッセージを待ちます。
AVRからのメッセージは現在のところ、
0x20 : 電源スイッチ 離 0x21 : 電源スイッチ 押 0x22 : 設定初期化スイッチ 離 0x23 : 設定初期化スイッチ 押
しか受け取りません(他のメッセージは黙って無視します)。
なおかつ、電源スイッチの長押しと設定初期化スイッチの長押しのみ動作を定義してあります。各々、
電源スイッチ長押し: シャットダウン(電源OFF) 設定初期化スイッチ長押し: リブート
としてあります。
長押しの時間は#defineにより3秒間としています。
スイッチを長押ししてLEDが点滅を始めたら手を離してください。
長押しの時間は#defineにより3秒間としています。
スイッチを長押ししてLEDが点滅を始めたら手を離してください。
デーモンとして動作している間は pidファイルを
/var/run/kuro_avrd.pid
に置きます。ちゃんと終了したら消します。(異常終了なら消しません)
デーモンが動作している間はその副作用として、
echo -n "]]]]" > /dev/dty01 # ファン高速回転 echo -n "\\\\\\\\" > /dev/dty01 # ファン低速回転
等が使用可能となります。うまく使って下さい。
その他の機能を入れたい方はソースを改造してください。
うまい使い方を実装されたならば、ぜひとも下さい(^_^)。よろしくお願いします。
うまい使い方を実装されたならば、ぜひとも下さい(^_^)。よろしくお願いします。
ご連絡先: E.Kawauchi atto gmail dotto com
13687
このwikiの更新情報RSS