Introduction

In this step-by-step guide, you'll learn how to build a modem pool of 10-50 modems from scratch and ensure its stable operation around the clock. We will cover power supply, selection of powered USB hubs, cooling and placement, device addressing, port management, scaling, monitoring, and maintenance. You will receive clear instructions on building the modem pool, detailed steps, checkpoints, and recommendations to eliminate mistakes. The end result will be a fully functional modem pool that can be used for testing mobile networks, distributing application traffic, automating QA, and legal web monitoring while complying with legislation and telecom operators' conditions.

This material is suitable for advanced users and engineers who are ready for practical assembly, yet it is written in simple language. If you have never built similar farms before, you’ll still be fine: every step is explained in as much detail as possible. A basic understanding of computer operations and software installation skills is assumed, but we will clarify all important terms and principles. To speed things up, we will mention recommended utilities and configurations that have been field-tested.

What you need to know in advance: we will be working with low voltage electricity (5-12 V), USB equipment, drivers, and network settings. Carefulness is key, ensuring proper polarity of the power supply, and understanding that the pool's stability directly depends on the quality of power, cooling, and USB topology. Time to execute: preparatory audit and component procurement take 1-3 days, physical assembly 2-6 hours for 10-20 modems and 1 working day for 50 modems. Basic software setup for Linux or Windows takes 1-3 hours, while advanced monitoring takes 2-4 hours. By the end, you will have a ready-to-use pool with understandable addressing, predictable behavior, and a maintenance plan.

We consciously do not cover topics that may conflict with the law or operators' conditions, nor do we discuss bypassing restrictions, VPNs, or other illegitimate scenarios. Our focus is on reliable engineering implementation.

Preparation

Before starting assembly, create a complete list of equipment and software. You will need: a host computer or mini-PC with at least 4-8 USB ports and a couple of free PCIe slots if scaling, or a single-board computer class x86 or ARM with USB 3.0; 10-50 LTE/5G USB modems supporting CDC, MBIM, or QMI; powered USB hubs rated for high current loads with separate power feed for each port; 5V or 12V power supplies of suitable capacity; USB-A to USB, USB-C to USB, or micro-USB cables depending on your modems; high-quality power wires with adequate cross-sections; 120-140 mm fans, grilles, and filters; a mounting frame, shelf, or rack; trays for SIM cards, stickers, thermal sensors; if necessary, USB relays or hubs with per-port power control; and UPS for uninterrupted operation.

Software for Linux: ModemManager, NetworkManager, usb-modeswitch (if needed), lsusb, dmesg, mmcli, nmcli, monitoring tool (Prometheus node exporter or Zabbix agent), logrotate. For Windows: Device Manager, manufacturer drivers for the modems (if required), PuTTY or similar terminal for diagnostics, PowerShell for automation, operator utilities. Minimum system requirements: CPU with 4 threads, 8 GB RAM, SSD 64-256 GB, USB 3.0. For 50 modems, it’s better to use a CPU with 6-8 threads and 16 GB RAM, as well as discrete USB controllers via PCIe. Download OS updates, install USB chipset drivers, and kernel patches. For Linux, prepare root or sudo access. Create a backup of your system settings before making changes: take a system snapshot or back up the configs from /etc/NetworkManager and /etc/ModemManager.

If you already manage a farm of devices, check materials on organizing a farm as a whole to unify approaches to labeling, cable management, and power distribution. To begin, it’s useful to study internal materials on the topic of farms, such as overview articles and basic checklists for racks and cooling. Links within the project: guide to building a USB modem farm and overview of mobile proxy farm layouts.

Basic Concepts

A modem pool is an organized collection of 10-50 (or more) USB modems connected to one or more hosts through powered USB hubs. The key idea is to ensure stable power, proper USB topology, cooling, and addressing so that each modem is available as a separate network interface or COM port and operates predictably. It's important to understand the difference between modem modes: CDC ECM/NCM (network interface), MBIM and QMI (modern management protocols), as well as PPP (an older approach through a serial port). For mass use, MBIM and QMI are preferred due to speed and reliability, as well as automatic initialization with ModemManager.

