magcupの日記

何でも引き付けるカップ、magcup

ZaurusでBluetoothファイル送受信成功

やっとBluetooth(PlanexのUSBドングルBT-Mini2EDR)でファイル送受信ともうまく行った。

  1. まず、MacWinとっしゅ&Zaurusさんの記事「ZaurusとCF型Bluetoothカードでファイル交換を実現」を参考にbluez-kernel, bluez-zaurus, bluepinをインストール
    • 続けて、openobex_1.0.0-1b_arm.ipk,opd_0.2-1_arm.ipk,obextool_0.2-1_arm.ipkもインストール
    • ダウンロード先は結構リンク切れになっていたり、IEでうまく落とせなかったりするのでGoogleで探す
  2. さらに今は閉鎖されている"Something Interesting Archives" by maikichiさんのサイト(趣味と物欲さんがArchive.orgから発掘)を参考に、とりあえずbtdun-plugin_0.5(これはDUN用)、bluez-libs_2.23_arm.ipk、bluez-utils_2.23_arm.ipkをインストール
    • これもダウンロード先はGoogleで探す(例えばwww.pf-x.net/data3/bluez-libs_2.23_arm.ipkなど)
  3. あとは、MacWinとっしゅ&Zaurusさんの次の記事FileLaunchのBluetooth送信設定を参考に、sdptool search OPUSHで相手のチャンネルを調べてexport LD_LIBRARY_PATH=/home/QtPalmtop/lib:/usr/local/lib とobextool push $1 **:**:**:**:**:** 3(自分のPCのPUSHのチャンネルは5だった)の二行をファイルに入れてFilelanchから「シェル確認」で実行する。
    • チャンネルは機種・サービス毎に違っているので注意
    • DOS窓じゃなかった端末画面で調べたBluetoothアドレスをコピーするのは、単にスタイラスで領域選択するだけ。簡単。
      • 逆にDOS窓へのペーストは、「端末ウィンドウ」では Fn+A、「Terminal」では画面上部の専用アイコン。
  4. ドングルが寝ている場合がある。これを見極めるのが結構、肝。
    • 寝ているかどうかはhcitool devでBluetoothアドレスが表示されるかチェック。まわりの機器探索のコマンドはscanかinq
    • ドングルを起こすにはsudo hciconfig hci0 upと打つ(upを付けないと現在の情況が表示される)。
      • それでも起きなかったら、抜き挿ししなおす。ドングルだけの抜き差しではダメで、miniUSBを抜かないと認識されない。
        • 最後は /etc/rc.d/init.d/bluetooth restart で叩き起こす。
    • そのほかにも、いろいろな呪文がある。Wolfさんのこの記事がわかりやすい
  5. ファイル受信については「管理人の部屋さん」の記述が詳しい。
    • 肝はbluetoothのシェルスクリプトに、上の記事に従って追加の行をいくつか入れる。
      • bluezのバージョンはbluez-zaurus_2.3-2.4.18d_arm.ipkに限る。/etc/rc.d/init.d/bluetoothはこの中のdata.tar.gzにさらに圧縮されて入っている
        • bluez-zaurus_2.3.0519-1_arm.ipkではダメ(bluetoothの内容が異なる)
    • 相手の持っている全てのチャンネル一覧を調べるには、spdtool browse
    • zaurusはファイル受信に成功しても失敗しても一切無言。
      • 受信フォルダ名が違っていたり、なかったりしても無言で失敗する(送信側は成功したと思い込む)。
      • 漢字ファイル名もzaurusは無言で失敗する(送信は出来る)。
  6. 現在の状況
    • ファイル交換相手は、PC(XPSP2)二台とE61だ。E61は受信すると「ピッブルブル」となって面白い。
      • PC側のドングルはplanexとprincetonのどちらもデカイ方、小さい方(PTM-UBT3S)ともOK。
    • ロジクールのマウス台Bluetoothハブも試したけれど今の所ダメ。