Get IT Done: Windows XP の USB に関する問題のトラブルシューティング - TechRepublic

Get IT Done: Windows XP の USB に関する問題のトラブルシューティング - TechRepublic

USBデバイスは、シリアルやパラレルベースのデバイスに比べて設定が簡単で、問題の発生率が低いと言えるでしょう。しかし、それでも問題が発生する可能性はあります。Windows XPでUSBデバイスが正常に動作しない場合は、問題の種類と発生時期に応じてトラブルシューティングを調整する必要があります。以下に、USB設定に関するよくある問題とその解決策をいくつか示します。

Windows XPへのアップグレード後のUSBの問題
他の周辺機器と同様に、コンピュータをWindows 98、Me、または2000からXPにアップグレードした後にUSBデバイスが問題を引き起こすことは珍しくありません。アップグレード後に問題が発生した場合は、まずデバイスがXPと互換性があるかどうかを確認する必要があります。Windows XPのハードウェア互換性リスト(HCL)とメーカーのサイトで、XPとの互換性に関する情報を確認してください。また、最新のデバイスドライバーをダウンロードしてインストールすることもお勧めします。

残念ながら、どちらの方法でも問題が解決する保証はありません。XPのHCLに記載されているデバイスが正常に動作しないケースもあれば、HCLに記載されていないデバイスが、使用するドライバーによっては正常に動作しないケースもありました。場合によっては、試行錯誤を繰り返すしかないこともあります。ハードウェアがWindowsで正常に動作することを確認する方法については、John SheesleyによるTechRepublicの記事をご覧ください。

Windows XP が USB デバイスを認識しない
Windows XP が、どのポートに接続しても USB デバイスを認識しない場合は、BIOS または Windows の設定に問題がある可能性があります。一部のコンピュータでは、BIOS に USB に IRQ を割り当てるかどうかを尋ねる設定オプションがあります。このオプションの実際の表記は BIOS メーカーによって異なりますが、このオプションを「オン」または「はい」(BIOS メーカーと BIOS バージョンによって異なります)に設定して有効にする必要があります。有効にしないと、USB デバイスは XP で動作しません。

Windows XPのUSBコントローラの設定に問題があると、USBデバイスが動作しなくなることもあります。USBコントローラが正常に動作しているかどうかを確認するには、デバイスマネージャを開き、「ユニバーサル シリアル バス コントローラ」ノードを展開します。このノードの下に、「USBユニバーサル ホスト コントローラ」と「USBルートハブ」が表示されます。PCによっては、USBポートごとにUSBユニバーサル ホスト コントローラとUSBルートハブが表示される場合と、複数のポートごとにUSBユニバーサル ホスト コントローラとUSBルートハブが表示される場合があります。

例えば、私のテストマシンはすべて、図Aに示すように、USBポートごとに個別のUSBユニバーサルホストコントローラーとUSBルートハブエントリを持っています。一方、編集者のHP Kayakでは、マシンの両方のポートに対して1つのUSBユニバーサルホストコントローラーとUSBルートハブしかありません。なぜそうなるのかは完全には分かりませんが、PCのマザーボードによって異なるのではないかと思います。マザーボードのメーカーによっては、複数のポートを1つのUSBコントローラーに搭載しているところもあれば、各ポートを別々のコントローラーに搭載しているところもあります。

図A
問題を探すには、ユニバーサル シリアル バス コントローラー ノードを展開します。

お使いのPCにUSBユニバーサルホストコントローラーとUSBルートハブのエントリがいくつあっても、アイコンに赤い×印が付いているものは無効になっています。デバイスが無効になっている場合は、デバイスを右クリックし、表示されるショートカットメニューから「有効」を選択することで有効にできます。

デバイスマネージャーを開いている間に、USBポートで使用されているドライバーを確認することをお勧めします。確認するには、USBコンポーネントを右クリックし、「プロパティ」をクリックして「ドライバー」タブを選択します。異常なハードウェアを使用していない限り、「ドライバー」タブのドライバープロバイダーは「Microsoft」と表示されるはずです(図B)。デジタル署名者は「Microsoft Windows XP Publisher」になっているはずです。それ以外の場合は、いくつかの選択肢があります。