A powered USB hub is a device that draws power from a separate unit (usually 12V) and provides stable 5V to each port. It's critical that the total current and each line can withstand the actual peak loads from the modems, as in moments of network registration, data transmission, and frequency switching, consumption spikes sharply. Device addressing is a mechanism that allows you to uniquely identify a modem in the system and assign it a permanent interface or COM port name so that applications don’t get confused during restarts. Scaling is a method of adding another 10-30 modems without creating bottlenecks: adding USB controllers, distributing across hubs, ensuring proper power feed, and effective cooling to prevent temperature from degrading the radio component.

What is important to understand before starting: the pool rests on three pillars — power, air, and addressing. If the power 'drops,' devices will disconnect, and there will be Enumerate/Reset Hi-Speed USB Device errors. If air isn’t managed, modems will overheat, go into throttling, speeds will drop, and sometimes in hot weather, modems will simply turn off. If addressing isn’t fixed, automation will fail with any restart. Therefore, this entire step-by-step guide is structured to first calculate power, then buy and correctly connect hubs, organize cooling, devise addressing, and only then scale up. This way, you’ll guaranteed a stable result.

Step 1: Designing Power and Budget Calculation

Goal of the Stage

To obtain precise calculations of power and current for 10-50 modems, select the right power supplies and wires, and plan distribution among hubs to avoid voltage drops and overheating.

Step-by-Step Instructions

  1. Determine the type of modems and their peak consumption. Open the modem passport. For LTE USB modems, this is typically 0.7-1.0 A at 5V at peak. For 5G, up to 1.5 A. If the data is absent, take 1.0 A as a reference value for LTE.
  2. Calculate total current. For 10 LTE modems: 10 × 1.0 A = 10 A. For 50 modems: 50 × 1.0 A = 50 A. Add 20-30% headroom for ripples and losses. Total for 50 modems: 65 A at the 5V rail.
  3. Select a power architecture. Option A: a central high-power 5V unit (about 300-400W) and distribution through a bar or terminal blocks to the hubs. Option B: a medium power 12V unit with DC-DC step-down converters on the hubs to 5V with high efficiency. Option C: industrial hubs that receive 12V and internally step down to 5V at the ports. Option C is preferable for scaling.
  4. Select a power supply. For 10-20 modems, a 5V 20-30 A or 12V 15-25 A unit with good ventilation is suitable. For 50 modems — a 12V 60-70 A total power across several independent lines or several power supplies of 250-350W each. Make sure it has overload protection, short-circuit protection, and thermal protection.
  5. Plan the wiring. For the main line, use wires not thinner than 16 AWG (1.3 mm²) for 10-15 A, 12-14 AWG (2-3 mm²) for 20-30 A. For short branch lines to hubs — 18 AWG (0.8 mm²) for 5-7 A. The shorter and thicker the wire, the less voltage drop.
  6. Include switching and protection. Place fuses or automatic circuit breakers on the line between the power supply and each line. Use terminal blocks with screw fastening and ensure proper polarity. When working with open power supplies, place them in a protective casing with ventilation.
  7. Distribute the load among the hubs. Don’t connect all modems to one hub. Distribute 10-15 modems to one powerful hub or to a pair of medium ones so that each power branch and USB host controller operates in a comfortable mode.
  8. Check actual headroom. If your calculated current is 30 A, take a power supply that can continuously deliver 36-40 A. Modems at peak may consume more during registration and frequency switching, and you shouldn’t hit the limit.

⚠️ Attention: Never power a USB hub and modems from different sources without a common ground. An uncoordinated 'ground' can lead to failures of ports, hubs, and modems.

Tip: If you’re unsure of the power supply quality, take two identical ones and distribute the load across two buses. Reliability will be higher, and diagnostics will be simpler: by disconnecting one bus, you can check how half the pool behaves.

Tip: Keep a multimeter handy and measure voltage at the ends of the USB lines under load. The goal is to maintain at least 4.85 V under modem load.

Expected Result

You have a list of power supplies, calculated currents per line, a wiring plan, and line protection. You understand how to distribute 10-50 modems among the hubs and how to power them with the right wires.

Potential Problems and Solutions

If the modem specification doesn’t have current data, allow 1.2 A per port as a reserve. If you can’t lay thick wires, compensate for this with shorter cables and larger terminal blocks. If the power supply overheats, use a more powerful one or add active cooling.

