I almost sold my old phone for $15. That’s what the recycling site offered. Fifteen bucks. I stared at the screen and thought, “Really? This thing has a Snapdragon processor, 4GB of RAM, and a perfectly good screen. And you’re giving me lunch money?” So I didn’t sell it. Instead, I turned it into a makeshift router. And honestly? It’s been running my home network for months now. It handles things my actual router choked on. Let me explain.
The Problem: My Router Couldn’t Keep Up
I run a few services at home. Network-wide ad blocking. Some custom routing rules for certain traffic. Sometimes I tinker with Home Assistant. My router — a decent mid-range one, nothing fancy — kept freezing when I turned all of them on. The CPU would spike to 100%, the web interface would stop responding, and I’d have to reboot it. Every few days.
I tried scaling back. Turned off the ad blocker. Stopped using the custom routing. But that defeated the purpose. I wanted these things. I just couldn’t run them on the router.
Then I remembered my old phone sitting in a drawer.
The Setup: It’s Simpler Than You Think
Here’s what I did. I flashed PostmarketOS on the phone — it’s a Linux distribution built for mobile devices. Ubuntu Touch works too, or Kali Linux if you’re into that. The phone’s official website had a community build for my model, so I didn’t have to fight with drivers.
Once Linux was running, I installed the services I needed. AdGuard Home for DNS filtering. A small web server for a dashboard. I also set up some routing rules to direct specific traffic through the phone. I even threw in a lightweight Docker setup later.
The phone handled all of it without breaking a sweat.
The USB Trick That Changed Everything
For the first few months, I ran it over Wi-Fi. The phone acted as a secondary gateway — devices on my network would send certain requests to it, and it would process them and forward the rest to the main router. It worked. But the phone got hot. Battery temperature hit 45°C sometimes. I could feel the warmth through the case.
Then I found a better way. I bought a USB‑to‑Ethernet adapter — the kind you’d use for a laptop — and plugged it into the phone’s USB port. On Linux, the adapter shows up as a network interface. I configured it as the primary connection and disabled Wi-Fi.
The difference was immediate. The phone stopped heating up. Battery temperature dropped to around 36°C — barely warm to the touch. And the latency? I ran ping tests from my desktop to the phone over USB. Average was 0.6 to 0.9 milliseconds. That’s almost identical to a wired Ethernet connection (0.5 to 0.8 ms). So much for USB being “too slow” for networking.
Bandwidth: The One Thing Everyone Worries About
I should address this because every time I mention this setup, someone says, “But USB 2.0 is only 480 Mbps theoretical. You’re bottlenecking your connection.”
Fair point. I tested it with iPerf3 — a tool that measures network throughput. My phone’s USB port topped out at about 200 Mbps. That’s less than half the theoretical maximum. If I routed all my internet traffic through it, my 1 Gbps fiber connection would be wasted.
But here’s the thing: I don’t route everything through it. I only send specific traffic — like DNS filtering and ad-blocking requests — to the phone. Regular browsing, streaming, gaming? Those go straight through the main router. The phone only handles the “special” traffic. And 200 Mbps is more than enough for that.
I set it up using the DNS method. I configured the phone’s DNS to return custom IPs for certain domains. Then I added a static route on my main router that sends those IP ranges to the phone. That way, only those specific requests get processed by the phone. Everything else stays on the main path.
The One Mistake I Made
I almost gave up on the USB setup on day one. Latency was terrible — spikes up to 50 ms, random packet loss. I thought the adapter was faulty. I thought the phone’s USB controller couldn’t handle it.
Turns out, the traffic was still going over Wi-Fi. The USB interface was up, but the routing table was sending everything through the wireless interface anyway. I asked an AI about it — I know, I know, but it was late and I was frustrated — and it suggested changing the route metric to prefer the USB connection. I did that, and the problem vanished.
One line in the routing table. That’s all it took. I felt stupid for not checking earlier.
Why This Is Better Than a Raspberry Pi
People often ask why I didn’t just buy a Raspberry Pi or one of those cheap Android TV boxes. Those are popular for this kind of thing. But here’s the math: a used phone with similar specs — 4GB RAM, quad-core processor — costs maybe $30 on the second-hand market. A Raspberry Pi 4 with 4GB RAM? Closer to $60, plus a power supply, plus a case, plus an SD card. And you still don’t get a built-in battery or a touchscreen.
The phone has all of that. The battery acts as a built-in UPS — if power flickers, the phone keeps running. The touchscreen makes debugging easier when I’m too lazy to SSH in.
The only downside is I/O ports. The phone has one USB port. But a cheap USB hub fixes that. I plugged in the Ethernet adapter, a small flash drive for storage, and still had a port left over.
Would I Recommend This?
Depends on who you are.
If you’re comfortable flashing a custom ROM and messing with Linux, this is a fantastic project. It’s cheap, it’s powerful, and it’ll teach you more about networking than any tutorial video.
If you just want to plug something in and have it work — buy a dedicated device. This takes tinkering. You’ll hit weird issues. You’ll spend an evening debugging routing tables. But if that sounds fun? Go for it.
I actually covered something similar a while back — not about phones, but about making old hardware work for new purposes. My iPhone Battery Drains Too Fast. Here Are 10 Settings That Actually Helped. Different topic, same vibe: don’t throw things away just because they’re “old.”
What I’m Doing Next
I’ve been running this setup for about four months now. The phone sits behind my router, plugged into a USB hub, running silently. I check on it once a week — usually just to update packages. It hasn’t crashed once.
I’m thinking about adding a small NAS to it. Maybe hook up an external drive and use it as a backup target for my laptop. The phone has enough power to handle SMB shares. Why not?
Anyway, that’s where I landed. If you have an old phone collecting dust, give it a shot. Worst case, you waste an afternoon and learn something. Best case, you save yourself $15 and get a better network out of it.



