USB file transfer to Motorola Xoom

Thanks! Got mtpfs up and running. This breaks my streak of NEVER being able to compile from source, ever :wink: Maybe now I’ll have better luck. Hey, you always learn something new.

Now I’ve got a problem with fuse though. I did the following:

sudo mkdir /media/xoom
sudo chown lee /media/xoom
mtpfs -o allow_others /media/xoom

System answered:

fuse: unknown option `allow_others'

If I leave off the -o allow_others, it doesn’t say anything, so I assume it mounted it, but then when I navigate into the folder it just loads forever in Dolphin. cd /media/xoom says the following:

bash: cd: xoom: Transport endpoint is not connected

:\

I was typing from memory, what happens is you use

mtpfs -o allow_other /media/xoom

Also, I created a mount point not under /media which is where udev likes to mount but instead cheated a /xoom directory with full access (777). and mounted
with a mtpfs -o allow_other /xoom

I was able to copy a 1.2Gbyte media file onto the xoom.

There is another option to this command that some people are using,

mtpfs -s -o allow_other /…/

This disables multi-threaded operation which has helped some.

Alright, I think we might be right on the cusp of solving the problem - I had copied the command and only changed the path to match where I wanted it to be mounted. Now I’ve done everything exactly like you, as far as I can tell, like this:

sudo mkdir /xoom
sudo chmod 777 xoom
mtpfs -o allow_other /xoom

The system answered:

fusermount: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse.conf

Alright, so I figured it’s a conf file that I have to change the settings in, but it doesn’t exist and locate fuse.conf returns nothing. What else is missing? Thanks so much!

so erget did you get it finally working all like you want? hope you did!
I am still waiting for my xoom and because of bank holiday weekend need to wait at least till Tuesday http://forums.opensuse.org/images/smiliesnew/angry.png but when I get it I definitely will need your experience on how you managed working it :slight_smile:

Hey there,

No, it’s still not working because of this fuse problem - not sure how to solve it. I’ll be glad to help you as soon as I get it running myself! :wink:

Did you try the mount as root?

su -
mtpfs -o allow_other /xoom
exit

/etc/fise.conf

Set the maximum number of FUSE mounts allowed to non-root users.

The default is 1000.

#mount_max = 1000

Allow non-root users to specify the ‘allow_other’ or ‘allow_root’

mount options.

user_allow_other

Yes, I’ve tried it as root. When I do, what happens is different, but I’m still unable to access the Xoom.

First of all this:

linux-hr34:/home/lee # mtpfs -o allow_other /xoom/
linux-hr34:/home/lee # ls /xoom 
ls: cannot access /xoom: Transport endpoint is not connected

Then I copied the fuse.conf content from dwellen’s post into /etc/ and tried it again, this time not as root to see if that worked. Again, a different error:

lee@linux-hr34:~> mtpfs -o allow_other /xoom 
fuse: bad mount point `/xoom': Transport endpoint is not connected