✅ Check: Recalculate power using the formula: number of modems × 1.0 A × 5 V ÷ efficiency (usually 0.9) and multiply by the reserve coefficient of 1.3. Compare with the specified power of the power supply. If the power supply can deliver more — step completed.

Step 2: Selecting and Connecting Powered USB Hubs

Goal of the Stage

To select and correctly connect powered USB hubs, ensuring USB topology stability and eliminating port drops under load.

Step-by-Step Instructions

  1. Choose the type of hub. Look for powered hubs rated for 12V that deliver 5V to the ports, with a total current of at least 2 A for every 3-4 ports. Hubs with individual port protection and overload indication are desirable.
  2. Check the controllers. Prefer hubs based on common USB controllers with good OS support. Improved port power scheme enhances stability under peak loads.
  3. Determine port capacity. For 10-20 modems, 2-3 hubs with 7-10 ports will suffice. For 50 modems — 5-7 hubs or several modular hubs with 16-20 ports, cascading through different USB controllers at the host.
  4. Connect power. Apply 12V to the hub input while ensuring proper polarity. If the hub requires 5V, use a regulated 5V power supply and a thick power cable. Ensure the ground is common for all devices.
  5. Connect to the host. Link the hub to the host computer with a quality short USB cable (no longer than 1 meter). Prefer USB 3.0 cables with shielding, even if the modems are USB 2.0. This reduces interference.
  6. Distribute the modems. Insert the modems one by one, ensuring that each one is recognized by the system before proceeding to the next. Don’t fill the entire hub at once if you want to simplify diagnostics.
  7. Avoid deep cascading. Don’t build more than two levels of hubs in a chain. Ideally, each hub should connect to a separate host port or to different PCIe USB controllers.
  8. Label them. Stick a unique number on each hub port and on each modem. Duplicate it in the addressing table to later assign stable interface names.

⚠️ Attention: Never connect a USB hub to the host via a questionable quality extender or an excessively long cable. This is a common cause of 'hangs' and periodic reinitialization of devices, especially under vibration or heat.

Tip: If the hub supports per-port power down, use this to automatically restart stuck modems. This will save a lot of time during operation.

Tip: Keep a backup hub handy. If one hub fails, switch the cable to the backup and continue working, then deal with the faulty unit at your leisure.

Expected Result

The powered hubs are correctly supplied by the power supply, connected to the host with short quality USB cables, and the modems are evenly distributed and labeled.

Potential Problems and Solutions

If the hub does not start, check polarity and voltage at the input. If the modems are ‘blinking’ and disconnecting, replace the interconnect cable with a shorter, shielded one and check for voltage drops under load.

✅ Check: Connect one modem to each hub and ensure that the OS detects the device stably for 10-15 minutes under active traffic. Then increase the number of modems to the planned count, observing the logs for USB resets.

Step 3: Cooling and Placement

Goal of the Stage

To ensure the temperature of the modems, hubs, and power supplies to reduce communication errors, eliminate throttling, and extend lifespan.

Step-by-Step Instructions

  1. Select a layout. The ideal option is a shelf or mini-rack where the modems are arranged in a comb formation with a gap of 1-1.5 cm between them. Place hubs in a way that does not block airflow.
  2. Plan airflow. Install 2-4 fans of 120-140 mm for intake and exhaust. Air should flow either front to back or bottom to top. Avoid creating turbulence ‘in the face’ of the modems from both sides.
  3. Add filtration. Place simple dust filters on the intake fans. Dust worsens cooling and shortens the life of electronics.
  4. Monitor temperature. Place temperature sensors near groups of modems and in the PSU zone. Ensure that the temperature does not exceed 60 °C at the modems and 50 °C at the PSU under prolonged load.
  5. Control fan speeds. If fans are noisy, connect them through a PWM controller or a temperature sensor board. The goal is sufficient airflow without excessive noise.
  6. Eliminate vibrations. Secure the hubs and wires with plastic ties and holders. Vibration can lead to contact loosening and micro-disconnections.
  7. Ensure access. Leave enough space to remove each modem without disturbing neighboring ones. This will simplify maintenance.

⚠️ Attention: Never place power supplies in a sealed box without airflow. Overheating of the PSU is the primary cause of sudden shutdowns under load, and it endangers your modems and hubs.

