Bluetooth ドライバメモリ不足問題2008/09/23 23:42

SRS WOW HD ドライバを入れてから新たな問題が生じました。
それは、Bluetooth をオンにしたときに、

「ドライバで使用可能なメモリが不足しているため、Bluetooth Radio をオンにできませんでした。通常のリセット操作を実行してから、Bluetooth Radio をオンにしてください」

というダイアログが出てきて、リセットしないと Bluetooth がオンにできない、というものです。
Antha VPN という、VPN のソフトを入れると、さらにこのエラーが出る確率が上がりました。

「ドライバで使用可能なメモリが不足??」。本当にそうなのか? と疑問を抱きながら調べていくと、インターネット上でも同症状を訴えている人がちらほら居ることが分かりました。また、iPAQ rx3715 などでは FAQ になっています。
http://h50222.www5.hp.com/support/FA281A/experts/69578.html
iPAQ212 はビーム(赤外線)はありませんので、同対策も使えず。

さらに調べていくと、以下の page にたどり着きました。
iPAQ 5555, Bluetooth radio failed to turn on
http://forums12.itrc.hp.com/service/forums/bizsupport/questionanswer.do?admit=109447627+1222181989654+28353475&threadId=802259

ここで、Russ Smith という方が、具体的に原因を述べています。
ここでの説明は Windows Mobile 2003 に関してですが、おそらく Windows Mobile 6 も System driver 用領域が限定されているのでしょう。
ですから、対策は Bluetooth のスタックをできる限り早く load し system driver memory 領域を Bluetooth スタックに割り当てさせることになります。

Bluetooth スタックが load されるのは、\windows\スタートアップで BTTrayCE.exe が読み込まれ、かつ Bluetooth がオン設定された時のようですが、それより先に、少なくとも SRS WOW ドライバや、WiFi ドライバ が読み込まれてしまうと、system driver memory 領域が足りなくなりこの問題が起きると考えられます。
ちなみに WiFi を ON した後リセットすると、起動時に WiFi は自動的に ON され、そのとき本問題が起きやすくなります。
WiFi を OFF してからリセットし起動時に WiFi が OFF で開始される場合は本問題は起きる可能性が激減します。ので、これも一つの回避策ですが、Antha VPN を入れるとなにをやってもリセット後デフォルトで WiFi が ON で起動されるため、問題が顕著化します。

残念ながら SRS WOW ドライバ(WAV) や WiFi ドライバよりも Bluetooth のスタックを呼び出すための BTTrayCE.exe を先に load する手だては見つかりませんでしたが、せめてもっと早い段階で load する細工をして様子を見てみました。下記がその方法です。

1) HKLM/init/Launch62 = "BTTrayCE.exe" とレジストリに加える
2) \windows\スタートアップ にある BTTrayCE.exe のリンクを消す

結果は、リセット後にこの Bluetooth のエラーが出る確率は減りました。おそらく system driver memory の取り合いで勝つ確率が上がったのでしょう。

ちなみに、BTTrayCE.exe が load されていても、Bluetooth を ON にする指定をしていないと Bluetooth スタックは読み込まれません。よって、本エラーがでたら、再度 Bluetooth を ON 設定して(もちろんここでもエラーが出るので即 ON にはならないが、レジストリに ON 設定が残る模様)、再起動後にデフォルトで ON になるようにして soft reset します。

soft reset 後、一旦 Bluetooth がうまく動いた後も安心はできず、WiFi を ON にするときは、先に Bluetooth を ON にしておき、Bluetooth スタックが load されなくなることを防ぐなど、常に心がけが必要で、なんだかやっかいです。
また ActiveSync (USB 接続)も、Bluetooth スタックの load を妨げる一要因のようです。

HP もしくは Broadcom が対策してくれることを望みます。

USB 通常充電2008/09/27 00:00

iPAQ 212 は mini USB 端子からも充電できます。
USB からの充電は「通常充電」と「急速充電」の 2つの設定がありますが、「通常充電」を選択した場合、iPAQ 212 を動かしながら充電しても電池は経る一方で、充電されません。しているのでしょうけど、追いつかない模様。もちろん OFF にして放っておけば、充電されていますが、2-3 時間という短時間ではすみません。
リチウム電池の劣化要因である熱を押さえる効果はあるのでしょうが....

ちなみに HP 24 ピンコネクタ同期ケーブル+電源アダプタからの充電の方が、USB 急速充電と比較しても圧倒的に短時間で充電できますが、Web からダウンロードできる PDF マニュアルに書いてある、「HP 24 ピンコネクタ同期ケーブルを使用し、HP iPAQ をホストPC のUSB コネクタに接続してバッテリを充電することもできます。」で想像できるように、単に PC の USB コネクタに挿しただけでは充電できません。 24 ピンコネクタに電源アダプタを接続しなくては充電しません。
http://h20000.www2.hp.com/bizsupport/TechSupport/DocumentIndex.jsp?lang=en&cc=us&contentType=SupportManual&prodTypeId=215348&prodSeriesId=3659308&docIndexId=64255&manualLang=ja
まぁ電源アダプタと PC の USB port の power がつなげないのでこういう仕様も分かりますが....

