something which something is something

まとまりのないブログ

雑記・雑学

cardinitialize failed!!

投稿日:

シグマリオン2に無線lanのCFカードアダプタを挿入したら、ERROR cardinitialize failed!! と怒られるようになってしまった。初期化に失敗、ということらしい。その後はOKボタンを押してもフリーズ状態でリセットする以外なくなってしまう。

原因は、無線lanカードアダプタのドライバ関係で不具合が起こっているのではないかと思う。あるいは、それ以外でアプリケーションのインストールとか削除とかわけのわからない作業をしてしまったために関連するファイルを削除してしまったか、あるいはレジストリの値を修正したことでその影響がでてしまったか、どれかだろう。

私の場合は対象のCFカードアダプタ(GW-CF11H)のドライバをいろいろインストールや削除を繰り返すうちになってしまった。まったく問題なく認識してドライバ付属のユーティリティソフトが起動していたこともあったので、それ以降にした作業の何かがまずかったのだろう。現在のところはカードを挿せばフリーズしてしまう状況なのでドライバを削除して他に使えるドライバを他社製も含めて探し中。幸い有線lanケーブルでの接続ではエラーが出てないのですぐに困ることはない。そもそもシグマリオン2は初期設定さえ終わればほとんどオフラインで使うつもりでいたし、通信使うとバッテリーの持ちも悪くなるしで無線lanできなくなったとしても問題はなさそう。

諦めきれないので再調査
完全オフラインでもシグマリオン2は十分使えるが、無線でネットワーク接続がいつでもできるならその利便性はやはり捨てがたい。パワーが足りないと思ったときに別PCをリモートで操作して使うということも可能になるので。

もう一度原因を考えてみるとカードの初期化不良のエラーが発生するようになったのはおそらく別のドライバまたは別のアプリケーションをインストールしてからのことだと思う。初めにインストールしたドライバは正常に認識して付属のユーティリティソフトも起動できた。でも無線アクセスポイントに繋げることができなかったのでそこで別のドライバをインストールして試そうとした。それでもやっぱりだめで最初にインストールしたドライバに戻そうかとしたらこのinitialize failedというエラーが発生するようになった、このような手順だったと思う。その後、インストールした当該のドライバはすべてアンインストールして、一からやり直すつもりでドライバインストールをしてみたがダメ。関係するレジストリのキーも削除してやってみたがやっぱりダメ。別ドライバをインストールしたことがなぜかポイントオブノーリターンな状況を作ってしまった。

今現在の状況はカードを差し込んだらフリーズしてしまうドライバは削除して、とりあえず認識をするドライバをインストールした状態。製品の公式サイトのhttp://www.planex.co.jp/support/download/bwave/gw-cf11h/driver.shtmlにあるPocketPC 2003ドライバ(CF11H_PPC2003_V10.exe)をactivesync経由でインストールした状態でとりあえずカードをOSが認識してランプが点滅をしている状態になっている。問題は、無線アクセスポイントへ接続するソフトがないために次へ進めないということ。シグマリオン2にインストールされているHandheld PC 2000というOSは無線アクセスポイントを探す機能がないため接続は無線アダプタの製造会社で提供されるソフトウェア頼みということ。通信関係のアプリはプリインストールされているがOSが発売された年代が古すぎるためにWiFiもなければPHSとか携帯電話でプロバイダに直接接続するかのような設定ソフトしかない。TCP/IPの設定項目の隣に市外局番からの電話番号入力欄があるのは今からすれば理解不能。

接続のソフトさえあれば無線アクセスポイントへ接続できそうな状況にはなっている。PocketPC2003対応のドライバなので、おそらくそのOSには接続するためのソフトウェアが備わっているのではないかと思う。で次にできそうな可能性のある方法としては、

現在のカードが認識された状態で、認識できなかったドライバに付属していた接続ユーティリティソフトを使えるようにしてみる
他社製で使える無線lanカードドライバと接続ソフトがないか探す
汎用な無線lan接続のソフトウェアがないか海外も含めて探す
というようなことを考えているが、正直どれも厳しそうな印象。