Tip: If the modems feel hot to the touch, attach small heat sinks to their cases where they don’t obstruct antennas and ventilation. This, combined with moderate airflow, significantly reduces throttling.

Tip: Separate the antennas. If the modems have external antennas, spread them 10-20 cm apart to reduce mutual interference and improve reception.

Expected Result

The modems and hubs are installed in a neat, well-ventilated structure, with controlled temperature and maintenance access. Airflow is organized, cables are laid and secured.

Potential Problems and Solutions

If the temperature is high even with good airflow, check the frequency of frequency switching and the quality of the signal: under weak signal conditions, the modem generates more heat. It may be necessary to adjust antenna placement or use stronger antennas.

✅ Check: Run traffic on 70-80% of the modems for 30-60 minutes and ensure that temperatures remain within target limits. There should be no speed drops, and modems should not disconnect.

Step 4: Device Addressing and Port Fixation

Goal of the Stage

To assign each modem a stable identifier in the system so that after reboots, updates, and hot swaps, the interface names do not change.

Step-by-Step Instructions

  1. Collect identifiers. Connect the modems one by one and record their serial numbers and paths in the system. In Linux, use lsusb and dmesg commands, as well as the device list in /dev/serial/by-id. In Windows, open Device Manager, check the properties of COM ports and serial numbers.
  2. Create a matching table. Include: label number, modem serial number, USB hub port, hub, and port on the host. This will form the basis of your addressing.
  3. Configure udev in Linux. Create rules that will fix names based on serial number, e.g., net-mdm-01, net-mdm-02 for network interfaces or mdm01, mdm02 for serial ports. Check that the rules apply after reconnections.
  4. Fix COM ports in Windows. In the properties of the port, assign a specific COM number, avoiding conflicts. Reserve a range, for instance, COM50-COM99, to avoid overlapping with system devices.
  5. Check after reboot. Perform a cold reboot of the host and ensure interface names remain in place. Adjust rules if discrepancies occur.
  6. Coordinate with software. Include the fixed names in your application configurations to ensure each refers to ‘its’ modem.

Tip: In Linux, it’s more convenient to rely on /dev/serial/by-id, as these paths reliably point to devices by serial number. Just write them down once and assign clear aliases via udev.

Tip: If the modems are from the same manufacturer, serial numbers can be read by the ModemManager utility via mmcli. This speeds up recording the matching table.

Expected Result

Each modem has a stable interface name or COM port. Restarts and reinitializations do not disrupt the logic of your applications and automation.

Potential Problems and Solutions

If interfaces swap places, check if you are referencing dynamic names like wwan0 which may migrate. Use a tie to the serial number. In Windows, there may be a conflict with COM number: remove 'hidden' devices through the variable devmgr_show_nonpresent_devices and reassign numbers.

✅ Check: Disconnect and reconnect the modems in random order and ensure their names and COM ports correspond to the table. Reboot the host and repeat the check.

Step 5: Scaling the Pool and USB Topology

Goal of the Stage

To increase the number of modems to 50 without dropping USB bandwidth, eliminate issues with the bus, and organize a predictable structure of hosts and hubs.

Step-by-Step Instructions

  1. Evaluate current load. At 10-20 modems on one host, a single USB controller may suffice. At 30-50, add PCIe USB 3.0 cards to spread the hubs across different root controllers.
  2. Divide into clusters. Organize clusters of 10-15 modems per controller. This simplifies diagnostics and reduces load on one hub or bus.
  3. Strengthen power supply. Each cluster should have its power line with its fuse. Do not allow a single fuse to cover the entire farm.
  4. Add a second host if needed. For 50 modems, it’s advisable to use 2 hosts of 25 modems each. Set up central monitoring between hosts.
  5. Maintain a uniform cable standard. Use identical cables in length and quality within the cluster. This ensures predictable behavior and uniform delays.
  6. Update firmware for hubs and modems. If the manufacturer has updates that fix compatibility or stability, install them at the scaling stage, not during a failure.

Tip: Always document the USB topology: which hub connects to which host port and which ports are occupied. Keeping a diagram in a file and labels on the equipment will save hours when any problem arises.

Tip: In larger pools, consider M.2 WWAN modems with USB adapters and full antennas. They are more stable under load and often have better cooling.

