Mobile Transfer Protocol (MTP) v.s. USB Mass Storage (UMS) - Gen9, Gen10 General

Hi,
i wonder why they dropped mass storage device mode on the Gen9 devices.
No problem in the Windows world though, but i'm frequently using linux on my host computers and i'm little annoyed about the new MTP mode.
What do you think, could this be reverted easily?
Did anyone checked this out by tweaking some code or using a custom kernel?
Any information would be nice!
EDIT: O.K. i did some research... there's a lot discussion about it already.
Anyway would be nice to read your opinion.
Regards,
scholbert

I still see the mass storage option in my 4GB 80 G9, though I prefer MTP mode because it allows access to internal storage as well as SD card.

Yeah sure...
AFAIK, if you got a MicroSD in the slot it is accessed as USB mass storage.
I related to the device itself...
Anyway this will clear things up a bit.
I'll install libmtd and stuff on my laptop running Debian and see if it works out like expected.
Thanks for your reply!
scholbert

Well, internal storage is "media" directory of /data partition and it would be too dangerous for Archos to export whole /data as mass storage.
The benefit of this is to get rid of the limit of installed apps versus storage, the downside is that they can't export it as a drive. Google is pushing for this model too afaik.

Don't forget that storage for both SD and HDD models is formatted as ext4- unreadable for Windoze (it's the only reasonable option- fat32 supports max 32GB partitions, NTFS is not linux-frielndly IMO)
BTW it seems to me that MTP is becomming more popular- Xperia Arc S offers both MTP and UMS (MTP is factory default)

I don't know how to use it under Ubuntu or Linux mint, any recommendations?
thanks in advance.

get things rollin' on linux
Hi,
i started to do some research how to activate/implement the MTP on my laptop running Linux Mint (in partitular LMDE). Process would be the same for Debian and similar for Ubuntu.
To fully support the Gen 9 series libmtd version 1.1.2 should be installed on your machine.
See the logs at http://sourceforge.net/tracker/?group_id=158745&atid=809061
To start you need some essential packages first.
Afterwards you'll be able to see the device. I'm still in the process of sorting out how to make it work pleasantly.
Right now it'S not working the way it should. Anyway here are some requirements...
If you're on Debian Wheezy, simply install libmtp and stuff using your package manager.
Older versions only support older versions, not matching for the Archos G9 series.
If you're on Linux Mint it is possible to install version 1.1.2 manually from console (to force a partial upgrade).
Unfortunately some tools are little behind in this distro (at least LMDE)
Grab at least four packages from Debian Wheezy repo (e.g. 64bit machine):
- libmtp-common_1.1.2-2_all.deb
- libmtp9_1.1.2-2_amd64.deb
- libmtp-runtime_1.1.2-2_amd64.deb
- mtp-tools_1.1.2-2_amd64.deb
Remark: Install these in the right order. See the command below.
I found it to be safe to upgrade these packages partially, no depends are broken afterwards.
Please do not update your repository sources to point at the wheezy tree.
This might definitely confuse your package manager.
Additionally needed for handling virtual drives (better use package manager for install):
- fuse
- mtpfs
On Linux Mint (LMDE) you might then simply enter a root console to force upgrade of native libmtp:
Code:
dpkg -i libmtp-common_1.1.2-2_all.deb libmtp9_1.1.2-2_amd64.deb libmtp-runtime_1.1.2-2_amd64.deb mtp-tools_1.1.2-2_amd64.deb
I am not using Ubuntu, but i found out that 1.1.2 has found its way in 12.04 (precise), which is yet to be released.
Remark for Ubuntu 11.10 (oneiric):
In this distro libmtp 1.1.0 is used, unfortunately no Archos G9 support natively.
You could try to force a partial update though.
Please check dependencies first!
After installing you should add your username to the group audio:
Code:
adduser your_username audio
This is because the Gen 9 devices enumerate as audio device in the USB device-tree.
If you leave this out, only root will have access to this device.
Though this might be considered as optional.
Now you'll be able to use the mtp-tools (as a user) to discover your device and do lowlevel stuff.
As already stated things are not done automatically.
I will investigate, maybe some things are missing... (e.g. install package mtpfs).
Maybe this is the reason, why i got no virtual drive.
After installing mtpfs you may mount the internal storage of your Archos device (as root):
Code:
# mkdir ~/g9-storage
# mtpfs -o allow_other ~/g9-storage
The internal storage is now accessable...
To unmount:
Code:
# fusermount -u ~/g9-storage
Even with some scripting this is far from automount (like known from USB mass storage devices), but it works.
I'll try to find an even more convenient way...
Stay tuned!
scholbert

