へぇ、こんなコマンドあったんだ。

久々のザウルスねた。
ちょっと暇だったので、ザウルスの内部をさぐってみたら
ledctl
なんてコマンドを発見!
LED?!発行ダイオードやね。これ。
ってことでいじってみると・・・
バッテリーランプおよびメールランプがいじれるコマンドだった!
これはと思い、かねてから思っていた
スペシャカーネルお得意の、CPUクロックチェンジと連動できればおもろいかなということで
CPUのクロックが変更されるとランプでお知らせぇ〜見たいなプログラムをつくってみた。
それにあわせて、
qcopコマンドを利用して、
タスクバーにきりかわったCPUのCCCR値が表示されるように
タスクバーメッセージ専用プログラムも書いてみた。

これらをrootユーザになって
/home/QtPelmtop/bin配下において、
chmod +x *.sh
で実行権限をつけてあげ、
/etc/rc.d/init.d
に以下のプログラムを用意。
speed_checcker.sh

#!/bin/bash
BCCCR=`cat /proc/zaurus/CCCR`
check_cpu(){
CCCR=`cat /proc/zaurus/CCCR`
}
ledchange(){
/bin/ledctl battery 2
/bin/ledctl alarm 1
sleep 3
/bin/ledctl battery 0
/bin/ledctl alarm 0
/home/etc/ledmode reset
}
main (){
while :
do
check_cpu
if [ ! "$BCCCR" = "$CCCR" ];then
/home/QtPalmtop/bin/qcop_message.sh "CPU SPEED CHANGE:$CCCR"
BCCCR=$CCCR
ledchange
fi
sleep 2
done
}
main

qcop_message.sh

#!/bin/bash
SPEED="$@"
export SHELL=/bin/bash
export QWS_DISPLAY="Transformed:Rot270:Vga:0
export QTDIR=/home/QtPalmtop
export QPEDIR=/home/QtPalmtop
export PATH=/root/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
export PATH=$QPEDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib
export LD_LIBRARY_PATH=/home/root/opt/Embedix/tools/arm-linux/X11R6/lib:$LD_LIBRARY_PATH
export HOME=/home/zaurus
export CRL_DIC_PATH=/home/QtPalmtop/dic
#export UNICODEMAP_JP="nec-vdc,ibm-vdc,udc"
export UNICODEMAP_JP="open-19970715-ms,cp932,nec-vdc,ibm-vdc,udc"
export QPEUSER=zaurus
export QPEGROUP=qpe
export RES_OPTIONS=insecure1

su zaurus -c "/home/QtPalmtop/bin/qcop QPE/TaskBar 'message(QString)' \"$SPEED\""

cpuwatch

#!/bin/bash

/home/QtPalmtop/bin/speed_checcker.sh &

これも上記同様
実行権限をつけ、
/etc/rc.d/rc5.dにシンボリックリンクでS98cpuwatchなどとして
起動時に実行されるようにしておくと・・・

次回zaurus再起動後から自動でCPUの速度を監視し、
変化するとランプとタスクバーでお知らせしてくれるようになります。
BatteryPlusなどからCPUのクロックチェンジをしてみてくださいねぇ〜
自分はC1000でスペシャカーネルなんですけど、
エミュレータ好きなので数多くのエミュレータが入ってますが、
通常運用中はCPUクロックを下げ気味にしてあり、
各種エミュレータが動作するときのみCPUのクロックアップを行うようにしています。
エミュの場合、ほとんどがタスクバーが利用できない状態で動くので
qcopのタスクバーメッセージだけではまったく意味をなさなかったのですが
今回LEDを利用できたことで大変便利になりました。
それ以外にもLEDは利用できそうなのでなにかいいアイディアがあったら
利用してみてはどうですか?