ちなみに HP の US のサイトの方がはるかに情報量が豊富に見えます。
ドライバの更新とか(site では BIOS と書いてありますが、これって BIOS?)
http://h20000.www2.hp.com/bizsupport/TechSupport/SoftwareIndex.jsp?lang=en&cc=us&prodNameId=3659309&prodTypeId=215348&prodSeriesId=3659308&swEnvOID=4014&taskId=135&swLang=25

CF 通信カード C01SI を使うための対策2008/09/28 00:00

iPAQ 212 を買った理由の一つに、 CF 通信カードが使えること、がありました。
使っているのは、Softbank の C01SI です。

iPAQ を買った直後に早速刺してみました。
いきなりハングアップです....うぅ。正式にサポートされているわけではないとはいえ、泣けてきます。

色々と試すと、電源を切っているときに挿抜すれば、回避できることが分かりました。電源を切っての挿抜を行うと、C01SI だけでなく、CF flash も挿抜直後に自動的に電源が入ります。Windows Mobile がそういう仕様なんだそうです(HP サポートセンターいわく)。

さぁ準備完了。特にドライバーのインストールもいりませんし、Windows Mobile 6(WM6) はカードを自動認識しているようですので、通信のセットアップを行い、さて接続(ダイヤル)です.......が、C01SI はうんともすんとも言いません。
さすが、人柱専用 PDA と呼ばれる所以です。

色々と調べていくと、問題は CF 通信カードとの COM の通信速度が問題のようです。C01SI は、WM6 デフォルトの 19200bps では動作しない、というのが原因とのこと。
なんだそうか、と COM 通信速度の変更をする設定を探すと....無い.... WM6 からは、COM 通信速度設定が、ダイヤルアップ設定のコントロールパネル内から無くなったそうです(WM5 にはあるらしい)。これも WM6 の仕様だそうで(HP サポートセンター談)。

さて、困った。iPAQ を買った当初 (5/2008)、Web ではみな「動かない」と絶望的な情報ばかり。COM 通信速度を変えてやるだけなんだけどなぁ...と海外 Web を探すと、WM6 で無くなった設定画面を補うべく、レジストリを直接いじるという情報がありました。

Hacking BT settings for 3G UMTS or EDGE
http://www.mobilitysite.com/boards/wi-fi-talk/142275-hacked-bt-3g-umts-speed-test.html#post1239553

要は、
HKEY_CURRENT_USER\Comm\RasBook\"Connection"\DevCfg
の中に埋め込まれた 19200 bps の設定 = 00 4B 00 を探し出して、115200 bps = 00 C2 01 にレジストリエディタで書き換えろ、とのこと。
"Connection" とは、自分で設定した名前です。

さっそくレジストリエディタで見てみましょう
30 00 00 00 78 00 00 00
10 00 00 00 00 4B 00 00
.......
このレジストリは相当長いレジストリですが、00 4B 00 という値は上記しかありません。ここを 00 C2 01 に書き換えて、再度通信接続実行。すると....
動くではありませんか!! これでやっと重い notebook を持って外出しなくてよくなる(涙)...

この幸せ、みんなに分けてあげたい、なんて数十年前の CM のフレーズを胸にしばらく時間が経過したある日のこと、こんな Web とプログラムを発見しました。

「赤玉」さん、SET1152 初公開バージョン
http://akadama1152.seesaa.net/article/79002891.html

私が七転八倒していた遥か半年前に、しかも設定プログラムまで公開していたとは...拍手です。

ちなみに、電源 ON 時に C01SI 挿抜してハングアップする確率は、HP iPAQ CF カードのドライバアップデート後には減りましたが、0 にはなりませんでした。
あと、C01SI を刺したままで電源を OFF にしても、外出という実用に耐えない電池消費を見せます。これも HP いわく WM6の仕様により CF への電源断を行わない、なんだとか。使用したのちは、毎回 C01SI を抜いている状況です。

iPAQ 21x 情報サイト2008/09/30 09:00

iPAQ 21x (x は国や地域によって、1, 2, 4 がある) の情報を集めるには、海外のサイトの方が豊富です。発表時期の違いや国数によるユーザ数の違いでしょうか?
アメリカでは 4万円程度で入手可能、カナダはもっと安い、というのも手伝っているのかも。

下記が良く利用しているサイトです。

xda-developers
http://forum.xda-developers.com/index.php

axim site - iPaq 200 Series (iPAQ 210)
http://www.mobilitysite.com/boards/ipaq-200-series-ipaq-210/

Brighthand.com - HP iPAQ 210 Enterprise Handheld
http://forum.brighthand.com/forumdisplay.php?f=1333

Smartphone & Pocket PC managine
http://www.pocketpcmag.com/