Ice Cream Sandwich explained: MTP - what is it, why use it, and how to set it up

MTP (Media Transfer Protocol) first showed up as default on Android devices with Honeycomb.  It's a bit of a change from the normal USB Mass Storage (UMS) file transfer that we're used to, where you plug in your phone, hit "USB mode" and start moving files. And because it's become the standard in Ice Cream Sandwich on the Galaxy Nexus, it's time to have a look at it.  Hit the break where we see what it is, why we're using it, and how to set it up on your computer for easy file transfer.

Check out our Ultimate Ice Cream Sandwich Guide

What is MTP?


MTP is a set of custom extensions for PTP (Picture Transfer Protocol) that is beefed up to allow files and their associated metadata to be transferred across USB. Still with us?

Originally part of the Windows Media framework, in 2008 the USB Implementers Forum device working group standardized MTP as a USB device type, making it a recognized standard.  If you had an old iriver or Creative MP3 player, or an old PDA device, you've probably used MTP.  If you use a standalone digital camera that automatically mounts as a device when you plug it in, you're using PTP, which is essentially the same thing.  It's not new, but it's new to Android as of Honeycomb, and it's about to be seen by a lot more eyeballs in Ice Cream Sandwich.

If you're like me, change is scary and nobody likes it.  Chances are you aren't like me and want new features and ideas, so let's have a look at why it's used, and more importantly, how to set it up.

Why use MTP instead of USB Mass Storage?

Simply put, MTP is now the standard being used to stop OEM's and carriers from giving you oodles of  "storage space" and very little application space.  That's not the ramblings of a crotchety old Android geek, but the word right from Android engineer Dan Morril:

We didn't do this because we wanted to use ext3 (although that is a side benefit.) We did it because we wanted to be able to merge the "public shared storage" (i.e. for music and photos) with the internal private app storage.We got tired of seeing OEMs include many GB of internal storage for music, while users were still running out of space for apps and data. This approach lets us merge everything on one volume, which is way better.