Then I tried doing the same thing again as root and got the same error message.
The Xoom’s connected, screen lock is turned off and the xoom directory is in root. :’(

The bad mount point is a clue. make sure the directory /xoom exists and leave
off the tailing / (mtpfs -o allow_other /xoom. Also make sure the mode is 777
chmod 777 /xoom.

Also do a df and see it got mounted.

Alright, getting closer maybe? The directory xoom did exist and had all permissions, but just to be safe I did it again and then tried to mount again. Here’s the output:

linux-hr34:/ # chmod 777 /xoom/
linux-hr34:/ # mtpfs -o allow_other /xoom
linux-hr34:/ # cd xoom
bash: cd: xoom: Transport endpoint is not connected
linux-hr34:/ # df
Filesystem           1K-blocks      Used Available Use% Mounted on
rootfs               472467736  63912156 384555532  15% /
devtmpfs               1919144       204   1918940   1% /dev
tmpfs                  1925904      2424   1923480   1% /dev/shm
/dev/sda2            472467736  63912156 384555532  15% /
df: `/xoom': Transport endpoint is not connected

Interestingly enough, ls xoom shows me (like before) that the transport endpoint’s not connected, but when I plug the xoom in I can see the folder structure in Dolphin because it’s recognized as a media device. I can’t change anything though, and I can’t go inside the folders.

If I try to mount as a normal user I get the bad moint point thing again, but the directory exists, permissions are alright and I tried it with no trailing slashes.

Maybe a difference with the mtp package versions,
I have 1.0.6 installed.

rpm -qa |grep mtp

mtp-tools-1.0.6-4.1.x86_64
libesmtp-1.0.6-2.1.x86_64
libmtp-devel-1.0.6-4.1.x86_64
banshee-1-dmp-mtp-2.0.1-2.11.x86_64
libmtp8-1.0.6-4.1.x86_64

I’ve got the same:

rpm -qa | grep mtp
libmtp8-1.0.6-4.1.x86_64
banshee-1-dmp-mtp-2.0.0-0.3.2.x86_64
libmtp-devel-1.0.6-4.1.x86_64
mtp-tools-1.0.6-4.1.x86_64
libesmtp-1.0.6-2.1.x86_64

Only difference is the Banshee library, I installed it after I saw that you had it and it’s only 2.0.0 rather than 2.0.1, but I think that should be alright because I don’t use Banshee. Or do you think that might be the problem? I’m feeling really confused. Thanks!

I tried a few things to see if I could get mine to fail.

  1. Switched off usb debug mode on the xoom - No difference.
  2. I had the permissions set wrong on the rules file so it wasn’t being used. - No difference
  3. Updated the rules file to:

ATTRS{idVendor}==“22b8”, ATTRS{idProduct}==“70a8”, ENV{ID_GPHOTO2}=“1”, ENV{GPHOTO2_DRIVER}=“proprietary”, ENV{ID_MEDIA_PLAYER}=“1”, ENV{ID_MTP_DEVICE}=“1”, MODE=“0664”, GROUP=“audio”

ATTRS{idVendor}==“22b8”, ATTRS{idProduct}==“70a9”, ENV{ID_GPHOTO2}=“1”, ENV{GPHOTO2_DRIVER}=“proprietary”, ENV{ID_MEDIA_PLAYER}=“1”, ENV{ID_MTP_DEVICE}=“1”, MODE=“0664”, GROUP=“audio”

This allowed dolphin to browse the device, all directories however were empty, There
may be some kind of mapping being done on the xoom.

The xoom however still mounts via the mtpfs program.

Have you tried using the “-s” switch?

mtpfs -s -o allow_other /xoom

Also, the rule file isn’t needed for the mtpfs command, try removing it and restart udev

Alright, I just tried deleting the rules files, then I restarted udev and connected the Xoom. It was recognized as an external media player, so the restart must have been successful. mtpfs still gives me the same error with the bad mount point. :disapointed:

Some other rule might be causing the problem. I know when I removed the rule file for the Xoom the device was no longer recognized as a media play. The
notifier didn’t activate when it was plugged in.

If I’m understanding you correctly, it shouldn’t be recognized as a media device anyway, because I want to be mounting it with mtpfs, right?

Honestly, I’m kind of scared to mess with the rules - would it be possible to disable them all by just putting a ~ in front of them and then test it, and then try switching them on one by one if it works? It’s true that there’s not a lot I could break there because I could always un-rename them with a live system, but that would be such a pain and I really need my system to work well in the other ways too. Maybe it would just be better to wait until somebody makes a program or updates an existing program to be able to deal with the Xoom, rather than all this DIY-ing? But then again that could take a really long time.

Here’s the contents of my rules folder:

ls /etc/udev/rules.d/
40-lomoco.rules      56-hpmud_support.rules             71-multipath.rules
41-soundfont.rules   56-sane-backends-autoconfig.rules  77-network.rules
51-lirc.rules        60-fprint-autosuspend.rules        81-mount.rules
52-irda.rules        60-vboxguest.rules                 81-mptctl.rules
52-usx2yaudio.rules  70-kpartx.rules                    99-iwlwifi-led.rules
55-hpmud.rules       70-persistent-cd.rules
55-libsane.rules     70-persistent-net.rules

Seeing as I don’t really understand what they do, I’ll just leave it at that unless somebody is able to provide other inspiration. Sorry, but I just can’t seem to get it working. :’(

I will need to compare the rules you have to the ones I have. One that sticks out is “81-mptctl.rules”, could you list
the contents. Disabling a rule file is done (I think) by having the file not end in .rules usually mv xx-file.rules to xx-file.rules.hold.

hi erget did you get it working yet?

maybe someone can post step-by-step how to manage connecting xoom to opensuse, it would be handy…

Hey there,

Sorry, loand, I still haven’t gotten it working, although for a while I thought that we were right on track. I guess I was wrong, sadly.

dwellen, here is the content of 81-mtpctl.rules:

# Autoload mptctl module
ACTION!="add", GOTO="mptctl_end"

SUBSYSTEM=="pci", DRIVER=="mpt*", ENV{MODALIAS}=="?*", RUN{ignore_error}+="/sbin/modprobe mptctl"

LABEL="mptctl_end"

When I connect the Xoom to my computer by USB it doesn’t pop up any more, since I deleted the old rules. I’ll deactivate that one as soon as I’m back, I got it by remote and will be out of town until the weekend. Then I can experiment some.