シグマリオン2をリカバリ(出荷状態)して試してみた
ネットワーク構成一覧に過去に取り付けたネットワークアダプタ一覧がたまっていたのでどうやったら削除できるのかと考えていたが、デバイスマネージャー的なものがシグマリオン2に搭載されているOSにはないようなのでそれをシステムのキャッシュかなにかで記憶しているのかなと思って本体背面の内蔵のボタン電池を取外してバッテリも外して背面のリセットボタンを押してみた。すると、シグマリオン2の本体の記録は全て消えて意図せずリカバリをしてしまった。どうやら、それらの手順がシグマリオン2のリカバリ手順だったらしい。(´Д`;)

で、気を取り直して、これなら流石にインストール成功するだろうと思って無線lanアダプタのドライバをインストールしてみた。一応このドライバが普通にインストールできて、カードを認識して、付属ユーティリティソフトを正常に操作することは以前に経験済みだったので。だが、

これである。これは流石に唸った。なんでだよと。リカバリしたまっ更な状態でドライバインストールして初期化エラーが発生するのは納得いかない。ドライバに不具合がないと仮定して、この状況で考えられるのはリカバリしたと思ったが上手く行ってなくて以前の情報が何か本体に残っていた、または無線lanカードのハードウェア的な故障が発生した、の二通りぐらいしかない。リカバリが上手く行ってないという可能性はあり得ない。何せ本体の情報全部消えて、ためにしネットワーク情報も見てみたらそこのハードウェア接続履歴も初期化されていたのだから。残るはハードウェアの故障の可能性だが、動作確認したのはほんの3~4日前のことで、その短期間のうちに壊れたというのはちょっと考えにくい・・・。だが、ハードウェアに物理的な故障が発生したせいでデバイス接続時の初期化に失敗した、というのは経験はないが可能性としてなくもないかなとも思える。故障しているかどうか調べるには他のシグマリオン2でも同様の現象が発生するかどうか、あるいはこの無線lanカードアダプタの正常動作がとれている別の同一品でこのシグマリオン2でためしてみる、というのが考えられる。もし壊れてなかったとしたらさらに謎が深まるが・・・。
このgw-cf11hというカードのドライバ、hpc2000対応版だと上記の初期化エラーが発生するが、試しにPocketPC2003対応版の方のドライバでやってみると認識したようにカードのランプが点滅を始める。これを見る限り、壊れていないようにみるのだが。特定のドライバだけ拒否反応を示すような壊れ方をするというのはこういう周辺機器では聞いたことがない。そういう現象を観測したときは普通、ドライバの不具合を疑う。とりあえず、他の機種で同じ現象が発生するかどうかを見ないことには壊れているかどうかは判断できない。

とりあえず物理的に壊れてはいない
やたら長文エントリになってしまったがこの際試行錯誤した過程をメモとして残しておく。とりあえずハードウェアは壊れていない様子(完全にそうともいえないが)。問題があるのは当該の無線Lanカードのデバイスドライバ、「GW-CF11H.DLL」というファイル。このファイルに問題があるせいでカードを挿入したときの初期化エラーが発生している。で、前述の認識していたPocketPC2003用のドライバは「PRISMNDS.DLL」という名前のDLLファイルとなっている。このPRISMNDS.DLLをGW-CF11H.DLLへリネームして、PocketPC2000用のドライバをインストールした直後のWindowsディレクトリに置き換えてリセット、カード挿入としてみたら問題なく認識して、付属のユーティリティソフトの操作もできるようにはなった。そこまではできるようになった。まだ問題は残っている。

接続できるようになった

前の段階の時点で接続まで一歩手前ぐらいまでは来ている実感はあったが、ちょっとした設定ミスのせいだと思うが最後の接続ができなかった。ちょっと煮詰まってきていたので別のアプローチでドライバインストールを試してみた。
GW-CF11Hという無線lanカードはPRISMNDS.DLLというドライバで認識する。PRISMNDS.DLLでググってみて、このドライバを使っている別製品の無線lanカードを探してみたところ、Intersil Prismという製品も同じドライバをつかっているということがわかった。同じドライバをつかっているんだったら、理論上それで使われているソフトウェアをGW-CF11Hでも使えるはず、と思って試してみたら見事うまく認識・アクセスポイントへ接続できた。

このソフトとドライバのダウンロード先は
・https://www.hpcfactor.com/downloads/details.asp?r=%7B2A27FFA3-D1AB-4B7D-AEFD-0861062296A0%7D

そこから私がダウンロードしたファイルは
・CE300-inflated.zip 1.7.37 956 KB

ダウンロードしたファイルを展開するとCABファイルがいろいろ入っていて、シグマリオン2にインストールしたCABファイルは
・PRISM.4000.CAB

というような感じ。CABファイルをダブルクリックするとドライバとユーティリティソフトがインストールされて、終わったらリセット、再起動後にGW-CF11Hを挿入、カードのアダプタ名を聞かれたらPRISMNDS.DLLと入力(聞かれたかどうかうろ覚え)、コントロールパネル内にPRISM Settingsという無線の設定ソフトがインストールされているのでアクセスポイントやパスワードを正しく設定して接続完了。

右下のタスクトレイに接続のユーティリティソフトが常駐し、無線接続のONとOFFを切り替えられるようになっている。切るときはカード抜かないとダメかと思ってたがそれはないか。よくできているソフトだと思う。

余談
接続はできるようになったのでこれ以上の作業は必要ないが、PRISMNDS.DLLをGW-CF11H.DLLとリネームしてGW-CF11Hユーティリティを起動すればおそらくは接続できると思う。私の設定ミスがあっただけで。別製品のドライバとソフトウェアを使っているという居心地の悪さを感じるものの、当該のGW-CF11Hも不具合のあるドライバを現在も公開している販売会社の信用のできなさもあって、まあどっちもどっちかと思う。

いまだに謎なのは、cardinitialize failedのエラーを発生する元のGW-CF11H.DLLを使って短期間ながら普通に動いていたこと。あれは幻覚か・・・。

余談2
晴れて外のネットワークに繋げることができるようになったが、搭載のIEが古いことととストレージ容量の小ささのせいでほぼ機能しないことがわかった。IE4.0ではhttpsから始まる最近のウェブサイトを表示することができない。メール送受信機として使おうにも、CFスロットを無線LANで埋めてしまっては受信したメールを保存する場所が内蔵の最大でも32MBのメモリしかないのですぐにいっぱいになってしまうだろう(このストレージはプログラムとか他にも使う必要がる。それとこの間メインPCの古いメールをごっそり削除したらGB単位でディスクスペースが空いたんで容量32MB程度じゃ話にならないと思っている)
なので、利用としてはもっぱらローカルエリア内のメインPCとサーバーPCとの軽めのファイルの送受信のみといった感じ。PDAでPIM用途のためのシグマリオン2だから別に問題も不満もない。

それにしても、ネットワークにつながっていない状態でメインPCとシグマリオン2の間でファイルをやりとりするのはめちゃめちゃ手間暇がかかる。通信手段は豊富にあるものの、それができるかどうかその人の環境による。私の場合は幸いにも過去に購入していた赤外線通信用のPCでの受信機があったためにシグマリオン2と直接やりとりすることができた。もしそれを持ってなければCFカードにファイルを書き込んでシグマリオン2に差し込んでコピーしてとかやらないといけない。それをやるにしてもCFカードリーダーなどがやはり必要になる。他にはシリアルポートを使った通信ケーブルによる接続ができるようだが、それもやはりそのケーブルを持っているかどうかにかかってる。人によってはメインPCとの接続で詰むな。シグマリオン3ならSDカードスロットがあるようなのでもっと楽にできると思うが残念ながらシグマリオン2にはTYP2のCFカードスロットしかない。(CFカードにSDカードを装着するアタッチメント的な製品も存在してる様子。私は持っていないが。)

-雑記・雑学

Copyright© まとまりのないブログ , 2019 All Rights Reserved Powered by STINGER.