続・Bluetoothダイヤルアップ時のレジューム問題解決方法

りなざうテクノウにたむたむ氏が書いた電源OFF/ON時にカードを再認識させる方法は、sudoのバージョンによって不具合が生じるそうなので、先日NetHelper Appletを使って独自にやってみたんだけど、少々いいかげんな方法だったので他のCFカードでもカード再認識処理が働くようになっていた。
で、ふと思ってりなざうテクノウに書かれていた方法で使っているBluetooth CFカードの制御スクリプトを見てみると、空のファイル/etc/apm.d/suspend.d/S90bluetooth、/etc/apm.d/resume.d/R45bluetoothと、制御スクリプト本体/etc/apm.d/bluetoothが入ってるだけだった。このスクリプトbluetoothは以下のような内容で、パラメータとしてsuspendかresumeを与えると、それに応じた動作を行ってくれる。ちゃんと、hciconfigでBluetooth CFカードが差さっている時に処理を行う。

#!/bin/sh

PATH=$PATH:/usr/bin

case "$1" in
suspend)
   if [ "`/usr/sbin/hciconfig`" != "" ]; then
      hcitool dc `hcitool con | grep ACL | sed 's/^.*\([0-9A-F]\{2\}\(:[0-9A-F]\{2\}\)\{5\}\).*$/\1/'`
      hciconfig hci0 down
   fi 
;;
resume)
   if [ "`/usr/sbin/hciconfig`" != "" ]; then
      rfcomm bind all
      cardctl eject
      cardctl insert
   fi
esac

これをNetHelper Appletからレジューム/サスペンド時に実行できるように/home/zaurus/Settings/nethelper.confに以下のように記述する。

[Global]
Enabled = 1
[Run_Off]
suspend00 = /etc/apm.d/bluetooth suspend
resume00 = /etc/apm.d/bluetooth resume
[Run_All]
suspend00 = /etc/apm.d/bluetooth suspend
resume00 = /etc/apm.d/bluetooth resume

Bluetoothデバイスのチャンネル番号

以前からauの携帯電話 A5504TBluetoothを使ったダイヤルアップ接続で使うチャンネル番号を調べる方法が判らなかったが、!亜洲モバイル人柱隊のTJさんの記事でその方法が判った。
ダイヤルアップ接続はDUN(Dial Up Network)なので、下記のように入力することで「Channel: 8」のように表示される。

sdptool search DUN

他のプロトコル(LAN、FAX、OPUSH、HID等)についても同様に調べられるんだと思う。

新型京ぽん発表

ウィルコム来た!特に新型京ぽんこと、WX310Kが一番凄すぎ。
・128kbps対応、Bluetooth搭載、Flash対応
miniSD対応、メガピクセルカメラ搭載、QRコード対応、動画対応
・MP3/ATRACプレイヤー、PDF、Excel、Word、PowerPoint表示可能
もう完全に今の通信環境を置き換えられるよ。これ!
さらにauで言うところのダブルデータ定額もキターッ!!
・10万パケットまで月額1,050円、上限は3,800円
・パソコンを使ったデータ通信でも上限は6,300円
・32kbpsだけでなく、128kbpsでも同額
miniSDも1GB大丈夫らしいし、MP3もminiSDにコピーするだけで再生できるそうなので自由度も高いっ!いいなぁ〜。