We have moved to a new Sailfish OS Forum. Please start new discussions there.
172

USB file transfer support for Mac OS X

asked 2013-12-18 15:31:33 +0300

bijjal gravatar image

updated 2017-12-20 18:42:09 +0300

DarkTuring gravatar image

As a Jolla user, how I can transfer media files and associated meta data between my Mac and Jolla phone?

edit retag flag offensive close delete

Comments

10

Would be nice get it working with iPhoto and iMovie without need to use Image Capture app on OS X. Getting access to other files would be nice too and preferably so that mounting a file system would be the solution. That would solve the iPhoto issue too.

Penguin ( 2013-12-24 22:30:26 +0300 )edit
4

Thanks for all fine answers! Actually a ready-made solution is needed for accessing Jolla's files from Mac and other computers without developer mode. [Says somebody who has developed enough and only wants to use his device]

jpek-m ( 2014-02-03 21:42:32 +0300 )edit
8

I have to say I'm rather shocked this does not work. I knew I was going to lack the bliss of iCloud syncing everything, but not even showing up as a USB drive (like the N9)? Basically it seems there is no user-friendly way of hooking up the Jolla with a Mac. Really unfortunate considering how popular Macs are these days.

Setok ( 2014-02-17 00:25:03 +0300 )edit
7

Would be nice if USB Mass storage would be supported in addition to MTP.

avdwoude ( 2014-02-20 02:09:38 +0300 )edit

Apparently the Jolla USB vendor/product IDs changed in the 1.0.4.20 update. When selecting "PC Connection" mode, the device comes up as 2931:0a05 now, but it used to be 2931:0a01. Only the latter was added to the development version of libmtp, so this might need yet another entry now.

raimue ( 2014-03-18 03:38:57 +0300 )edit

22 Answers

Sort by » oldest newest most voted
1

answered 2014-01-06 22:44:56 +0300

Sailor gravatar image

updated 2014-01-06 22:54:23 +0300

Finally got MTPFS to work. Needed to recompile it against my patched libmtpfs and osxfuse instead of fuse4x which is macports version.

mbp:Jolla-Dev root# cd Phone\ Memory/
   mbp:Phone Memory root# ls -lah
total 2048
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 ..
-rwxrwxrwx  1 root  wheel   2.4K Dec 30 00:31 .bash_history
-rwxrwxrwx  1 root  wheel    18B Oct 31 16:58 .bash_logout
-rwxrwxrwx  1 root  wheel   176B Oct 31 16:58 .bash_profile
-rwxrwxrwx  1 root  wheel   124B Oct 31 16:58 .bashrc
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .config
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .gconf
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .gstreamer-0.10
-rwxrwxrwx  1 root  wheel     0B Dec 16 23:32 .jolla-startupwizard-done
-rwxrwxrwx  1 root  wheel     0B Dec 21 15:35 .jolla-startupwizard-usersession-done
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .local
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .mozilla
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .profiled
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .qmf
-rwxrwxrwx  1 root  wheel   295B Dec 31 20:05 .sh_history
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .ssh
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .timed
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 .vault
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 Desktop
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 Documents
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 Downloads
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 Music
drwxrwxrwx  2 root  wheel     0B Jan  1  1970 Pictures
<output omitted>

mtpfs@osxfuse0 on /Users/user/Jolla-Dev (osxfusefs, synchronous)
edit flag offensive delete publish link more

Comments

@Sailor Is your MTPFS available somewhere for others ? Or any similar solution ?

Harri Hakulinen ( 2015-01-15 12:36:46 +0300 )edit

@Harri Hakulinen as it does not work very reliable I did not publish it :-/.

Sailor ( 2015-01-15 12:49:07 +0300 )edit
0

answered 2014-01-08 16:59:55 +0300

condo4 gravatar image

For Linux and MTP (Not Mac-OS and nor SSH).

There are many way to use MTP under Linux:

Command line: (source gentoo)

  • sys-fs/mtpfs : A FUSE filesystem providing access to MTP devices

KDE:

For KIO, the project is not embedded by default in KDE, some distribution (like ARCH linux) use it, some other (Debian) in testing release, Gentoo is masked...

In function of the distribution, you need to install it....

After that, I can access to new Android device (MTP for Android > 4.x), but not Jolla... I continue to test...

edit flag offensive delete publish link more

Comments

1

You need to recompile libmtp with the right music-players.h and Jolla IDs in it.

   /*
   * Jolla
   */
  { "Jolla", 0x2931, "Sailfish", 0x0a01,
      DEVICE_FLAGS_ANDROID_BUGS },
Sailor ( 2014-01-08 17:42:58 +0300 )edit

For me in slackware64-14.1(kio-mtp-fae62fc_20121225git) it works by default in kde but browsing the phone is very slow and often loses the connection. Browsing folders takes "forever" and isn't very stable. MTP is to slow so i will use scp instead.

abc123 ( 2014-01-26 06:59:47 +0300 )edit
3

answered 2014-03-05 10:41:32 +0300

updated 2014-03-10 11:08:14 +0300

My two cents tips for OSX users. I managed to use three different solutions, one native, one free (as in speech) and the other donationware. Both require Development mode enabled on Jolla, and the password set for ssh access. Of course your device must be network reachable, via WiFi or USB networking. Take note of the IP showed in Development mode screen (mine is 10.0.1.100).

  1. Native (via Mac Terminal) Simply use scp or rsync -e ssh to copy file from/to Jolla device: ie rsync -av -e ssh Music/iTunes/Rolling\ Stones/ExileOnMainStreet nemo@10.0.1.100:/home/nemo/Music will copy the album ExileOnMainStreet (the folder) in Music folder of nemo user (the only user) on Jolla device.
  2. OSXFuse (http://osxfuse.github.io/) Install OSXFuse, and SSHFS, both from the website above. OSXFuse implements Fuse File System on Mac, and with the second you can mount ssh file systems easily. Next, on your Mac, create a folder to be used as mount point (via Finder or terminal, the one you prefer). I did a folder named Jolla in my home folder. Then, open a Terminal, and write: sshfs nemo@10.0.1.100:/home/nemo /Users/yourusername/Jolla, and in the local Jolla folder you'll see your Jolla device contents. More info on SSHFS page.
  3. Cyberduck Download Cyberduck, it can browse sftp file systems. Cyberduck is free but donationware if you download it from its website, otherwise it costs a bit if you download from App Store. Once you have installed it, you have to connect to your Jolla device through network; in Settings -> Developer mode, take note of WLAN IP address (10.0.1.100 in my network config), and be sure you have Remote connection enabled AND a password set. Then, in Cyberduck, click Open a Connection, select SFTP (SSH File Transfer Protocol) protocol, and enter the credentials (username: nemo, password: the one you inserted before). The last one is the simpler and doesn't require Terminal and/or system software installation. And is the one I choose for myself, after trying all the three of them.

Hope it helps.

edit flag offensive delete publish link more

Comments

Hi @magullo , could you be more precice in the steps once Cyberduck is installed please? I have my phone in dev mode and connected with USB. I tried to open a new SFTP connection with the username "nemo" and my pwd but no connection, what am I doing wrong? Thanks,

damourti ( 2014-03-09 23:46:54 +0300 )edit

In fact, HoRNDIS (http://joshuawise.com/horndis) must be installed first to allow transfers via usb. It has been explained in the first answer page.

Vivien ( 2014-03-10 00:22:38 +0300 )edit

@damourti, I added a few more info, hope it helps.

magullo ( 2014-03-10 11:08:44 +0300 )edit

this does not work for me.

i installed hornids and now i sailfish is present in preferences - network. i chose a IP in der USB-range that developermode on the phone shows.

but i can't connect to the phone with cyberduck.

any tipps?

domnk ( 2014-04-06 20:04:00 +0300 )edit

@domnk, I didn't use HoRNDIS, the steps I suggested involve only development mode and network access through ssh. Did you try any of the three steps above?

magullo ( 2014-04-07 11:12:46 +0300 )edit
6

answered 2014-04-28 03:44:05 +0300

urso gravatar image

updated 2014-05-04 03:35:23 +0300

I found file transfer working fine with 'Android File Transfer' or XNJB. No need for developer mode or ssh. Drawback is file transfer shows your home directory only (no Android directories I think).

The problem is the phone is detected as 'USB communications device class', so the Mac loads the com.apple.driver.AppleUSBCDC driver. The driver seems to claim device ownership. That's why libtmp can not open the device. Additionally the drivers AppleUSBCDCACMData and AppleUSBCDCECMData will be loaded when connecting the phone.

Check with 'sudo dmesg' and 'kextstat' the drivers loaded. Bottommost entries in 'kextstat' show recently loaded drivers. Just unload all 3 drivers:

$ sudo kextunload -b com.apple.driver.AppleUSBCDC
$ sudo kextunload -b com.apple.driver.AppleUSBCDCACMData
$ sudo kextunload -b com.apple.driver.AppleUSBCDCECMData

The next time you reconnect your phone these drivers will not be loaded unless you restarted your Mac.

libtmp works fine after unloading the drivers. Even without vendor and product id. Check with 'mtp-detect'. You will still get the 'UNKNOWN' device message, but no more connection error. Same for 'Android File Transfer' and XNJB.

Note: The screen should not be locked when transfering files.

The USB CDC drivers are provided by /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns. Not sure if it's safe to remove/rename the AppleUSBCDC.kext in said directory. Especially with /System/Library/Extensions/IOUSBFamily.kext being code signed.

Edit: Playing with libusb on my mac I found these information for my Jolla:

Bus: 029 (0x1d), Address: 007, Port: 01
    Class: By Interface
    Manufacturer: Jolla (0x2931)
    Product: Sailfish (0x0a05)
    USB: 2.00, Speed: High[480MBit/s]
    Config 0:
        Max Power: 500mA
        Interface 0:
            Setting 0
            Class: Image
            Description: MTP
        Interface 1:
            Setting 0
            Class: Communications
            Description: PC Suite Services
        Interface 2:
            Setting 0
            Class: Data
            Description: CDC OBEX Data
            Setting 1
            Class: Data
            Description: CDC OBEX Data
        Interface 3:
            Setting 0
            Class: Communications
            Description: SYNCML-SYNC
        Interface 4:
            Setting 0
            Class: Data
            Description: CDC OBEX Data
            Setting 1
            Class: Data
            Description: CDC OBEX Data

In comparison my Nexus 7 displays:

Bus: 029 (0x1d), Address: 007, Port: 01
    Class: By Interface
    Manufacturer: asus (0x18d1)
    Product: Nexus 7 (0x4ee1)
    USB: 2.00, Speed: High[480MBit/s]
    Config 0:
        Max Power: 500mA
        Interface 0:
            Setting 0
            Class: vendor-specific.
            Description: MTP

And my Samsung Galaxy Nexus:

Bus: 029 (0x1d), Address: 007, Port: 01
    Class: By Interface
    Manufacturer: samsung (0x04e8)
    Product: Galaxy Nexus (0x685c)
    USB: 2.00, Speed: High[480MBit/s]
    Config 0:
        Max Power: 500mA
        Interface 0:
            Setting 0
            Class: vendor-specific.
            Description: MTP

With all these additional interfaces exposed by the Jolla phone, your Mac/Linux computer may load additional drivers claiming the interface, thusly libmtp (which is supposed to be used by Android File Transfer and XNJB) can not open the device. That's why you have to find and kill other applications having claimed the interface and unload some drivers.

Would be nice if we can make Sailfish OS to offer only the MTP interface for file transfer mode.

edit flag offensive delete publish link more

Comments

It works for me. After unloading the driver I was able to use XNJB to download and upload files. But the App "Android File Transfer" did not work.

monomartin ( 2015-03-22 22:20:06 +0300 )edit
2

After removing the ",obex" option, Android File Transfer works just fine for me on OS X. No other change was required.

raimue ( 2015-09-10 02:05:49 +0300 )edit
1

@raimue: Thanks for confirming this works. Based on this feedback the obex option has already been dropped and this fix should be in the early access release that was announced today.

Philippe De Swert ( 2015-09-10 02:19:33 +0300 )edit
1

And since by converting things to an answer the actual steps to achieve this results have disappeared from this thread... It is described here : https://together.jolla.com/question/282/usb-file-transfer-support-for-mac-os-x/?answer=105226#post-id-105226

Philippe De Swert ( 2015-09-16 17:03:52 +0300 )edit
11

answered 2014-05-06 04:04:12 +0300

bmwebb gravatar image

We really need to have a simple "Joe Sixpack" capability to transfer files to & from OSX. All these solutions are fine if you have the ability or time to be able to enable them but all I want to do is plug in my Jolla and not have to think about dev mode or SSH etc.

edit flag offensive delete publish link more
2

answered 2014-07-11 10:49:21 +0300

2Ti gravatar image

updated 2014-08-20 12:45:50 +0300

I've just noticed that plugging the phone in via USB in PC connection mode (man I wish they would rename that) to a Mac will open iPhoto and load all the photos there. Still nothing in Finder, so no general purpose file transfer, but iPhoto sync seems to be working. I haven't seen anything about this in the release notes of Saapunki (1.0.7), Paarlampi (1.0.5) or Ohijärvi (1.0.4). The release notes for 1.0.4 say that MTP support has been added but it did not work back then. IPhoto only showed an empty SDCARD, which is not where the camera stores pictures. Perhaps this is something Jolla is currently working on.

There is a slight problem with that though. IPhoto loads all pictures from the device, including all chat emoticons, map tiles, album art literally everything. I remember having the same problem with old Nokia's, I hope it's not some Apple quirk and that Jolla can do something about it.

I am running 1.0.7.18

An alternative to using USB and MTP is to install BitTorrent Sync (www.bittorrent.com/sync). I've been using that setup since Feb '14 to backup photos from Jolla to my laptop and it works great, no 3rd party servers involved. You can also use it to transfer files to Jolla but there may be some file permission issues as the mobile client is alas android. If you decide to give it a try, make sure you set it as a backup on the Jolla side. That way the sync is one way Jolla -> Computer.

edit flag offensive delete publish link more

Comments

iPhoto supports MTP devices (Cameras etc) - therefore you can see your Jolla-pictures on iPhoto. Unfortunately OSX itself doesn't support MTP so unless Jolla comes up with some kind of Sync-Software there won't be a possibolity to connect your Jolla. Transfering files to Jolla on Windows or Linux (Ubuntu) works fine for me. I use OSX as well and know how annoying that system is as soon as you want to use a non-Apple device or service.

Same problem exists with Android devices (but there's an "Android File Transfer" app for OSX which solves that problem).

molan ( 2014-07-11 11:10:41 +0300 )edit

I can confirm that as of today iPhoto also shows the photos on the Jolla for me. This has never worked before (I gave up trying at some point, so I'm not sure what has changed). I can also confirm it shows files and images of things I have not taken.

Setok ( 2014-07-11 11:34:16 +0300 )edit

@Setok This must have changed in 1.0.5 or 1.0.7 because on 1.0.4 it did not work. @caprico I've also tried Android File Transfer on OSX but that doesn't seem to do anything. So if libmtp works I wonder how difficult it would be to make UI around that?

2Ti ( 2014-07-11 11:43:35 +0300 )edit

If you open the Picture Transfer application on a Mac you will see all pictures and also all audio files. You can transfer any of them on the Mac. This is not a complete solution but it can help.

ron282 ( 2015-02-25 09:47:16 +0300 )edit

iPhotos is working for me too. I'm able to sync photos, audio and video files to my laptop.

Rosemary ( 2015-04-22 08:53:30 +0300 )edit
0

answered 2015-08-19 12:53:06 +0300

Herve5 gravatar image

Not having received my tablet yet I cannot try it, but on my android Fairphone I installed an app named "Samba Filesharing", that'll create a samba server on your LAN, then from the mac you can log in and just see the phone structure as an ordinary server. Efficient for transfering files, pictures etc.

The Samba server app is very straitghtforward, practically being two clicks away (activate app, select 'start server'). Alas it is not on F-droid, so you have to install it via the google market, but IIRC it's free.

edit flag offensive delete publish link more
5

answered 2015-08-19 22:31:50 +0300

Philippe De Swert gravatar image

updated 2015-09-16 17:01:37 +0300

Seems apss and the android transfer app get confused by the extra obex communication device (which is not used atm anyway) You can avoid the communication device coming up by using developer mode and editing /etc/usb-moded/dyn-modes/pc_suite-android.ini

And remove the obex on the sysfs_value = ffs,obex line, so it reads afterwards sysfs_value = ffs

After this you will either restarts usb-moded (systemctl restart usb-moded ) or reboot the phone.

This will be also fixed in the upcoming release. (2.0.x)

edit flag offensive delete publish link more
0

answered 2015-08-22 10:29:03 +0300

danfin gravatar image

Commander one<, a OSX Finder substitute, adds MTP access from your mac in it's 'pro' version only, which is 29.50.

edit flag offensive delete publish link more
2

answered 2016-09-22 00:35:54 +0300

molan gravatar image

updated 2016-09-22 11:14:25 +0300

File transfer between Sailfish OS and OSX is possible using Android File Transfer software at least since Aurajoki upgrade. Official webpage: Android File Transfer download

  1. Open Android File Transfer on your Mac before you connect Jolla (otherwise there can be connection errors)
  2. Connect Jolla via USB press "PC Connection" (selection pops up automatically - if not, reconnect USB cable).
  3. Open Android File Transfer --> If it says something like "Connection not possible", try to reconnect your Jolla and wait a second.
  4. Now you have access to Jolla's mass storage and SD card storage and can drag & drop files to your phone or Mac. Android files are available in folder android_ storage.

This solution works very well and I don't think we can expect Jolla to develop its own macOS sync-software.

image description

edit flag offensive delete publish link more

Comments

Does it work on Jolla 1? As far as I remember, I tried a few days back, after 2.0.2.51 was released, and it did work.

magullo ( 2016-09-22 10:26:29 +0300 )edit
1

@magullo: Yes it works with 2.0.2.51 on Jolla1 and Jolla C. I don't have any other Sailfish OS devices to test with.

molan ( 2016-09-22 11:11:07 +0300 )edit

@caprico: The mtp service at jolla side waits until it has enumerated all files in all storage areas before sending replies to OpenSession command -> pc side sw that expects speedy reply to it could get confused -> might explain why your (3) makes a difference (the mtp service gets restarted, but gets the enumeration finished faster due to "warmed up" file system caches). Maybe the biggest change in 2.0.2 is fixing of issues related to creating thumbnail icons that could make the initial delay last minutes rather than seconds on devices with lots of pictures.

spiiroin ( 2016-09-22 11:47:25 +0300 )edit

@spiiroin: Thank you for your explanation - that makes sense. Whatever Jolla fixed, it's good to finally have a easy-to-use solution for Mac users.

molan ( 2016-09-27 15:40:45 +0300 )edit
Login/Signup to Answer

Question tools

Follow
44 followers

Stats

Asked: 2013-12-18 15:31:33 +0300

Seen: 21,553 times

Last updated: Dec 22 '17