「ドライバーの更新」ボタンをクリックすると、新しいデバイスドライバーを入手できます。一方、最近ドライバーを更新した後に問題が発生した場合は、「ドライバーを元に戻す」ボタンをクリックして以前のバージョンに戻すことができます。

図B
[ドライバー] タブには、ドライバー プロバイダーとして Microsoft がリストされ、デジタル署名者として Microsoft Windows XP Publisher がリストされます。

ドライバは正常のように見えるのに、USBデバイスが全く動作しない場合は、「アンインストール」ボタンを使用してください。これによりドライバが完全に削除され、WindowsはUSBポートが存在しないものと認識するようになります。その後、「システムのプロパティ」シートに戻り、「ハードウェアの追加ウィザード」ボタンをクリックします。これにより、WindowsはコンピュータのUSBポートを再検出できるようになります。通常、再検出プロセス中に、Windowsは標準のMicrosoftドライバを使用してポートを有効にしようとします。コンピュータのUSBポートに物理的な問題がない場合、これで問題は解決するはずです。

帯域幅と電力の問題
USBデバイスでよくあるもう一つの問題は、同時に使用できるUSBデバイスの数に限りがあることです。これは、USB 1.1ポートの帯域幅が12Mbps(メガビット/秒)(USB 2.0では480Mbps)と500mAに制限されているためです。これらの制限のいずれかを超えると、USBデバイスは動作を停止します。

まず、帯域幅の制限について見てみましょう。残念ながら、帯域幅の制限を超えるUSBデバイスの正確な数を特定することはできません。また、USB帯域幅を確認するためのパフォーマンスモニターオプションもありません。USBデバイスの種類と使用方法は、デバイスが消費する帯域幅の量に影響します。例えば、スキャナーやデジタルカメラは、大量のデータをコンピューターに転送するため、多くの帯域幅を消費する傾向があります。一方、スキャナーは、データを転送しているとき以外は、ほとんど帯域幅を消費しません。

USB帯域幅の制限を超えているかどうかを確認する最良の方法は、特定のUSBポートに接続されているデバイスの数と、それらのデバイスがどのように使用されているかを確認し、常識的な判断をすることです。多数のUSBデバイスが接続されている場合、またはデバイスが大量のデータを送受信する傾向がある場合は、ポートの利用可能な帯域幅の限界を超えている可能性があります。

消費電力は帯域幅の消費量よりもはるかに簡単に把握できます。消費電力を把握するには、いくつか留意すべき点があります。まず、コンピューターの各USBポートは500mAを供給します。この500mAは、接続されているすべてのデバイスで共有する必要があります。USBポートに1つのデバイスを接続する場合、ほとんどのUSBデバイスの消費電流は100mA程度なので、消費電力を考慮する必要はありません。

USBハブを接続すると、状況が面白くなってきます。USBハブをUSBポートに接続すると、ポートの500mAをUSBハブとハブに接続されたすべてのデバイスで共有する必要があります。USBハブはデイジーチェーン接続も可能です。デイジーチェーン接続する場合、最大5台のハブを直列に接続できます。ただし、500mAは接続されたすべてのハブとデバイスに電力を供給するのに十分な電流である必要があります。USBハブは、他のデバイスが接続されていない場合でも電力を消費します。

この問題を回避するため、多くのメーカーが外部電源付きのUSBハブを製造し始めています。外部電源付きのUSBハブを使用すると、ハブに合計500mAの電流が供給されます。つまり、複数の電源付きハブをデイジーチェーン接続した場合、各ハブは自給自足となり、コンピューターのUSBポートや他のハブからの電力をほとんど消費しません。

すべてのハブに電源が供給されている場合でも、注意すべき制限事項があります。まず、ハブに電源が供給されているかどうかにかかわらず、ハブ5台までの制限は適用されます。もう1つの制限事項は、過剰な電力消費をするUSB​​デバイスをハブ1台に接続して過負荷状態にしないことです。最後に、外部電源は帯域幅の拡張には役立ちません。各ハブに4台のデバイスを接続した5台のハブを相互接続する場合、過剰な電力消費をするデバイスがない限り、1つのUSBポートに20台のUSBデバイスを接続できます。ただし、同時に、これらの20台のデバイスは12Mbpsの帯域幅を共有する必要があります。