USB Mass Storage has one big drawback -- when you mount the storage partition (whether it's an SD card or an internal block like the Nexus S has), you've dedicated the entire partition as in use by another machine.  This means the original host (that'd be your phone or tablet) doesn't have access to it, and the new host (the computer you've plugged your phone or tablet into) is allowed to do bad things that might mess it all up. That's why moving some applications to the SD card -- and especially widgets -- would sometimes end up in wonkiness.

As a bonus, using MTP means that Android device makers no longer have to use FAT file systems on device storage, and can use ext formatting to make things work a bit better and faster.  Devices will still be sold with SDcard slots, and they will be able to use the same USB Mass Storage mode that we're used to, but new devices without removable storage should all use MTP from Ice Cream Sandwich forward.

Setting it up

Since Windows XP, MTP devices "just work" in Windows.  Plug your Galaxy Nexus in, choose MTP as the connection type, and Windows will find the driver and you're ready to go.  You can browse and transfer files between your phone and computer without any issues, and it's easy and magical.  But not everyone uses Windows, do they?  Here's how to set up things on the other 10 percent of computers out there, Linux and Mac.

Mac OS

Android File Transfer

The folks at Android have made it easy as possible to use MTP devices on a Mac.  Simply download and install the Android File Transfer program, connect your device to your computer, and double click the AFT application to start it up.  You can then drag and drop any file (up to 4GB in size) to and from the device.  There's even a dedicated help page in case you hit a snag. 


On a Linux install, things aren't quite as easy.  On the plus side you have a bit of control how things are mounted, but there's no one click solution.  Don't be discouraged, you can have MTP set up and running in no time with a bit of terminal command fun.  Here's a walkthrough for using the Galaxy Nexus with Ubuntu:

Set up a UDEV rule via the terminal by opening the rules file

sudo nano -w /etc/udev/rules.d/51-android.rules

And entering the following line at the end of the file (be sure to use your user name at the end!):

SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0600", OWNER="<your-username>"

Now install the tools and set a mount point by entering the following commands one line at a time

  • sudo apt-get install mtpfs
  • sudo mkdir /media/GNexus
  • sudo chmod 775 /media/GNexus

Plug your Galaxy Nexus in, and enter the next line in the same terminal window:

sudo mtpfs -o allow_other /media/GNexus

Drag and drop through Nautilus, and when you're done and need to unmount, enter the following:

sudo umount mtpfs

This will have to suffice until someone writes a couple scripts or a front end.  You don't have to install mtpfs, make the mount point, or chmod it after the first time.  You may have to mount the device manually each time, I'll know more when I get one to play with.

An alternative

I have a Galaxy Tab 10.1, that uses MTP for transfer mode, and never ever hook it up to the PC.  I use a combination of Wifi File Explorer and QuickSSHd from the market and transfer files across my LAN at home.  You might want to look into this yourself if you're like me and hate wires.

Jerry Hildenbrand
Senior Editor — Google Ecosystem

Jerry is an amateur woodworker and struggling shade tree mechanic. There's nothing he can't take apart, but many things he can't reassemble. You'll find him writing and speaking his loud opinion on Android Central and occasionally on Twitter.

  • Thanks Jerry, Finally ordered a GSM Galaxy Nexus and was wondering how the storage worked.
  • Thank you so much for this tip! I have an HP Touchpad with Cyanogenmod 9 installed on it and for the life of me, I could not figure out how to transfer files to it efficiently from my Linux desktop. I have no windows machines so it was a real pain, but thanks to you, it's all good now! :)
  • Okay so here's my major complaint: I was accustomed to using my car's USB port to play MP3s stored on my phone through the car's system without needing an aux cable. My car does not support MTP. So are you telling me that there's no way to trick my Galaxy Nexus into pretending it is using regular mass storage mode when connected to my car? This just made my phone a whole hell of a lot less functional. I'm almost tempted to go back to my old Moto Droid, lol.
  • Im having the exact same problem. My car does see the media files, but its all whacked out. please refer to this thread, maybe we can find a solution together:
  • MTP is shit sorry to say so. My experience with my SGS2 is that I take a massive performance hit with MTP compared to UMS :(. If MTP is going to be the new forced standard then Android is starting to lose it attractiveness for me. And MTP locks my explorer process so I can't do anything until I unplug the phone etc >.<. UMS Back yes please
  • Jerry, Thanks for this tip, however I've encountered a glitch. I am running Linux Mint and trying to use my proprietary USB data cable with my Lenovo K-1. I recently updated it to ICS 4.03 (Lenovo released their barebones version of ICS to the K1 community). I changed the /media/Nexus to /media/K1 and the K-1 shows up immediately in Nautilus but when I tried to copy my password file over it is rejected "error moving file-no such file or directory." Nautilus says "This media contains digital photos" My goal is not to transfer pictures, movies, music. Would changing the line "sudo mkdir /media/GNexus" to something else possible avoid this? Any other ideas? I was able to paste my file into the next level above my target. After unmounting /media/K1 I used ES File Explorer to move the file where I wanted it and it works!
    It's a massive kludge, but it works.
  • Sadly, it seems that by doing things this way, it puts severe limitations on recovering data from another linux/unix file system as the Android device can not be mounted as a 'block device' and only as a 'character device'. Recovering deleted files is currently quite a challenge.
  • Did you manage to find a work around?
  • I'm so disappointed in the decision to move to MTP. I can't mount the device with a drive letter on windows and thus can't use standard programs to synchronize my music collection to the phone. Apps like Kies for the samsung gx3 are crap. And I can't mount the damn phone on Mac at all. So all I'm left with is manually moving files to the android file system. Really Dan? This is an improvement??? Argghh!
  • Can someone please help? I'm trying to play the files from my GS3 SD card on my PC. I used to do this through Winamp. Now, no program will see the files. Does anyone have a suggestion to do this without rooting the phone to get USB mass storage? VERY frustrated.
  • I'm sorry, but some of us actually do work with our phones, and it's not all about music, videos and pictures. I was forced by my company to migrate from a Windows phone (hated it) to a Samsung Galaxy SIII (thought I was going to love it). But, how am I now supposed to copy spreadsheets, PDF documents, etc., from my phone, and keep them synced with my work laptop? How am I supposed to install my company's proprietary apps which require copying from my laptop to my phone? I understand the point behind MTP, but please, give us users some credit for being able to decide what is good for our situation, rather than making the decisions for us, like another parent we don't need. ("Don't you sass me, boy, I know what's good for you! Now stop using UMS. That will rot your brain!") So, having wasted half of my day so far, I have to come up with some kind of alternate solution so I can just get back to work without screwing around with my phone! Please bring UMS back for those who want it. (Did I mention mine is a corporate phone? I need it to work stock, without rooting or jail breaking it so I can keep my job.) As it sits right now, it looks like I'm going to have to dust off my old circa 2002 iPAQ and use that for my portable spreadsheets and other work related documents, mail myself the one app I HAVE to install, or take apart my phone every time I need to copy files from the SD card. Sorry for the rant. Now, you kids give me back my UMS!
  • Thanks for wording that so eloquently.
  • If only it "just worked" in Windows. Not even Windows 7 can handle this properly on my GS3. - I routinely and repeatedly get random copy errors (on multiple computers) with specific mp3, so I literally cannot copy half of the songs in an album the and the other half work. - Often times it just bombs out completely mid-transfer. It's extremely slow, I let it go for hours if it doesn't error out it still never finishes. - You can search for all .jpg in Explorer, but it won't let you know which directory they are in in Details view. Trying to delete them gives you a random error with a hex error code. - Oh, and let's not forget the worst part, during a file operation (like transferring something) it locks my phone 100% so now I cannot read/write/send any text message or use any app, at all, whether or not it uses the SD card. It just locks the screen at "File operating in progress" or something with no way to get out of it. Couple this with putting 10GB of music on your phone, and you just lost your phone for a whole day. Quite simply, MTP on the GS3 is the biggest load of crap I've seen in my years with Android. LUCKILY, there are solutions out there for getting mass storage back if you're rooted, or using other apps to pull files for you.
  • This needs to be revised - MTP doesn't just work in Windows XP. You need to ensure you have the right version of Windows Media Player. Version 9, which is part of SP2/3, doesn't support it. Version 10 has some support, but mainly for syncing media files. Version 11 has full internal storage support. I know this from experimenting.
  • I don't know what people are doing to have so many problems. I plug my GS3 into either of 2 Win 7 machines, and the phone and SD card show up in Windows explorer like any other drive. I can copy files, of any type, back and forth between the phone without issue. I plug the phone in, Windows pops up the standard AutoPlay menu as it does with any external storage device, and I pick "open device to view files." Works perfectly, every time.
  • Hello Jerry,
    New guy here, thank you for this article. I know this is an older topic so I'm hoping that you can answer my question. These newer phones that use the MTP file don't seem to work with Bluetooth car kits that have a USB connection on them. Phones used to be able to play their audio files thru a USB cable plugged into the car kit. You would select (use as a mass storage device" on the phone and all was good.
    Now with this MTP file you can't play the phones stored music thru the USB cable. I have on a couple phones been able to remove the SD card from the phone, load music to the phones memory instead of the SD card and then reinsert the card. When I wanted to play the phones stored music, I would unmount the SD card, plug the USB cable into the phone and play the stored music. This method worked on a couple phones but not all that I tried it on.
    Can you explain why we can't play the stored music with this MTP setup now? Thank you in advance for anyy help that you can offer.
  • More useless... I cannot install APPS in enterprise GEAR! thus the phones with MTP are worth their weight is Cow dung same as CTP if this is Googles Iphone dream.. they lost 5 million of us in the Tech space for Field tools.
  • So .. If we're like YOU ..... "if you're like me and hate wires." But "if you're like ME and hate artificial limitations" and feel that "A feature without an off switch is a defect" then you are VERY unhappy with ICS.
    ... Let me list the other "benefits" I have now with MTP on ICS on my Galaxy Note II now that Android 2.3.5 has been "improved" to 4.x - I cannot load applications on my sd card and I cannot have the DATA (music, docs, updates, videos) of these apps load to my SD card
    - I no longer can get to the file structure of primary storage so I can no longer make shortcuts of files or folders.
    "If you're like me", you want a separate shortcut for each email account inbox - No can do now
    "If you're like me" you want to use the "Folders" option on the Note to create media collections: A shortcut for each file.
    - Uhhuh - can't do that either
    "If you're like me" you want to be able to browse/view/edit mail attachments as files in open office for android.
    - Nope - lost that too
    "If you're like me" you want to be able to USE your phone or tablet the way you want to - and that means CONFIGURATION control.
    - Nono 'Uncle Google knows best. "A feature without an off switch is a bug" Who do the REST of us who, if we wanted a deaf and dumb black box, would have gotten IPhones, write to or call to get hacks to 4.1 or for enhancement requests for the next upgrade, so that the above features can be re-enabled or returned ????
  • A little history, PTP was orignally a hack of the USB implementation that saved a camera company money because they didn't have to implement a full USB stack on the camera (USB was pretty expensive then). The implementation had a side effect in that users couldn't use the full USB stack of features and so it acted like a limited DRM system. Microsoft took this side effect ( sic: feature ) further and gave us MTP. The resulting system is so restrictive that workarounds are implemented to access a users files/media or any other data they create on the device. As usual with work arounds they come with their own issues. Like most people I bought an Androiod phone for it's productive capabilities and the ability to integrate it with my Windows productive environment using USB mass storgage. The without my permission it's removed. That I can no longer just create new, open, edit, save is a huge disruption to any productive user. The MTP implementation is done in such a way that it actively prevents user productivity. This is a huge deal breaker for me and for this reason alone I will never buy a Andriod/MTP restricted phone again. BUT IT GETS WORSE, the MTP/Android/Windows implementation does not respect the copyright and privacy of the device owner. The workaround to opening a file using windows explorer is to copy it to the Windows PC and to do it automatically before opening. This means that the MTP/Android/Windows combination actually strips personal data from any users Android phone without their explicit permission, automatically copying any file that they open from their Android phone when it is connected to a Windows PC, whether it is thier PC or not. Everyones copyright, privacy and freedom of speech breached in one click. Go to an internet cafe, connect your MTP device/phone and you give away by default any file opened! 100's of MILLIONS of users now use a MTP/Android/Windows combination so it's the worlds biggest copyright/privacy/freedom of speech/PIRACY breach the world has ever seen. It's data theft like the world has never seen before. My data, my copyright, my privacy, my freedom of speech. In this day and age WE, the productive usuers of these devices are the rights holders, NOT the companies! And finally - THE CUSTOMER IS ALWAYS RIGHT! LET THE CUSTOMER CHOOSE! Give us back safe, secure, productive, rights respected USB mass storage!
  • This is a great article, but, a word to the wise. Debian-based Linux is fine, but, none of this works currently on RHEL6 based nuxes such as Centos 6. Basically, on Centos 6, you need to be a super human (with respect to coding skills) to get the underlying libraries to work, so, that leaves 99.9% of the Centos / RHEL6 users unable to get MTP working. Luckily, PTP sort of works, although it too is problematic on Centos. Lots more in the forums for those who need it.
  • Sorry but MTP is shit, simply shit. On my Galaxy S4, works ONLY for small media files (like MP3 and photos), ANY larger file results on really bad transfer slowdowns or no transfer at all (crashes in the middle). Is like all files are scanned for DRM rights all the time and by a very bad implementation of scanner, crashing every time he thinks any file is "DRM protected" or the file is bigger than +-30MB. And "strangely", any transfer works perfectly when I change the transfer mode to UMS (needs rooting for this). Google, please drop this shit now. NOW, you read me? Is trivial to create a "UMS emulation" to hide the complexity of internal file system, is NOT necessary to use the shitty MTP protocol.
  • Stop taking away people's freedom to fix STUPID !
    YOU CANNOT FIX STUPID, it's been tried before unsuccessfully.
    Just make a Prompt that says Incompatible User.
    Give me back my UMS file transfer NOW !!!
    I am already thinking of dumping the entire Google Android for phone use.
  • This analysis of MTP is... bleh. MTP is both unnecessary and retarded. By contrast, UMS is a tried-and-tested protocol which happens to be considerably faster than MTP. This is the biggest sh*t sandwich Google has handed Android users so far. MTP causes Explorer to freeze when performing any operation involving either large files or large file count. Furthermore, MTP requres a device-specific driver, whereas UMS uses a standard generic driver that's built into every OS, enabling users to manage their devices from any computer with a USB port. This won't be the last sh*t sandwich Google hands us: large corporations are always trying to find ways to keep their employees busy (otherwise they'd have to fire them), so they find random unnecessary jobs for them to do e.g. develop MTP. If it ain't broke, don't fix it FFS! This really makes my blood boil...
  • You lost me at "double click the AFT application to start it up" . Doesn't work on my Mac OS 10.9.2 It says no Android device found.
    I don't like wires either, but if we can't make something that works with wires, I am not going to try wireless. I am too old to be able to understand this stuff, but young enough to have to use it. The writers of 'help' files and videos give 'help' that is too far advanced; they just don't understand that things have to be explained, no skipping steps, screen shots have to be similar enough to my device to recognize my device and how it may be different in some small way. Yes, I am indeed frustrated!
    I wan the Galaxy S# to be more than just a phone. Why can't I transfer my contacts from the Mac to the phone? Why can't I get photos off my phone onto the Mac? Why can't I get music from the Mac onto the phone? Lots of video and other tutorials out there but they don't do what they say, don't apply to my phone even though the tutorial says it does, grrrhhh!
  • In this article and when I first heard about this, it says that if the device has an external SD card that can be mapped as Mass Storage like a card reader. I have never seen this, nor any confirmation. I have seen a few apps that will do it, but all of the ones I've seen require root.
  • Good article on MTP. Thanks.