7

I have a OnePlus 10 Pro device with USB Type C 3.1 (according to gsmarena).

I am trying to transfer huge files from it to my pc using the USB cable, but the speed is only 45MB/s which is the max speed of USB 2.0 as I know (My pc also has USB 3 and fast SSD M.2).

Can I know how I can benefit from having USB 3.1 on my device and make the transfer faster?

Ramhound
  • 44,080

4 Answers4

24

According to the OnePlus web-site the factory supplied USB cable is USB 2.0 only (even though it has a USB-C connector at the end).
(This is mentioned in the small print at the bottom of the specs page.)

So using a 3rd party cable that is a proper USB3.1 cable should in theory give you higher speeds.

Still... If the transfer is MTP based (not sure of this is the case for this phone) it will usually be 3x to 4x slower than the speed you would get from a USB memory stick. (MTP just is a less efficient and thus slower protocol.)
Another thing is the speed of the phones internal storage. If that is a slow form of memory it may also limit the maximum throughput on the cable.

So there is no telling what speed is actually achievable. It depends on more than just the cable.

Tonny
  • 33,276
2

To suggest a potential solution which has worked in prior instances I've experienced the same issue - try using a different / better / newer USB cable for the connection between your phone and the PC.

While I realize this doesn't strike confidence that it would work - or it didn't for me at first - but I was shocked to realize that, in fact, that was exactly what the problem was. And just as a fair warning, I have a dozen cords around here... and had to try quite a few before I discovered it was actually the cause.

Regardless, I assure you this is at least a potential solution.

2

If your copy goes as fast as 45 MB/s over USB 2.0, then you are very lucky. In theory it can go up to 60 MB/s, but in practice it's closer to 20 MB/s, and sometimes it's as slow as 10 MB/s.

I was able to do 90 MB/s copies between an Android phone and a PC, using USB 3.0 and ADB. I haven't seen anything faster in practice, but maybe I have a slow phone or slow PC.

In addition to buying a faster cable, you may want to use a protocol faster than MTP. Such a protocol is the one used by the adb push and adb pull commands run on the PC. To set it up:

  1. Enable developer mode on the phone.

  2. Enable USB debugging in the developer options on the phone.

  3. Install ADB (the adb command) to the PC.

  4. Connect the phone to the PC using USB. Make sure that you use an USB 3 cable, an USB 3.x port on the PC, and nothing (e.g. USB hubs, USB adaptors, docking stations) other than the cable between the phone and the PC.

  5. At the command prompt, run adb devices, allow it within the notification window on the phone.

  6. Use adb pull (+ folder names) to copy from the phone to the PC. For example, to copy all photos and videos taken by the phone: adb pull -a /sdcard/DCIM DCIM_from_phone.

  7. Use adb push (+ folder names) to copy from the PC to the phone.

Follow tutorials on the web for more specific instructions depending on the operating system on the PC and the phone model.

Even after doing so, your copy may be slower than expected because:

  • The phone (e.g. built-in flash storage or CPU) is slow.

  • The storage on the PC (e.g. old HDD) is slow.

  • The PC (e.g. CPU) is slow or busy running other programs.

  • The antivirus software on the PC makes the copy slow, because it is checking all copied files one-by-one.

  • The operating system on the PC has a broken or suboptimal USB stack or drivers.

pts
  • 7,648
0

I'd use ADB instead with a program like MyPhoneExplorer or AndroidDrive with a fast copying program like Teracopy

You'll need to enable developer options in settings to use these, and make sure ADB drivers are installed.

AndroidDrive is currently only available for 64 bit systems, (if someone knows how to compile the code for 32bit here is the link.)

Tutorial crossposted from AndroidDrive:

To be able to use AndroidDrive, you need to do three things (the order in which you do them doesn't matter):

Install AndroidDrive on your Windows computer: Either use the installation program, or download and extract the zip file. If you want to start AndroidDrive when Windows starts, create a shortcut to AndroidDrive in %appdata%\Microsoft\Windows\Start Menu\Programs\Startup.

Install Dokan on your Windows computer: The easiest way is to use their installation program (this is the installation program for Dokan 2.0.6, which is the version AndroidDrive was tested on). If you prefer, you can find other ways to install Dokan in their documentation.

Enable USB debugging on your Android device: For AndroidDrive to be able to detect and interact with your Android device, you need to enable USB debugging. To do so, follow these steps:

Open Settings on your Android device. Go to "About phone". Scroll down to the bottom and tap "Build Number" seven times until you get a message saying that you're a developer. Go back to the main settings screen, then go to System > Advanced > Developer Settings and enable USB debugging. Usage: When AndroidDrive is running and you connect an Android device, AndroidDrive will automatically mount a drive containing that device's internal storage.

If you don't want AndroidDrive to mound a drive for a specific Android device, you can right click on the AndroidDrive icon in the task bar, go to Devices and click "Device settings", then uncheck "Automatically connect drive". To actually disconnect it, you also need to click "Disconnect drive" in the Devices window. You can also temporarily disconnect a drive by clicking "Disconnect drive" without changing the device settings.

When AndroidDrive detects a new Android device, it will automatically be assigned the first available drive letter after C (for example if your only drive is the hard drive, this will mean that it will be assigned the letter D). You can change the drive letter assigned to a specific Android device by right clicking on the AndroidDrive icon in the task bar, going to Devices, clicking "Device settings" and selecting a drive letter under "Drive letter". If you do this to a drive that's already connected, you will need to disconnect and re-connect the drive for the changes to take effect.

Languages AndroidDrive is currently available in the following languages:

English French Hungarian (translation by gidano) Italian (translation by bovirus) Swedish

Once the drive is seen in Explorer with a drive letter, it should act just like any other hard drive and you can use teracopy or whatever program you wish.