「USBコントローラーのリソースが足りません」の原因|給電不足・帯域・エンドポイントを1台ずつ外して切り分ける【2026年版】
本記事にはアフィリエイト広告(Amazon・楽天市場等)のリンクが含まれています。
数えるのは端子や台数ではなくエンドポイント
USB機器を1台増やした途端に「Not enough USB controller resources」「USBコントローラーのリソースが足りません」と出て、新しい機器どころか既存の機器まで動かなくなることがあります。端子は空いていて、ハブには電源も付けているのに起きるため、原因が分かりにくい通知です。
数えられているのは端子の数でも機器の台数でもなく、USBホストコントローラーが管理するエンドポイントの数です。ホストコントローラーが扱えるエンドポイントの数には限りがあり、接続中の機器の合計が超えるとWindowsがこの通知を出します。1台のUSB機器は最大32のエンドポイントを使い、コントローラー全体の上限は機種で違い、100未満のものもあります。
全コントローラーに共通する決まった台数や数値はありません。通知を記録して機器を1台ずつ外す試験で「どの組み合わせで出るか」を押さえ、接続ツリーで機器がどのコントローラーにぶら下がっているかを確かめます。同じコントローラーに集中していれば差し替えて分散し、それでも足りないときだけ追加のUSBコントローラーを検討します。
目次
仕組みこの通知が数えているもの
Microsoftの資料では、エンドポイントはUSB機器の側にあるバッファーで、ホストはそこへデータを送り、そこから受け取ります。すべての機器に、機器の情報取得や設定に使う制御用のエンドポイント(Endpoint0)が必ず1つあり、データ転送用のエンドポイントは一方向で、種類(control・interrupt・bulk・isochronous)や性質がエンドポイント記述子に書かれています。MicrosoftのUSB Endpoints and Their Pipes
キーボードのように単純な機器は少なく、ヘッドセットのようにマイクとスピーカーを持つ機器は多くなります。NIの資料にも、1台の機器が複数のエンドポイントを持つ例としてマイクとスピーカーを備えたヘッドセットが挙がっています。NIのWindows USB Resource Error資料
消費量は機種ごとに大きく違います。Plugableが自社製品について公開している数では、キーボード・マウス用のレシーバー(キーボード2、マウス1)が3、メモリーカードリーダーが2で、Bluetoothアダプター1機種は17です。ハブもエンドポイントを使い、同社のUSB 3.0ハブでは2〜6、USB 2.0ハブでは1〜3でした。PlugableのNot Enough USB Controller Resources Errorこれは同社製品の値で、お使いの機器の数ではありません。
コントローラー側の上限は、NIの資料では機種により100未満のものがあり、新しい制御用コントローラーで64台・128エンドポイント、古いもので32台・127未満という例が示されています。Cambrionixの資料は、新しめのマザーボードのxHCI(USB 3.0)コントローラーで64〜128、一般的に96としています。資料ごとに数字が違うため、自分のPCの上限は一つの数字では決められません。
切り分け端子数・給電・帯域・リソースは別の条件
USBが絡む不調は、症状が似ていても条件が別です。通知の文言がリソース不足であれば最初に疑うのはリソースですが、ほかの条件が重なっていることもあるため、表で位置づけを確かめてから進めます。
| 条件 | 出やすい症状 | 確認すること |
|---|---|---|
| 端子数不足 | 物理的に挿す場所がない | 空き端子の数。ハブで増やすとハブ自身もエンドポイントを使います |
| 給電不足 | 接続が切れる、電流超過の表示、機器が起動しない | バスパワー機器の消費電力、ハブへのACアダプター |
| 上流帯域の不足 | 転送が遅い、映像や音声が途切れる | 同じ上流に高速機器が集中していないか |
| コントローラーのリソース不足 | 「リソースが足りません」の通知、機器が増えると新旧どちらも動かない | 機器を1台ずつ外した結果と、接続先のコントローラー |
給電を足してもエンドポイントの消費は減りません。セルフパワーのハブにしても、ハブ自身がエンドポイントを使うことに変わりはないため、電源付きのハブに替えてもこの通知が消えるとは限りません。ACアダプター付きのハブは給電不足の対策であって、リソース不足の対策は別に考えます。電流超過の表示や切断が中心ならUSB Device over current status detectedの原因、転送が遅いだけならUSB 3.0ポートで速度が出ない場合が入口です。
デバイスマネージャーのコード12「使用できる空きリソースが不足しています」は、PCIeなどのOSのリソース割り当てを扱う別のエラーです。USBの通知とは原因が違うため、コード12の切り分けとは分けて読んでください。
手順通知を記録して1台ずつ外す
- 通知の全文を残します。スクリーンショットを撮り、文言を控えます。NIの資料に載る形は「Not enough USB controller resources」と「You have exceeded the number of supported USB devices on the Host Controller」で、PC側のメッセージは環境により違います。
- 接続構成を書き出します。機器名、挿している端子、ハブの有無、ハブの電源、PCの前面か背面かを紙かメモに書きます。ハブにぶら下げた機器は、どのハブかも分けて書きます。
- 不要な機器をすべて外します。NIは最初の対処として、使わないUSB機器を抜くことを挙げています。マウス・キーボードなど動作に必須の機器だけを残します。
- 通知が出る機器を1台だけ接続します。単独でも通知が出るなら、台数の積み上げではなく、その機器自体か給電・ドライバーなど別の問題の可能性が高まります。この場合は機器名のエラーコードで調べます。
- 1台ずつ戻して、通知が出た時点の構成を記録します。「Aを戻すと動く、Bを戻した時点で出る」のように、境目になる機器を見つけます。次に、AとBの組み合わせだけで試し、順番を入れ替えても同じかを確かめます。
- 戻す順を変えて、もう一度試します。出る機器が毎回同じなら、その機器のエンドポイントが多い可能性があります。戻した順で出る機器が変わるなら、機器の数が積み上がって上限を超えたと考えられます。
試験の最後は、ステップ2で書いた元の構成に戻します。ハブの先の機器を直付けにして動いた場合は、その接続を新しい構成として記録し、元の端子に戻したときの再発の有無も確認します。
接続先機器がどのコントローラーにつながっているかを見る
端子を替えても、同じホストコントローラーの配下に残ることがあります。PC内蔵のUSB端子と内蔵機器が1つのホストコントローラーにまとまっていると、早くリソースを使い切ることがあります。機器を差し替える前に、接続先を確認します。
デバイスマネージャーで見る
Windowsキー + Rでdevmgmt.mscを実行し、デバイスマネージャーを開きます。- メニューの「表示」から「接続別のデバイス」を選ぶと、コントローラーごとに機器が木の形で並びます。ホストコントローラーはデバイスマネージャーで確認できます。
- 「ユニバーサル シリアル バス コントローラー」を開き、ホストコントローラーが複数あるかを確かめます。端子ごとに別のコントローラーに分かれている場合もあれば、まとまっている場合もあります。
- 表示を戻すときは「表示」から「種類別のデバイス」を選びます。
MicrosoftもUSB情報の確認にデバイスマネージャーを案内しており、「非表示のデバイスの表示」で接続していない機器も見られます。MicrosoftのUSBViewとデバイスマネージャーの案内
USBViewで機器の中身を見る
USBViewは、Windows SDKのDebugging Tools for Windowsに含まれるMicrosoftのツールです。左のペインにはホストコントローラーからハブ、機器へと続く接続ツリーが出ます。右のペインには選んだ機器のDevice・Configuration・Interface・Endpoint Descriptorsが並び、機器がいくつのエンドポイントを持つかの手がかりになります。
- ツリーで、通知の境目になった機器とハブがどのコントローラーの下にあるかを確かめます。
- 機器を選び、Endpoint Descriptorsの数を見ます。数が多い機器が、同じコントローラーに集まっていないかを見ます。
- Microsoftの説明にあるのは接続ツリーと各機器の記述子で、コントローラーの残り容量が出るとは書かれていません。数字の合計を足して「上限まであと何個」と決めつけず、分散の判断材料として使います。
USBViewは古いアプリで、新しいUSBの情報が表示されない場合があるとMicrosoftが注意しています。見えない項目は、デバイスマネージャーで補います。
対処試験の結果から選ぶ
USB 2.0接続に回す場合の条件
PlugableとCambrionixは、速度が要らない機器をUSB 2.0側に回すことを対処に挙げています。USB 2.0は転送速度が480 Mbpsまでに抑えられる一方、エンドポイントの上限の影響を受けにくくなります。
- キーボード、マウス、ゲームパッド、小さなドングルのような低速で足りる機器から試します。
- 外付けSSD、キャプチャーボード、高解像度のWebカメラ、USBオーディオインターフェースは、機器が必要とする速度と機能を先に調べてください。USB 2.0接続では動作が変わったり、一部の機能が使えなくなったりします。
- BIOSでxHCIを無効にしてUSB 2.0のコントローラーを使う方法も、Plugableは「BIOSが対応していれば」の条件付きで挙げています。すべてのUSB 3.0接続が影響を受ける設定なので、最後の手段にしてください。変更前にBIOSの設定を控え、戻せるようにしておきます。
- Microsoft Q&Aには、Xbox 360用ゲームパッドを3台目から検出できず、BIOSでxHCIを無効にしても直らなかった投稿があります。解決策が示されていない例で、無効化が確実な方法とは言えません。Microsoft Q&Aの投稿
ドライバーの再インストールは別の試験にする
同じQ&Aの回答には、デバイスマネージャーでUSBホストコントローラーをアンインストールし、再起動してWindowsに入れ直させる方法が載っています。ホストコントローラーが2種類あれば両方を対象にします。こちらは台数の上限そのものを変える方法ではなく、ドライバーの状態を疑うときの試験です。USBのキーボードやマウスが一時的に使えなくなるので、操作できる手段(Bluetooth機器やタッチ操作など)を用意してから実行してください。
追加増設カードを選ぶ前に確かめること
コントローラーを増やす選択は、ここまでの試験で「分散できない」と分かってからにします。ハブで端子を増やしても、ホストコントローラーは増えません。NIの資料では、ThunderboltのドックならUSBコントローラーを追加できる場合がある一方、USB-Cハブは普通のUSBハブとして働くため追加になりません。
PCIe増設カードを検討するときは、ポートの数ではなく、独立したホストコントローラーを何基積むかを製品の仕様で確認します。Cambrionixは、複数のホストコントローラーを持つカードならコントローラーごとに約96エンドポイントを確保できるとしています。ポートごとに別のチップを使うカードの例、ハブとの違い、選び方はゲーミングPCのUSBポートが足りない時の増やし方にまとめています。
FAQよくある質問
まとめ1台ずつ外して境目を見つけ、接続先を分ける
通知は台数や端子ではなく、ホストコントローラーのエンドポイントが足りないときに出ます。通知と構成を記録し、機器を1台ずつ外して戻して境目を見つけます。接続ツリーで同じコントローラーに集中していれば、ハブを減らして別の端子へ分けます。分散しても足りないときに限り、独立したコントローラーを持つ増設カードを検討してください。

