Back to all articles
TECHNICAL

USB Bandwidth & PCIe Expansion for BoxPhone

Sikrid Team avatarSikrid TeamSikrid Engineering Team

Why devices stop appearing when you plug in too many — and how PCIe USB cards break through the limit

2026-04-265 min read
Plug BoxPhone into one PC over USB and you usually max out at 2-3 boxes (50-60 devices) before the USB controller bandwidth fills up and any new device you plug in simply doesn't show up. The fix is a PCIe USB expansion card — Sikrid sells one for 6,500 baht that handles 5 boxes (100 devices) per card.

Why a 30-Port USB Hub Isn't Enough

Most people think “more ports = more devices I can plug in”— but actually, every port on your hubs and motherboard shares the same USB controller bandwidth. Think of it like a road with one lane: adding more on-ramps doesn't make the road any wider.

Standard USB 3.0 controllers have a hard ceiling:

  • USB 3.0 (5 Gbps) ≈ 500 MB/s per controller
  • USB 3.1 Gen 2 (10 Gbps) ≈ 1.2 GB/s per controller
  • USB 3.2 (20 Gbps) ≈ 2.4 GB/s per controller

Most consumer motherboards have only 1-2 USB controllers total — and every port you can see (8-12 on the back, plus the front panel, plus any external hub) shares that one bandwidth pool.

As you plug in more devices, each one gets a smaller slice of bandwidth — until eventually the OS literally can't enumerate (can't recognize and assign) any new device because there's no bandwidth left to give it.

How to Check If USB Bandwidth Is Full

On Windows:

  1. Open Device Manager
  2. View menu → Devices by connection
  3. Expand each USB Hub → right-click Properties → Advanced tab
  4. Look at Bandwidth utilization — close to 100% means full
Windows screen showing saturated USB bandwidth — the reason new devices stop appearing
An example Windows screen with the USB controller bandwidth maxed out — new devices won't appear

Easy ways to tell:

  • You plug in a new device but it doesn't show up in adb devices
  • Device list in the OS shows “Code 10” or “Insufficient resources”
  • Devices that used to work fine drop out randomly when you plug new ones in

The Fix: PCIe USB Expansion Card

To run more than 60 devices on a single PC, you have to add another USB controller through a PCIe slot — not by plugging in more USB hubs (hubs all share the existing controller).

What to check on the spec sheet:

  • Card bandwidth — at least 20 Gbps (USB 3.2 Gen 2x2)
  • PCIe slot typex4 or higher (x1 bottlenecks at around 1 GB/s)
  • Controller chip — go with stable Renesas or ASMedia chips, skip no-name ones
  • Power input — some cards need an extra Molex/SATA power connector from the PSU

Sikrid PCIe USB Card

  • Price: 6,500 baht / card
  • Capacity: 5 boxes (100 devices) per card
  • Bandwidth: 20 Gbps controller, totally separate from the motherboard's
  • BoxPhone tested: passes 24 hours of burn-in with 100 devices plugged in at once before we ship it

What to Know Before Buying a PCIe USB Card

  • Motherboard has to have room — at least 1-2 free PCIe slots where the GPU isn't in the way
  • Check the slot spec — it has to be PCIe x4 or higher (the motherboard manual states this clearly)
  • PSU has to have headroom — power for the controller chip plus all the devices running through the card
  • Airflow in the case — the controller chip runs hot under load, no airflow means it'll throttle
  • Driver compatibility — Windows 10/11 is plug-and-play on most cards; Linux may need you to compile the driver yourself

Scaling Roadmap — When to Use What

Device CountUSB SolutionNotes
1-60 (1-3 boxes)Motherboard USBEnough — nothing extra needed
60-300 (3-15 boxes)+ 1-3 PCIe USB cards1 card = 5 boxes on its own controller
300+ (15+ boxes)Split across PCs + OTG modeSee OTG over LAN

Conclusion

USB controller bandwidth is the real ceiling when scaling a phone farm — not the number of ports on your hub.

Always check first in Device Manager → Bandwidth utilization before deciding that you “can't plug in any more devices.”

If it's full, add another controller through a PCIe USB card with 20 Gbps+ bandwidth in a PCIe x4+ slot — Sikrid offers one for 6,500 baht that handles 5 boxes on its own separate controller.

Past 300 devices on a single PC, switch to OTG mode over LAN instead.

FAQ

01Will a 200-baht USB hub solve this?+

No. Plug an external USB hub into a motherboard port and it still uses the same controller behind the scenes — same lane, same traffic jam. A hub adds ports, not bandwidth. The only real fix is to add another controller through a PCIe slot.

02Are cheap PCIe USB cards from Lazada good enough?+

Fine for home-office use, not for a phone farm running 24/7. Most of the cheap ones use older ASMedia chips that overheat or have shaky drivers. For production, go with newer Renesas chipsets or the Sikrid card we've burn-in tested ourselves.

03My motherboard only has PCIe x1 slots — can I install the card there?+

It physically fits, but you'll hit a bottleneck — a PCIe x1 slot only does about 1 GB/s, not enough to feed 100 devices. You want x4 or x8. Check the motherboard manual — the small slots used for Wi-Fi cards or NVMe expansion are usually x1.

04Can I run two PCIe USB cards in the same PC?+

Yes, as long as you have a free PCIe x4 slot and the PSU has headroom. That gets you up to 200+ devices on one PC. Beyond that, splitting across multiple PCs or going OTG (over LAN) is the better path.

05Does Linux support the Sikrid PCIe USB card?+

Yes — Linux kernel 5.x and later includes the xhci drivers needed for standard controllers. Plug-and-play on most distros. If you're on an older Ubuntu LTS, you may need to update the kernel.

06Does the card work on Mac?+

Tower-style Mac Pros yes. Mac Mini and iMac don't have PCIe slots, so no. For a production phone farm we recommend Windows or Linux anyway — the driver ecosystem is far more complete.

Further Reading

Related Articles

All articles →
READ MORE / INQUIRE

Ready to deploy BoxPhone? — Talk to the Sikrid team

We design and assemble BoxPhone in Thailand with a complete Enterprise Device Management system in a single platform. See more on TikTok @sikridphonefarmth