最初に電力消費についてお話しした際に、帯域幅の使用量よりも電力の使用量を判断する方が簡単だと述べました。Windows では、USB デバイスが実際にどれだけの電力を消費しているかが表示されます。ただし、その確認方法を説明する前に、理解しておいていただきたいことが 1 つあります。これから示す数値は、実際の電力消費量ではなく、USB ポートの電力がどれだけ使用されているかを示しています。コンピューターには、電源付きの USB ハブを接続できることを覚えておいてください。電源付きのハブが接続されている場合、デバイスはコンピューターの電源ではなく、ハブの電源から電力を供給されます。そのため、コンピューターには、USB ポートから供給される電力が非常に少ないか、まったくないことが表示されます。

USBの電力消費量を確認するには、デバイスマネージャーに戻り、「USBルートハブ」のエントリを右クリックし、「プロパティ」をクリックしてUSBルートハブのプロパティシートを表示します。「電源」タブを選択すると、図Cに示すように、USBポートから消費されている電力が表示されます。

図C
「電源」タブには、USB デバイスが消費している電力が表示されます。

デバイス(またはデバイスの組み合わせ)が過剰な電力を消費すると、通常、ハブはポートをオフにします。ポートを再び機能させるには、デバイスを取り外し、ポートに再接続する必要があります。使用しているハブの種類によっては、ポートをリセットするように求めるダイアログボックスが表示される場合もあります。

特定のUSBデバイスのトラブルシューティング:
すべてのUSBポートではなく、特定のUSBデバイスに問題がある場合は、比較的簡単な手順でデバイスを動作させることができます。USBハブを含むすべてのUSBデバイスをシステムから取り外すことをお勧めします。次に、正常に動作することが確認されているUSBデバイスをシステムに接続します。正常に動作することが確認されているデバイスが動作すれば、ポート自体に問題はないと確信できます。

故障していたデバイスを取り出し、他のUSBデバイスがシステムに接続されていない状態で、コンピューターのUSBポートの1つに直接接続します。デバイスが動作するようになった場合、以前の問題にはいくつかの原因が考えられます。最も可能性が高いのは、デバイスが他のUSBデバイスと競合していたことです。USBデバイス同士が競合する原因の一つは、共通のシリアル番号を持っていることです。システム内の各USBデバイスには、それぞれ固有のシリアル番号が必要です。2つのデバイスに共通のシリアル番号が設定されていることは非常に稀ですが、実際に発生した事例が記録されています。

デバイスが動作し、他のデバイスとシリアル番号を共有していない場合は、USBハブの過負荷またはデバイスドライバの競合が原因で故障していた可能性が高いです。この問題を解決する唯一の現実的な方法は、様々な組み合わせのUSBデバイスを接続して試行錯誤し、故障したデバイスと競合しているデバイスを特定することです。問題の原因となっているデバイスを特定したら、デバイスを別の物理USBポートに移動するか、両方のデバイスのドライバを更新することで問題を解決できる場合が多くあります。

他のUSBデバイスを接続せずに、故障したデバイスだけを接続しても問題が解決しない場合でも、解決策が全くないわけではありません。コンピューターのイベントログで故障の手がかりを探すことをお勧めします。イベントログに手がかりがない場合は、故障したデバイスを別のコンピューターに接続してみてください。別のコンピューターでデバイスが動作すれば、デバイスは正常であると確信できます。

代替コンピュータがWindows XP以外のオペレーティングシステムを使用している場合、デバイスまたはそのドライバがWindows XPと互換性がない可能性があります。その場合は、デバイスの製造元に連絡して、Windows XPでデバイスを使用する際に既知の問題がないか確認することをお勧めします。USBデバイスをWindows XPで動作させるには、新しいドライバとファームウェアのアップグレードだけで済むというケースを何度か経験しました。

代替コンピュータが Windows XP を実行しており、デバイスが動作している場合は、各マシンで使用されているデバイス ドライバーのバージョンを確認し、最新でなくても動作するものを使用することをお勧めします。

Tagged: