Slow Speed on USB Tethering With 5G Phone

Hello Everyone,

I have a Linksys EA9500 - device page - and I followed the Smartphone USB tethering guide to connect a Infinix Hot 20 5G (Android 12) phone to the router.

I am Getting 500mbps+ using the phone directly and 275mbps+ while using it with computer via usb2.0 Tethering.But When i connect my phone to my linksys router via USB Tethering i get only 3-4 Mbps only.

Can someone help me to get the full throughput ??

Thank you

A little help would be Appreciate......

Try doing this, when you've booted Openwrt off a flash drive.

Hello thanx for the response ,i tried with USB flash drive just status changed "network device not found".i tried to test with my 4G phone i am getting 40mbps easily but when i connect 5G phone its not more than 6mbps.

Is it driver issue with phone or phone driver not compatible with linux ? because on windows 7 usb tethering i am getting 260mbps easily..

Thank you

i tested on Tplink Mr 3220 & Tplink Mr 3420 both OpenWrt Installed. i couldn't get more than 5mbps download i feel its phone usb driver issue or i am missing something while configuration openwrt router?
because same phone give 300mbps+ on windows 7 OS

please help

Thank you

Sounds like your provider is detecting the use of a router as the tethered device and throttling the bandwidth, apparently quite a common practice. You might be able to use TTL adjustment to work around this (e.g. Working Nftables Rule for TTL in 22.03) but be aware that the terms & conditions of your plan might give your provider the right to terminate service for doing so.

1 Like

Some Android devices do support multiple modes of tethering. You may check the Windows driver type (for Example RNDIS), and compare it in case not being the TTL.

1 Like

Hello pythonic

Thanks for Help

i already tried with
iptables -t mangle -I POSTROUTING -m physdev --physdev-out usb0 -j TTL --ttl-set 65

using this link

But No Solution ..............i think i am missing a Point

You may install iperf on the phone and test the USB connection — if it works — it's the provider.

Hello Nvladimirov

Thanks for Help

i checked rndis adapter detail i found following

Network Adapter
Class = Net
ClassGuid = {4d36e972-e325-11ce-bfc1-08002be10318}
This class consists of network adapter drivers. These drivers must either call NdisMRegisterMiniportDriver or NetAdapterCreate. Drivers that do not use NDIS or NetAdapter should use a different setup class.

i also asked about this to infinix phone company support but they dont have solution for this because its already working good on windows OS.

As a test, remove the cable, and connect to you phone wirelessly with your router, what speeds are you getting then ?

1 Like

RNDIS was expected for the PC. If you followed the guide, there are some suggestions for some protocols mainly used over Android USB dongles. For some reason the phone may go to some poorly implemented protocol, rather RNDIS. If the Iperf test passes over the USB and the phone is rooted you may do a packet capture with tcpdump too see if there is any difference which your provider can detect and use to throttle-down the connection.

1 Like

Hello Frollic

Thanx for Help

when i tried using wwan i am getting 193mbps+ but my phone start heating up that's why i am preferring USB

Thank you

This seems complicated for me , i installed iperf2. there is only command prompt and in command help there nothing mentioned about USB test.Also phone is new not rooted.if i root the phone it ll break the warranty i want to sure first its phone issue or some limitations by openwrt and its difficult for me to capture tcp dump because i am not that smart to do such task ......

Thank you

Did you try with different values?

When shared directly to the PC, I doubt it won't decrement the TTL, so if the PC sources it with 64 it will go as 63 over the mobile network. Anyway, you can add a wireless client to the router's WAN and connect it wirelessly and test if the speed is reduced the same way when having the router. If you have the web interface, just click the "Scan" button on the Wireless page.

There are some apps like "Magic iPerf" with pre-defined tests and command history. I don't think it's bound to a specific interface, so should be even possible to run the server over the phone, if you know its IP address.

No ,i was just expecting 50mbps at least but result was same 5mbps so i left that part.

Not Found on play store, while searching it was for android old version. my 5G phone have android 12.
Also i found that broadcom not good for USB tethering things..i purchased that router due to openwrt compatibility and usb3.0 for 5G Connectivity via tethering.But whole planning failed

Thank you

Running the iPerf is not a big deal:

For the server":
iperf -s -u

For the client:
iperf -c <server's IP> -u -b 50m

Without the "-u" will go TCP which may drop the performance.

Both MR3220 and MR3420 are intended for 4G USB tethering and is supported over the stock firmware and not Broadcom.

i bricked both 3220 and 3420 while recovery back to stock firmware from openwrt.. :grinning: :grinning:
So it became more difficult to find that the problem is in the OpenWrt configuration, or rather in the compatibility of the Phone with Linux.
i ll try to recover them with ttl usb serial cable soon.........

Usually, there is a procedure on the device page how to go back to the stock firmware, as well as a recovery procedure.
Make sure your adapter logical level is 3.3V at the maximum, otherwise you can further damage the devices. When recovered, install only the packages required for the RNDIS protocol, if not using the stock firmware.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.