Any way to enable USB Mass Storage mode?
On 4.0.28 (stock), I only have MTP and PTP. I would like it to work as a "Normal" USB mass storage device, like most Android devices.
If all I can see is the SD Card, that's fine. It's much more convenient that carrying around a USB Card reader, and having to remove the card.
--

AW: Mobile Transfer Protocol (MTP) v.s. USB Mass Storage (UMS)
Hi, you can use FTP over Wi-Fi. With root access you can export every file you like.
Sent from my ARCHOS 101G9 using xda app-developers app

AW: Mobile Transfer Protocol (MTP) v.s. USB Mass Storage (UMS)
Hi, you can use FTP over Wi-Fi. With root access you can export every file you like.
Click to expand...
Click to collapse
Several other options:
1. SD card reader - Some Micro SD cards come with a tiny USB reader.
2. SD card adapter - Some Micro SD cards come with an adapter that lets them be used in a full size SD slot.
3. ADB via command line. adb push and adb pull.
Best I have found:
4. Use the file manager in DDMS. DDMS includes a simple file manager. It's basically a GUI for adb push and adb pull. DDMS is part of the Android SDK.

Related

[Q] phone does not connect to PC via USB

[SOLVED] : using dropbox now for file transfer...
After I installed the latest build of stock XDAndriod on my Rhodium, it does not connect to my PC (win-XP) using USB port. I have tried multiple times to reset my phone and re-flash my winmo with no help.
My computer does not detect a USB device at all when I connect my phone when in Android. When I plug in my phone, nothing happens. But my phone does begin charging from the USB port and does detect that is plugged in to a power source.
How do I get my PC to recognize my phone?
Phone details:
H/w : standard AT&T tilt2
Winmo : JackOS build Aug/19
XDAndroid version - [MJG]Rhod.2.2Froyo.083010.rar
Thanks,
Dhanvi
PS: I did check the thread here - http://forum.xda-developers.com/showthread.php?t=641444&highlight=USB+problems and that hasn't solved my problem.
If you read the port status, USB data connections are not currently supported. Only charging is supported via USB.
Thanks for that pience of info, but I do not see anything saying USB on the project development page. Is there some other page that I should be looking at too?
If that is indeed the case, then how do I transfer stuff over from my PC to my SD card when in andriod ? Is there any other method?
Thanks.
kapiladhanvi said:
Thanks for that pience of info, but I do not see anything saying USB on the project development page. Is there some other page that I should be looking at too?
If that is indeed the case, then how do I transfer stuff over from my PC to my SD card when in andriod ? Is there any other method?
Thanks.
Click to expand...
Click to collapse
Use dropbox. www.dropbox.com for you pc and download dropbox in the market.
Thanks for the tip!
Dhanvi
Great Idea but waiting for more help
Hey Fist post here about the xAndroid. I have to say this rocks!! First time I got it up I said to myself this is how a phone is supposed to run.
To the questions do any of you know if this USB connection is going to be fixed anytime soon sine I would really like to see if you can connect Google App Inventor to the phone while on this great mod.
Thanks
Lennyz1988 said:
Use dropbox. www.dropbox.com for you pc and download dropbox in the market.
Click to expand...
Click to collapse
By far the simplest way to get it done.
I went for installing ADB and droid explorer on my pc. It works, but I have much less hair now.
with the current way xdandroid is built, I can't see it being probable that usb mode will ever work (could be wrong, so feel free to correct me).
i.e. currently we have a FAT partition on the SD card and we loopback mount files on it to act as the android system and data file systems, and the fat can then act as a normal SD card.
because of this, it can't expose the FAT partition to anyone outside of the OS instance (i.e. 2 OS's will be writing to the FAT table (redundant I know) independently and can clobber each other.
On the other hand, I think the way the cyanogenmod port works, by partitioning the SD card into multiple partitions to hold the different sets of data (though not sure it takes it all the way), is an approach that could be made to work for usb access, if separate partitions would be made for the system and data file systems on the SD card and a third partition just used for the FAT FS. This way, android can unmount the FAT partition only (nothing else depending on it) and let it be accessed by whatever machine the device is attached to over usb.
there's a reason its not done this way currently as its much harder to manage and continuously update.
just my 2 cents.
Hm, does this also mean, you can not use tools like MyPhoneExplorer (Outlloksync via UBS with Android phones) due to absence of data over USB? Seems like a decent app, but it does not see my TYTN over USB, says no conenction. I also note, Windows XP is trying to install an 'Android Phone' driver when I connect the TYTN to the Laptop. Is this all somehow related?
Oddly, my phone decides to turn on USB after it's been sitting plugged in for a time, which exceeds an hour. It's like it checks for USB connectivity at some long interval.
thetoady said:
with the current way xdandroid is built, I can't see it being probable that usb mode will ever work (could be wrong, so feel free to correct me).
i.e. currently we have a FAT partition on the SD card and we loopback mount files on it to act as the android system and data file systems, and the fat can then act as a normal SD card.
because of this, it can't expose the FAT partition to anyone outside of the OS instance (i.e. 2 OS's will be writing to the FAT table (redundant I know) independently and can clobber each other..
Click to expand...
Click to collapse
With Android on my wife's HD2 (booting from Windows via Haret.exe) USB mass storage mode works fine, so it's definitely doable.
toadlife said:
With Android on my wife's HD2 (booting from Windows via Haret.exe) USB mass storage mode works fine, so it's definitely doable.
Click to expand...
Click to collapse
No clue how - when you're in WinMo, what happens when you plug in your phone and select to use it as a disk drive? It unmounts the SD in WinMo and mounts it on your PC. Same thing would happen in Android, but when the card can't be unmounted - as Android is running off of it.
arrrghhh said:
No clue how - when you're in WinMo, what happens when you plug in your phone and select to use it as a disk drive? It unmounts the SD in WinMo and mounts it on your PC. Same thing would happen in Android, but when the card can't be unmounted - as Android is running off of it.
Click to expand...
Click to collapse
Well I have no idea how it works. I just know that it works.
toadlife said:
Well I have no idea how it works. I just know that it works.
Click to expand...
Click to collapse
I've been told it's flaky on the HD2 and not recommended for use anyways. Still not sure how it works tho.
We won't have true SD card access (USB mass storage) until Android is flashed onto our devices. Until then, true USB mass storage will NOT work.
In the meantime, there's ADB. Perhaps the HD2 guys hacked something up based on ADB, who knows.