Expected Result

The pool is scaled to the target number with predictable USB topology, distributed load, and maintained addressing.

Potential Problems and Solutions

USB errors like ‘device not accepting address’ often indicate bus overload or a bad cable. Distribute clusters across different controllers and shorten the cables. For ‘freezing’ traffic on some modems, check power and temperature of the hubs.

✅ Check: Heavily load all modems with data transfer and monitor USB and network logs. There should be no mass USB resets, and average latency and packet loss should meet the norms for the network used.

Step 6: Monitoring, Maintenance, and Automating Restarts

Goal of the Stage

To set up observability for the pool: modem status, signal quality, temperature, power, and traffic. Automate restarts of stuck devices to ensure predictable recovery.

Step-by-Step Instructions

  1. Collect basic metrics. In Linux, install ModemManager and enable collection of RSRP, RSRQ, SINR signals via mmcli. In Windows, use manufacturer drivers and their utility for diagnostics. Log the values collected.
  2. Enhance monitoring. Install Prometheus node exporter or Zabbix agent. Add scripts that parse modem state (e.g., using mmcli) and return metrics for each interface.
  3. Set up alerts. Threshold values: no network registration for over 2 minutes, RSRP below -115 dBm for more than 10 minutes, temperature above 60 °C, no traffic on active interface.
  4. Automate restarts. If the hub supports port power down, use this for soft resetting a modem during a freeze. Otherwise, use USB relays to interrupt modem power or software disconnect and reconnect the interface.
  5. Log events. Enable log rotation through logrotate, storing logs for 14-30 days. Filter frequent fatal events and address their root causes.
  6. Plan maintenance. Quarterly, blow out dust, check mounting, thermal paste (if applicable), the condition of fans and terminals, and tighten terminal screws.

Tip: For quick integration, use ready-made mobile proxy management services, such as solutions level mobileproxy.space. They aid with telemetry, restart scheduling, and automatic interface rotation without manual coding. The mention serves as a guideline, not a call to action; you can implement everything yourself.

Tip: Separate access rights. Administrators get access to power and hubs, while operators-only monitor and perform safe tasks.

Expected Result

Monitoring displays the state of each modem, restart automation eliminates hangs without human intervention, logs remain tidy, and rotation is set up.

Potential Problems and Solutions

If monitoring generates many false positives, increase hysteresis or check interval. If restarts do not help, the issue lies with power or overheating: return to steps covering cooling and power supplies.

✅ Check: Artificially ‘hang’ one modem (disconnect and reconnect the port) and ensure that automation detects the problem and restores functionality without your help.

Testing the Outcome

A checklist of what should work: all modems visible in the OS with stable names; hubs receiving proper power, with no drops below 4.85 V under load; modems and PSUs at normal temperatures; monitoring logs registrations in the network and basic signal parameters; modem restarts automate on freezes; documentation in order: topology, addressing, matching tables.

How to test: conduct a stress test over 2-4 hours with active traffic on 70-100% of the modems. Simultaneously, record USB and network logs. Verify the absence of mass USB reset errors and ‘disconnections’ of interfaces. Measure ping stability to the designated test host and average speed across the modems. Success indicators: modems uptime without re-registrations, absence of voltage drops, temperature within target limits, rare automatic restarts that solve the problem.

Tip: Perform a cold restart of the entire farm and check that addressing and monitoring come up without your intervention. This is a key indicator of system maturity.

Common Mistakes and Solutions

Issue: modems periodically ‘disappear’ from the system. Cause: voltage drop on the 5V line or a bad USB interconnect cable. Solution: shorten the cable, replace it with a shielded USB 3.0 cable; measure voltage under load, and increase wire gauge and PSU margin.

Issue: after rebooting interface names got mixed up. Cause: dynamic names and absence of udev rules. Solution: fix names by serial numbers, update application configs, check after a cold start.

Issue: high temperature and throttling. Cause: insufficient airflow or excessive proximity of modems to each other. Solution: increase the number of fans, modify airflow patterns, add heat sinks, and separate antennas.

Issue: USB reset during traffic peaks. Cause: overload of one USB controller or deep hub cascading. Solution: add PCIe USB cards, distribute modems in clusters, reduce hub cascading depth to one level.

Issue: individual modems fail to register on the network. Cause: weak signal, incompatible APN, or SIM issues. Solution: check APN with the operator, replace SIM, improve antenna and placement, measure RSRP and RSRQ.

Issue: monitoring generates false alarms. Cause: overly aggressive thresholds and short intervals. Solution: adjust hysteresis, increase polling intervals, and combine multiple conditions into a single event.

Issue: a hub overheats and turns off. Cause: total load on one hub too high. Solution: redistribute modems across hubs, add active hub cooling, check port current protection.

Additional Opportunities

Advanced settings: traffic prioritization at the OS level, separate routing tables for each modem to isolate application traffic; containerization of services using different modems; schedules for soft rotation of interfaces for maintenance. Optimization: installing UPS with monitoring; duplicating power supplies and ensuring load distribution across different network lines; separate power telemetry (current sensors on branches); using eSIM where supported to reduce time spent on SIM trays; regular monitoring reports with signal quality graphs by placement zones.

What else can be done: if you have a distributed farm, set up centralized logging and metrics collection, a unified dashboard, alerts in corporate messengers. Consider ready-made platforms like mobileproxy.space when quick deployment of management, profiles, and automatic rotation is crucial without needing to write an internal panel. Remember that you can always evolve: start with 10 modems, refine processes, and then carefully scale to 50 or more while maintaining power, cooling, and addressing standards.

Tip: If you plan to exceed 50 modems, consider a two-level architecture: several nodes of 25-30 modems each plus an orchestrator to centralize management and monitoring. This simplifies updates and maintenance.

FAQ

Question: How many modems can safely be hung on one hub? Answer: For stability, plan 8-10 modems per powered hub with a real current of 2-3 A for every 4 ports. It’s better to have several hubs of 8-10 ports than one overloaded hub.

Question: How to know if the power supply can sustain the pool? Answer: Measure the 5V voltage at the ends of the lines under peak load. If it doesn’t drop below 4.85 V, the power supply and wiring are fine. Also, monitor the power supply temperature and ensure no protection is triggered.

Question: Is USB 3.0 necessary for modems? Answer: Most LTE modems operate over USB 2.0, but USB 3.0 cables are better shielded, and USB 3.0 hubs and controllers are more reliable under load. So yes, use a USB 3.0 infrastructure.

Question: What to choose — Linux or Windows? Answer: For large farms, Linux is more convenient due to ModemManager, udev, and automation. Windows is suitable if manufacturer drivers and software are required, but fixing COM ports and automation are more complex.

Question: How to quickly diagnose a problematic modem? Answer: Have a addressing table, monitoring for the modem, and the ability to cut off port power. Compare metrics with neighbors, change cables and ports, check the SIM and APN, and if necessary, replace the modem.

Question: Can a hub be powered from a PC USB port? Answer: No, not for a pool. Only power the hub from an external power supply. PC power is designed for small currents and is unsuitable for 10-50 modems.

Question: How often should maintenance be performed? Answer: Weekly check metrics, monthly visual inspections and restart tests, quarterly dust cleaning, tightening terminals, checking fans and temperatures under load.

Question: What to do in extreme heat? Answer: Increase fan speeds, open additional ventilation gaps, reduce density, and if necessary, temporarily reduce the load on problem clusters.

Question: Can a ready pool be rented? Answer: Yes, this saves time on hardware and maintenance. For example, platforms like mobileproxy.space provide managed mobile proxies and automation. But having your pool gives full control and flexibility.

Conclusion

You have completed a comprehensive step-by-step guide on how to build a modem pool of 10-50 modems: from calculating power and choosing powered USB hubs to cooling, addressing, scaling, monitoring, and maintenance. If you have followed the instructions and checks, you now have a stable pool operational under peak loads and ready for 24/7 usage. Moving forward, you can develop the system: add clusters, enhance monitoring, implement automatic port shutdowns, and centralized orchestration. To delve deeper into the topic, check out internal materials on farm construction, such as guide to the USB modem farm and layouts and practices for proxy farms. Remember to keep safety in mind: comply with laws, telecom operators' conditions, and data handling rules. Your goal is a predictable, legal, and maintainable infrastructure. With this foundation, you can confidently scale and maintain a high level of reliability.