USB Mass storage mode - can't see drive in Windows.

Hi, I'm having trouble when using USB mass storage mode on my Kaiser TyTN II with Android Froyo.
When I connect the phone can't see the SD contents from the FAT32 partition.
I have flashed on my TyTN II the latest 2.6.32 kernel from here, and i'm using the Incubus26Jc's Super FroYo RLS16. I have partitioned my 4gb SDHC using GParted to 3 partitions, one of ~3gb in FAT32, next to one in ext2 of ~64mb, and the last one in ext2, of ~1gb for the system.
Strangely enough when using Ubuntu Linux, it sees ands mounts all three partitions without problems. And when inserting my SD to a card reader on windows, it sees the FAT32 partition and I can browse it, but I want to do this with the card on my phone and on windows.
What can be wrong?
You can't do nothing, actually Adb driver for our kaiser is not working on windows...
I'm testing now on my Windows XP laptop and it works... strange.
My home computer is running Windows 7 (and ubuntu) can't it be a problem of w7?
tOz666 said:
I'm testing now on my Windows XP laptop and it works... strange.
My home computer is running Windows 7 (and ubuntu) can't it be a problem of w7?
Click to expand...
Click to collapse
Oo are you serious?
ADB was fixed in the latest version of l1q1d's kernel, but is still incompatible with Windows 7. At least, in my case it doesn't work in Windows 7, causes my computer to freeze until I pull the plug on the phone.
2.6.25 kernel has nice compatibility for Dual Mount SD Widget, check if Super Froyo supports .25 kernels. For me Not So Super Froyo is doing the job on .25 kernel. Default USB Mass Storage mode never works. You can use Dual Mount SD Widget to do the job
For adb, I had no problem with it on .32 while I am using XP.
HUGE EDIT:
Now I understand
Windows can ONLY ONLY see the 1st primary partition on your Removable Flash drive. Plus, linux FS are not recognizable for windows. (you can use Partition Magic or a linux FS supported partition software to actually view them that they exist).
If you want to partition your SD Card in windows, just install HITACHI Microdrive Driver for your SD Card's removable storage and it will identify as a removable hard disk. (I actually did that to have 3 partitions on my 16GB Data Traveler )
dark_prince said:
Windows can ONLY ONLY see the 1st primary partition on your Removable Flash drive.
Click to expand...
Click to collapse
Well I already knew that, but I want to see at least the FAT32 partition for application install, loading mp3, and occasional data storage.
I'm only a couple of days in the android on kaiser world, what is ADB? I read that you need some drivers to make it work, and can be used to install apps etc. but when I connect the phone it doesn't request me drivers unless I select mass storage mode. On Windows 7 it sees it as a Disk in device manager but can't see the drives. On XP it has no problems, it can browse FAT32 part.
So if Android is exposing the phone as a mass storage drive why it doesn't work in 7?
tOz666 said:
Well I already knew that, but I want to see at least the FAT32 partition for application install, loading mp3, and occasional data storage.
I'm only a couple of days in the android on kaiser world, what is ADB? I read that you need some drivers to make it work, and can be used to install apps etc. but when I connect the phone it doesn't request me drivers unless I select mass storage mode. On Windows 7 it sees it as a Disk in device manager but can't see the drives. On XP it has no problems, it can browse FAT32 part.
So if Android is exposing the phone as a mass storage drive why it doesn't work in 7?
Click to expand...
Click to collapse
Because android's itself "Turn on USB Mass Storage" mode doesnt work. Use a Multi Mount SD Widget or Dual Mount SD Widget or SD-Share to do the job
ADB is: http://developer.android.com/guide/developing/tools/adb.html
Just a tool to remotely administer your android device from command prompt
Try installing Hitachi Microdrive Driver in Windows 7 and see if it does any better
http://www.uwe-sieber.de/usbtrouble_e.html
dark_prince said:
Because android's itself "Turn on USB Mass Storage" mode doesnt work. Use a Multi Mount SD Widget or Dual Mount SD Widget or SD-Share to do the job
ADB is: http://developer.android.com/guide/developing/tools/adb.html
Just a tool to remotely administer your android device from command prompt
Try installing Hitachi Microdrive Driver in Windows 7 and see if it does any better
http://www.uwe-sieber.de/usbtrouble_e.html
Click to expand...
Click to collapse
Thanks for the tips. Are you suggesting that installing the Hitachi Microdrive Driver (by the way, I noticed that it's intended for Windows XP) could help in mounting the device using Android's built-in mount option?
cerebralgenius said:
Thanks for the tips. Are you suggesting that installing the Hitachi Microdrive Driver (by the way, I noticed that it's intended for Windows XP) could help in mounting the device using Android's built-in mount option?
Click to expand...
Click to collapse
Hitachi microdrive driver is intended to identify your Flash Drive as USB Hard Drive to see all partitions correctly in windows and allows you to partition your USB flash drive
Nope it wont help, since .32 kernel has not supported USB driver which hinders the USB Mass storage functionality, even through Dual mount apps.
If you are using Kyle's FAT Free Froyo or Not So Super Froyo, install a .25 kernel and then use Dual Mount USB app. It will work for sure.
Another Work Around:
If you just want to move some files to SD Card and you connect your network connection through wifi, you can try ES File Explorer to view Windows Based File Shares, just like you are seeing shared folders from another PC I use it since I connect my mobile and my PC through a wifi router

[Q] Is USB Mass Storage mode supported?

Hi,
does any of you know if the device can work in USB Mass Storage mode, i.e. can it be seen as an external drive from Windows/OSX/Linux without additional software? I own a MacBook Pro and HTC support told me that they are going to release soon a piece of software that works under OSX, but it would be wonderful to have access to the device storage without additional software..
Question already asked and answered here:
http://forum.xda-developers.com/showthread.php?t=1543735
They dont use USB Mass Storage they use Media Transfer Protocol to deal with USB connection. This change was introduced in Honeycomb and has continued into Ice Cream Sandwich.
You can still transfer files to and from the devices its just a diffrent way of doing it.
Forum user Gogol posed these questions:
- Why Google is using MTP instead of USB file transfer on Honeycomb?”
He received the following response from a Google developer:
“MTP is a big improvement over USB mass storage — for devices with lots of internal memory, a manufacturer no longer needs to come up with some hard partition between the USB mass storage and internal storage. Instead, they are all in one partition, with MTP providing access to the directory of media files that would normally be available through USB mass storage. This means there is no longer a need for apps on SD card for such devices, because what used to be the ‘internal SD card’ is in the same partition as where applications are stored. The storage on your device can be used for either applications or media, depending on what you want to put on it. You aren’t stuck with how much space the manufacturer decided to leave for the two areas.
Oh also this means that the media storage doesn’t need to be unmounted from Android when it is being access through the PC.“
Click to expand...
Click to collapse
Source: http://glasskeys.com/2011/02/28/why-google-uses-mtp-instead-of-usb-file-transfer-on-android-3/
A main reason for using MTP rather than for example the USB mass-storage device class (MSC) is that the latter operates at the granularity of a mass storage device block (usually in practice, a FAT block), rather than at the logical file level. In other words, the USB mass storage class is designed to give a host computer undifferentiated access to bulk mass storage, such as compact flash, rather than to a file system, which might be safely shared with the target device (except for specific files which the host might be modifying/accessing). In practice, therefore, when a USB host computer has mounted an MSC partition, it assumes absolute control of the storage, which then may not be safely modified by the device without risk of data corruption until the host computer has severed the connection. Furthermore, because the host computer has full control over the connected storage device, there is a risk that the host computer may corrupt the file system, reformat it to a file system not supported by the USB device, or otherwise modify it in such a way that the USB device cannot completely understand it.
MTP and PTP specifically overcome this issue by making the unit of managed storage a local file rather than an entire (possibly very large) unit of mass storage at the block level. In this way, MTP works like a transactional file system - either the entire file is written/read or nothing. The storage media is not affected by failed transfers.
Click to expand...
Click to collapse
Source: http://en.wikipedia.org/wiki/Media_Transfer_Protocol
No idea how this works with OSX though I'm a Windows guy
HTC-Gunge said:
No idea how this works with OSX though I'm a Windows guy
Click to expand...
Click to collapse
Very nice reply, thank you very much!
I've found Android File Transfer Google utility for OSX: http://www.android.com/filetransfer/
Actually, the One X still uses mass storage mode. Plug it in and you get the same old prompt for charge only, disk drive etc. and it still shows up as a removable disk.
Yes, vanilla android handsets like the GN use MTP mode, but HTCs don't. They have a separate partition still.
Hmm that's interesting if its true, it means HTC have implemented it independently of the OS. Could even be a selling point as I know quite a few people didn't really like the change from USB Mass Storage to MTP.
Thanks for the info!
I'm one of those who hates MTP because it is not as reliable as USB Mass Storage. MTP just doesn't want to play nice with my Win7 machine on my Nexus so I'm really looking forward to the One X and getting proper USB Mass Storage on it.
As much as i prefer MSC over MTP (mainly because you can open music and video files directly from your mass storage device, but if you use MTP, they will have to copy the entire file over to your computer before it will play), my office blocks MSC devices, but strange enough, MTP devices are not blocked.
Therefore i am actually trying to find out of i can use MTP mode in my One X, since MTP is embedded into ICS, there might be a chance. This will enable me to access my One X in office..
anyone has any idea?
I have a slightly similar problem here:
How do i tell the HTC ONE phone, that i want use the mass-storage-mode in USB, and not the f******g HTC/Nero bloatware crap?
Before the update to Android 4.1.1 it was working fine as mass-storage.
CBrown0815 said:
I have a slightly similar problem here:
How do i tell the HTC ONE phone, that i want use the mass-storage-mode in USB, and not the f******g HTC/Nero bloatware crap?
Before the update to Android 4.1.1 it was working fine as mass-storage.
Click to expand...
Click to collapse
HTC has changed mass-storage-mode to MTP in their latest update. I didn't find any way to use as mass storage so I installed CM10.1 (A8 supports mass storage mode).
parkentosh said:
HTC has changed mass-storage-mode to MTP in their latest update. I didn't find any way to use as mass storage so I installed CM10.1 (A8 supports mass storage mode).
Click to expand...
Click to collapse
Thanks for this info. Unfortunally is this no option for me. I dont want to hack my phone, i want to use it.
CBrown0815 said:
Thanks for this info. Unfortunally is this no option for me. I dont want to hack my phone, i want to use it.
Click to expand...
Click to collapse
Agreed - I have the same problem with my OneX on 4.1.1. 4.0.4 was great, 4.1.1 is a backward step in several ways. My Galaxy Nexus (bought to play with Ubuntu Touch!) did the same [email protected] until it updated itself to 4.2.2, and now works correctly - to my mind - as a mass storage device. I think Google realised the error and quietly fixed it. I can't find a document that details all the changes in 4.2.2 so not sure.

[Q] Problem connected my S4 via"Total Commander"

I always connected my phone to my pc via usb and use "Total Commander" file manager. To connect android phones I install "TotalAndDroid" plugin and all worke perfect. Now with my new s4 I can't see the internal and sd memory via "Total Commander". What do I need to define in my galaxy s4 to use "Total Commander" as always ?
xperia_88 said:
I always connected my phone to my pc via usb and use "Total Commander" file manager. To connect android phones I install "TotalAndDroid" plugin and all worke perfect. Now with my new s4 I can't see the internal and sd memory via "Total Commander". What do I need to define in my galaxy s4 to use "Total Commander" as always ?
Click to expand...
Click to collapse
If your previous phones used versions of Android less than 4.0 (ICS), what may have happened was that your phone now supports the Media Transfer Protocol (MTP) rather than USB Mass Storage (UMS). There was a tradeoff to the move. One big one regarding Android is that MTP allows the device to remain mounted on the phone. OTOH, your phone's memory is no longer visible as a drive (that was the catch--in order for phone memory to be mounted on your computer, it had to be UNmounted on the phone). You should check your system and see if it supports MTP (most Windows systems will as the underlying technique was Microsoft's idea).
In my personal experience (I run a Linux system at home) I've found it easier to avoid the matter altogether and transfer files back and forth using an Android file manager (I've personally used ES File Explorer for years) and perhaps a Windows/SMB share.
If you MUST use your phone's SD Card as Mass Storage, there is a thread here that discusses a way to switch the SD Card to Mass Storage mode. However, it will require rooting the device.
WhosAsking said:
If your previous phones used versions of Android less than 4.0 (ICS), what may have happened was that your phone now supports the Media Transfer Protocol (MTP) rather than USB Mass Storage (UMS). There was a tradeoff to the move. One big one regarding Android is that MTP allows the device to remain mounted on the phone. OTOH, your phone's memory is no longer visible as a drive (that was the catch--in order for phone memory to be mounted on your computer, it had to be UNmounted on the phone). You should check your system and see if it supports MTP (most Windows systems will as the underlying technique was Microsoft's idea).
In my personal experience (I run a Linux system at home) I've found it easier to avoid the matter altogether and transfer files back and forth using an Android file manager (I've personally used ES File Explorer for years) and perhaps a Windows/SMB share.
If you MUST use your phone's SD Card as Mass Storage, there is a thread here that discusses a way to switch the SD Card to Mass Storage mode. However, it will require rooting the device.
Click to expand...
Click to collapse
:good::good::good:

[Q] Filesystem for external SD card

Can anybody tell me how to find out the file system in use for an external SD card.
When I connect my phone to the pc the only thing I get is Generic Hierarchical for the file system whereas a windows disk will show the info NTFS, Fat32 and so on.
I already tried with the mount command in a terminal window, this gives a lot of info but I could not detect the filesystem.
Is there a tool or a command that can be used in the terminal to show the formatting info of an external sd card?
Connect it to computer bypassing phone.
Either Windows or linux should tell you something.
You may put here output of 'mount' command you ran.
For you it tells nothing but for someone it does.
Logically thinking:
1. Phones are expected to be connected to computers in either media transfer or storage only mode.
2. Most of people use Windows
- conclusion is that external SD card is not formatted under Linux. Such ones would not be visible under Windows (in most cases).
There are other reasons, like files/dirs permissions, Android is completely not designed to manage Linux filesystems dependencies.

Categories

Resources