hanwen / go-mtpfs Goto Github PK
View Code? Open in Web Editor NEWMount MTP devices over FUSE
License: Other
Mount MTP devices over FUSE
License: Other
I have several crash like this one when transfering several files, I'm using the compiled binary for linux.
Connecting to Galaxy Nexus and Nexus 10, crash seems random
2012/12/27 09:57:37 sending file without backing store: "11 - myfile.mp3"
panic: sending file without backing store: "11 - myfile.mp3"
goroutine 9 [running]:
log.Panicf(0x8150734, 0x26, 0xb7455d40, 0x1)
/home/hanwen/vc/go/src/pkg/log/log.go:0 +0x99
main.(_fileNode).send(0x187cf090, 0x0, 0x0)
/home/hanwen/go/src/go-mtpfs/fs.go:233 +0x116
main.(_pendingFile).Flush(0x187c7248, 0x187cf000, 0x0)
/home/hanwen/go/src/go-mtpfs/fs.go:662 +0x66
github.com/hanwen/go-fuse/fuse.(_FileSystemConnector).Flush(0x18701c90, 0x18767f10, 0x18767f38, 0x40, 0x1873f140, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x7e
github.com/hanwen/go-fuse/fuse.(_LockingRawFileSystem).Flush(0x187300b0, 0x18767f10, 0x18767f38, 0x0, 0x1873f1e0, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x71
github.com/hanwen/go-fuse/fuse.doFlush(0x18744310, 0x18767e00, 0x40)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x56
github.com/hanwen/go-fuse/fuse.(_MountState).handleRequest(0x18744310, 0x18767e00, 0x18767e00)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x221
github.com/hanwen/go-fuse/fuse.(_MountState).loop(0x18744310, 0x1, 0x0)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x7b
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x7af
goroutine 1 [syscall]:
syscall.Syscall()
/home/hanwen/vc/go/src/pkg/syscall/asm_linux_386.s:0 +0x1f
syscall.Read(0x9, 0x18970000, 0x11000, 0x11000, 0x187002e8, ...)
/home/hanwen/vc/go/src/pkg/syscall/env_unix.go:0 +0x5c
os.(_File).read(0x187002e8, 0x18970000, 0x11000, 0x11000, 0x90, ...)
/home/hanwen/vc/go/src/pkg/os/dir_unix.go:0 +0x44
os.(_File).Read(0x187002e8, 0x18970000, 0x11000, 0x11000, 0xb7451b58, ...)
/home/hanwen/vc/go/src/pkg/os/dir_unix.go:0 +0x67
github.com/hanwen/go-fuse/fuse.(_MountState).readRequest(0x18744310, 0x18767000, 0x18767000, 0x0, 0x18744374, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x1b8
github.com/hanwen/go-fuse/fuse.(_MountState).loop(0x18744310, 0x0, 0xf)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x4f
github.com/hanwen/go-fuse/fuse.(*MountState).Loop(0x18744310, 0x1)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x46
main.main()
/home/hanwen/go/src/go-mtpfs/main.go:90 +0xdf4
goroutine 2 [syscall]:
created by runtime.main
/home/hanwen/vc/go/src/pkg/runtime/proc.c:-1577
goroutine 3 [syscall]:
syscall.Syscall()
/home/hanwen/vc/go/src/pkg/syscall/asm_linux_386.s:0 +0x1f
syscall.Read(0x9, 0x189c5000, 0x11000, 0x11000, 0x187002e8, ...)
/home/hanwen/vc/go/src/pkg/syscall/env_unix.go:0 +0x5c
os.(_File).read(0x187002e8, 0x189c5000, 0x11000, 0x11000, 0x8060885, ...)
/home/hanwen/vc/go/src/pkg/os/dir_unix.go:0 +0x44
os.(_File).Read(0x187002e8, 0x189c5000, 0x11000, 0x11000, 0x0, ...)
/home/hanwen/vc/go/src/pkg/os/dir_unix.go:0 +0x67
github.com/hanwen/go-fuse/fuse.(_MountState).readRequest(0x18744310, 0x18782001, 0x18782000, 0x0, 0x1874813c, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x1b8
github.com/hanwen/go-fuse/fuse.(_MountState).loop(0x18744310, 0x1, 0x0)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x4f
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/api.go:0 +0x7af
goroutine 4 [finalizer wait]:
created by runtime.gc
/home/hanwen/vc/go/src/pkg/runtime/mgc0.c:-1343
fs/android.go has the following code:
func (f *androidFile) Read(dest []byte, off int64) (fuse.ReadResult, fuse.Status) {
if off >= f.node.Size {
// ENXIO = no such address.
return nil, fuse.Status(int(syscall.ENXIO))
}
Notably, this breaks when reading some files at EOF, e.g. when using "cat" or "cp" to copy SQLite database files or other files that happen to be a multiple of the read block size in length. Example of the issue:
[rpolzer@rpolzer SD-Karte]$ dd if=/dev/zero of=64k.txt bs=1k count=64
2014/02/17 11:16:48 0 bytes in 22.117094ms: 0 mb/s
2014/02/17 11:16:48 65536 bytes in 79.899594ms: 0 mb/s
64+0 records in
64+0 records out
65536 bytes (66 kB) copied, 0.0848392 s, 772 kB/s
[rpolzer@rpolzer SD-Karte]$ cat 64k.txt
cat: 64k.txt: No such device or address
strace shows:
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 32768) = 32768
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 32768) = 32768
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 32768) = 32768
write(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 32768) = 32768
read(3, 0xb0f000, 32768) = -1 ENXIO (No such device or address)
write(2, "cat: ", 5cat: ) = 5
This breaks the exit status of cat, cp etc. which is quite annoying.
I suggest:
if off > f.node.Size, sure, sounds log-worthy, but should this really set errno? It doesn't for regular files. So, report no error but just a 0 bytes read.
if off == f.node.Size, report a 0 bytes read instead, but no error and no logging.
This is consistent with how regular files behave:
$ echo aa > x.txt
$ strace -fe read,lseek perl -e '
sysread STDIN, $x, 7;
sysread STDIN, $x, 2;
sysread STDIN, $x, 2;
seek STDIN, 2000, 0;
sysread STDIN, $x, 7
' < x.txt
...
read(0, "aa\n", 7) = 3
read(0, "", 2) = 0
read(0, "", 2) = 0
lseek(0, 2000, SEEK_SET) = 2000
lseek(0, 0, SEEK_CUR) = 2000
read(0, "", 7) = 0
Is it possible to use go-mtpfs to browse the entire device filesystem if the device is rooted? It would be very cool to replace ADB for browsing system files with this if possible.
I have refered thie wiki https://wiki.archlinux.org/index.php/MTP#go-mtpfs
Bus 003 Device 002: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II], GT-I9300 Phone [Galaxy S III], GT-P7500 [Galaxy Tab 10.1]
go-mtpfs have installed
2013/02/12 21:40:27 Configure failed: OpenSession after reset: LIBUSB_ERROR_TIMEOUT
even I set -usb-timeout flag to long,10000
my os:
archlinux 3.7.6 64bit
Hello,
You People created a hell one good tool :)
BUT :) where is some docs, especially for -dev="" switch ? I found that, this allow to filter out what I want to mount but how to do it?
If I just type into dev param (I have nexus 7 2013 LTE) "18d1:4ee2 ", go-mtpfs throw errors... So how it should look like the -dev="" parameter (for vid, pid and/or serial no.) ?
I followed the conversation on the recently-closed bug for Samsung devices (#29), but unfortunately I am still hit by the LIBUSB_ERROR_TIMEOUT bug. I'm on Debian Wheezy.
I'm on the latest revision of go-mtpfs, I believe:
nknouf@nomadicsounds go-mtpfs> git rev-parse HEAD 731851c9363ffa26206219b9fbec1897f0b3d9d1
The debug logs don't provide much info for me:
nknouf@nomadicsounds go-mtpfs> ../../../../bin/go-mtpfs -debug=usb,mtp -usb-timeout=10000 /media/noteII
2013/03/24 10:28:49 MTP request OpenSession [1101278637]
2013/03/24 10:28:59 MTP sendreq failed: LIBUSB_ERROR_TIMEOUT
2013/03/24 10:28:59 OpenSession failed: LIBUSB_ERROR_TIMEOUT; attempting reset
2013/03/24 10:28:59 USB: ReleaseInterface 0x0, err: <nil>
2013/03/24 10:28:59 USB: Close, err: <nil>
2013/03/24 10:29:00 USB: Open, err: <nil>
2013/03/24 10:29:00 USB: ClaimInterface 0x0, err: <nil>
2013/03/24 10:29:00 MTP request OpenSession [1267048825]
2013/03/24 10:29:10 MTP sendreq failed: LIBUSB_ERROR_TIMEOUT
2013/03/24 10:29:10 Configure failed: OpenSession after reset: LIBUSB_ERROR_TIMEOUT
nknouf@nomadicsounds go-mtpfs>
Any suggestions of what else to try?
I'm using Ubuntu 12.10 and I've installed go-mtpfs through the PPA webupd8team.
I've tried numerous times to copy an MKV file to my Nexus 10. To the system (Ubuntu) it appears as if the file has been copied without any problems, but when I see the file size in the tablet it's just a few hundred MB big.
It's like if at some point all the data was discarded.
Iotop showed during the whole operation reads and writes to the correct source and destiny folders at a high rate (~45 MB/s).
Copying the files under Windows 7 with the same MTP mode worked perfectly, although slower (~25 MB/s).
When trying to cross compile for arm (setting GOARCH=arm), I am getting lot of undefined errors. Regular compilation is fine.
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:5: undefined: CLASS_PER_INTERFACE
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:7: undefined: CLASS_AUDIO
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:9: undefined: CLASS_COMM
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:11: undefined: CLASS_HID
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:13: undefined: CLASS_PHYSICAL
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:15: undefined: CLASS_PRINTER
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:17: undefined: CLASS_IMAGE
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:19: undefined: CLASS_MASS_STORAGE
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:21: undefined: CLASS_HUB
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:23: undefined: CLASS_DATA
tmp/go/src/github.com/hanwen/go-mtpfs/usb/print.go:23: too many errors
I've tried to copy the following tree to my nexus 4:
2006 - One Cold Winter's Night (Live)
├── CD1
│ ├── 01 - Intro - Un Assassinio Molto Silenzioso.mp3
│ ├── 02 - The Black Halo.mp3
│ ├── 03 - Soul Society.mp3
│ ├── 04 - The Edge Of Paradise.mp3
│ ├── 05 - Center Of The Universe.mp3
│ ├── 06 - Nights Of Arabia.mp3
│ ├── 07 - Abandoned.mp3
│ ├── 08 - Forever.mp3
│ ├── 09 - Keyboard Solo.mp3
│ ├── 10 - The Haunting (Somewhere In Time).mp3
│ └── 11 - Moonlight.mp3
└── CD2
├── 01 - When The Lights Are Down.mp3
├── 02 - Elizabeth (Part I, II & III).mp3
├── 03 - March Of Mephisto.mp3
├── 04 - Karma.mp3
├── 05 - Drum Solo.mp3
├── 06 - Farewell.mp3
└── 07 - Outro.mp3
2 directories, 18 files
and got this error:
2013/02/11 11:32:37 error fetching: PTP Layer error 02fe: LIBMTP_Get_File_To_File_Descriptor(): Could not get file from device.
(Look this up in ptp.h for an explanation.)
Then I manually create the folder, and copy the files by hand (without the CD1 and CD2 directories) and it works like a charm.
Just an FYI -
Installing on Mac OS X 10.7.5 using go-mtpfs and go-fuse from 3/5/2013 (the latest as of this writing)
here's the errors I'm getting for go-mtpfs:
Its a short one but I assume its important:
# github.com/hanwen/go-mtpfs/usb
usb.go:43:15: struct size calculation error off=72 bytesize=64
This looks like a problem with libusb-1.0.9, but I'm not familiar with Go, and I certainly don't know cgo.
Hope this helps.
Hi,
I was able to connect my samsung galaxy S 3 lte and with udev I can mount and umount (both auto) with normal user. I've downloaded go-mtpfs binary from your site. I wasn't able to compile your package (32-bit even if my machine is 64-bit) cause the following errors:
go install github.com/hanwen/go-mtpfs
error: 'libusb_error_name' undeclared (first use in this function)
error: (Each undeclared identifier is reported only once
error: 'LIBUSB_SPEED_SUPER' undeclared (first use in this function)
error: 'LIBUSB_SPEED_LOW' undeclared (first use in this function)
error: 'libusb_get_device_speed' undeclared (first use in this function)
error: 'LIBUSB_SPEED_UNKNOWN' undeclared (first use in this function)
error: 'LIBUSB_SPEED_HIGH' undeclared (first use in this function)
error: 'LIBUSB_SPEED_FULL' undeclared (first use in this function)
hear is my usb-go (relevant lines)
// The usb package is a straighforward cgo wrapping of the libusb 1.0
// API. It only supports the synchronous API, since Goroutines can be
// used for asynchronous use-cases.
package usb
// #cgo LDFLAGS: -lusb-1.0
// #cgo CFLAGS: -I/usr/include/libusb-1.0
// #include <libusb.h>
import "C"
import (
"fmt"
"reflect"
"unsafe"
)
const SPEED_UNKNOWN = C.LIBUSB_SPEED_UNKNOWN
const SPEED_LOW = C.LIBUSB_SPEED_LOW
const SPEED_FULL = C.LIBUSB_SPEED_FULL
const SPEED_HIGH = C.LIBUSB_SPEED_HIGH
const SPEED_SUPER = C.LIBUSB_SPEED_SUPER
var SPEED_names = map[byte]string{
byte(SPEED_UNKNOWN): "UNKNOWN",
byte(SPEED_LOW): "LOW",
byte(SPEED_FULL): "FULL",
byte(SPEED_HIGH): "HIGH",
byte(SPEED_SUPER): "SUPER",
}
type ControlSetup C.struct_libusb_control_setup
type Transfer C.struct_libusb_transfer
I'm on debian squeeze. Thanks if you can help.
Regards
Vincenzo
Successfully compiled after passage from squeeze to sweezy (testing) always 32-bit. Now with udev and fstab correct entries I'm able to mount and umount automatically copy, create folders, files, edit them in kwrite with go-mtpfs. Even with binary on your site I was able to do such things (phone model Samsung galaxy 3 GT-I9305 LTE not rooted)
Thanks
Vincenzo
azrull@MacBook:~$ go get github.com/hanwen/go-mtpfs
/tmp/go/src/github.com/hanwen/go-fuse/raw/print_linux.go:12: undefined: CAP_XTIMES
/tmp/go/src/github.com/hanwen/go-fuse/raw/print_linux.go:13: undefined: CAP_VOL_RENAME
/tmp/go/src/github.com/hanwen/go-fuse/raw/print_linux.go:14: undefined: CAP_CASE_INSENSITIVE
azrull@MacBook:~$ sudo mv /tmp/go/bin/go-mtpfs /usr/local/sbin/go-mtpfs
mv: cannot stat `/tmp/go/bin/go-mtpfs': No such file or directory
Mounting Android devices works only with internal SD card, if external SD Card is present then mounting fails.
$ go-mtpfs /mnt/
2013/11/28 12:48:02 compiled against libmtp 1.1.5
Device 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
2013/11/28 12:48:02 found device Samsung: Galaxy models (MTP) (04e8:6860) @ bus 2, dev 40
:
ignoring libusb_claim_interface() = -6PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
inep: usb_get_endpoint_status(): No such device
outep: usb_get_endpoint_status(): No such device
usb_clear_halt() on IN endpoint: No such device
usb_clear_halt() on OUT endpoint: No such device
usb_clear_halt() on INTERRUPT endpoint: No such device
libusb_open() failed!: No such device
LIBMTP PANIC: Could not init USB on second attempt
2013/11/28 12:48:02 rdev.open failed: open: open returned nil
So I am a happy brand new user of a galaxy s3 (which has survived a substantially high hall on its first day, not that you probably care too much) and I was to try to access its files and I found is not as straightforward as I would have hoped.
So I wonder if you can help me sort this out. I have compiled it against the available libmtp (which is 1.1.3 at debian testing) and the device it's detected properly, however there is no mounting happening. When I access the mount directory it is empty. Is there any feedback I can provide? After a while I got the following:
PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
ariel@mescamovil:~$ LIBMTP PANIC: failed to open session on second attempt
2013/02/01 13:20:46 rdev.open failed: open: open returned nil
[1]+ Exit 1 go-mtpfs a
I made sure the device is unlocked.
Hey, I opened MediaMonkey (under whine) while having mounted my Android phone with go-mtpfs. It crashes quickly with the following messages:
I'm on Archlinux and compiled go-mtpfs from git using AUR (commit 5bc93a3)
Heres's the log. Somewhere near the bottom is a "panic: runtime error: slice bounds out of range" message.
kugel@thomas-nb:~$ go-mtpfs -android=true -debug=mtp mnt
2013/10/15 10:18:54 MTP request OpenSession [77531165]
2013/10/15 10:18:54 MTP response SessionAlreadyOpened [1783576951]
2013/10/15 10:18:54 MTP request CloseSession []
2013/10/15 10:18:54 MTP response OK []
2013/10/15 10:18:54 MTP request OpenSession [1405567681]
2013/10/15 10:18:54 MTP response OK []
2013/10/15 10:18:54 MTP request GetStorageIDs []
2013/10/15 10:18:54 MTP data 0x14 bytes
2013/10/15 10:18:54 MTP response OK []
2013/10/15 10:18:54 MTP decoded &mtp.Uint32Array{Values:[]uint32{0x10001}}
2013/10/15 10:18:54 MTP request GetStorageInfo [65537]
2013/10/15 10:18:54 MTP data 0x58 bytes
2013/10/15 10:18:54 MTP response OK []
2013/10/15 10:18:54 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:54 MTP request GetDeviceInfo []
2013/10/15 10:18:54 MTP data 0x1db bytes
2013/10/15 10:18:54 MTP response OK []
2013/10/15 10:18:54 MTP decoded &mtp.DeviceInfo{StandardVersion:0x64, MTPVendorExtensionID:0x6, MTPVersion:0x64, MTPExtension:"microsoft.com: 1.0; android.com: 1.0; microsoft.com/WPDNA: 1.0;sonyericsson.com/SE: 1.0; sony.net/MRLN: 1.0;", FunctionalMode:0x0, OperationsSupported:[]uint16{0x1001, 0x1002, 0x1003, 0x1004, 0x1005, 0x1006, 0x1007, 0x1008, 0x1009, 0x100a, 0x100b, 0x100c, 0x100d, 0x1014, 0x1015, 0x1016, 0x1017, 0x101b, 0x9801, 0x9802, 0x9803, 0x9804, 0x9805, 0x9810, 0x9811, 0x95c1, 0x95c2, 0x95c3, 0x95c4, 0x95c5, 0x9186, 0x9187, 0x9188, 0x9189, 0x9191, 0x9194, 0x9196, 0x9197, 0x940c, 0x940d, 0x9407, 0x9408, 0x9409}, EventsSupported:[]uint16{0x4002, 0x4003, 0x4004, 0x4005, 0xc350, 0xc35a}, DevicePropertiesSupported:[]uint16{0xd401, 0xd402, 0xd405, 0x5003, 0xd120}, CaptureFormats:[]uint16{}, PlaybackFormats:[]uint16{0x3000, 0x3001, 0x3004, 0x3005, 0x3008, 0x3009, 0x3801, 0x3802, 0x3804, 0x3807, 0x3808, 0x380b, 0x380d, 0xb902, 0xb903, 0xb982, 0xb984, 0xba03, 0xba05, 0xba10, 0xba11, 0xba14, 0xba82, 0xb906, 0xb102}, Manufacturer:"Sony", Model:"LT22i", DeviceVersion:"1.0", SerialNumber:"CB511YAS8K"}
2013/10/15 10:18:54 MTP request GetStorageInfo [65537]
2013/10/15 10:18:54 MTP data 0x58 bytes
2013/10/15 10:18:54 MTP response OK []
2013/10/15 10:18:54 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:54 starting FUSE.
2013/10/15 10:18:56 MTP request GetStorageInfo [65537]
2013/10/15 10:18:56 MTP data 0x58 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:56 MTP request GetStorageInfo [65537]
2013/10/15 10:18:56 MTP data 0x58 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:56 MTP request GetObjectHandles [65537 0 4294967295]
2013/10/15 10:18:56 MTP data 0xe0 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.Uint32Array{Values:[]uint32{0x1, 0x3, 0x4, 0x5, 0x265, 0x266, 0x267, 0x278, 0x27a, 0x282, 0x2ba, 0x2c9, 0x2cc, 0x6fa, 0x6fe, 0xda0, 0xda3, 0xdbb, 0xdbc, 0xdc0, 0xdc3, 0xdc5, 0xdd1, 0xdd3, 0xdd5, 0xdd8, 0xdda, 0xde2, 0xe83, 0xf75, 0xf8c, 0xf8e, 0x118c, 0x1190, 0x12f6, 0x1f11, 0x2057, 0x2482, 0x2487, 0x24a0, 0x258e, 0x2821, 0x30da, 0x30f0, 0x3201, 0x354e, 0x367d, 0x38aa, 0x3edb, 0x4e73, 0x4e89, 0x4e8a}}
2013/10/15 10:18:56 MTP request GetObjectInfo [1]
2013/10/15 10:18:56 MTP data 0x80 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Notifications", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487403370, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3]
2013/10/15 10:18:56 MTP data 0x76 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"LOST.DIR", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63476979722, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [4]
2013/10/15 10:18:56 MTP data 0x84 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".android_secure", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63517306852, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [5]
2013/10/15 10:18:56 MTP data 0x74 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Android", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63492013124, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [613]
2013/10/15 10:18:56 MTP data 0x78 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Playlists", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488192502, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [614]
2013/10/15 10:18:56 MTP data 0x76 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"recovery", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63082957006, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [615]
2013/10/15 10:18:56 MTP data 0x6e bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"DCIM", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487388818, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [632]
2013/10/15 10:18:56 MTP data 0x78 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Ringtones", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63504488062, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [634]
2013/10/15 10:18:56 MTP data 0x76 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Pictures", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487403606, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [642]
2013/10/15 10:18:56 MTP data 0x78 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"amazonmp3", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63512821248, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [698]
2013/10/15 10:18:56 MTP data 0x74 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"rockbox", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63516321160, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [713]
2013/10/15 10:18:56 MTP data 0x78 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"bluetooth", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63502082606, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [716]
2013/10/15 10:18:56 MTP data 0x70 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"pulse", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487954048, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [1786]
2013/10/15 10:18:56 MTP data 0x86 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"SMSBackupRestore", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63505779414, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [1790]
2013/10/15 10:18:56 MTP data 0x70 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Musik", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488060370, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3488]
2013/10/15 10:18:56 MTP data 0x70 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"chomp", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63491561016, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3491]
2013/10/15 10:18:56 MTP data 0x70 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".jota", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487576426, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3515]
2013/10/15 10:18:56 MTP data 0x7e bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"TunnyBrowser", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63494120914, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3516]
2013/10/15 10:18:56 MTP data 0x76 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"download", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63512291816, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3520]
2013/10/15 10:18:56 MTP data 0x76 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"ebanking", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63505436752, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3523]
2013/10/15 10:18:56 MTP data 0x88 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"burstlyVideoCache", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63499108548, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3525]
2013/10/15 10:18:56 MTP data 0x88 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"burstlyImageCache", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63499108548, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3537]
2013/10/15 10:18:56 MTP data 0x7e bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Cut the Rope", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487828540, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3539]
2013/10/15 10:18:56 MTP data 0x78 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Scoreloop", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63490929354, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3541]
2013/10/15 10:18:56 MTP data 0x72 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"System", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487991080, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3544]
2013/10/15 10:18:56 MTP data 0x7c bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"com.fsck.k9", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63487991280, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3546]
2013/10/15 10:18:56 MTP data 0x7e bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"GOLauncherEX", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488038746, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3554]
2013/10/15 10:18:56 MTP data 0x74 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"GoStore", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488038572, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3715]
2013/10/15 10:18:56 MTP data 0xa2 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x14367d, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Superuser-3.1.3-arm-signed.zip", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488441290, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3957]
2013/10/15 10:18:56 MTP data 0x8a bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0xda0cbe, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"wlan_standards.pdf", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488655724, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3980]
2013/10/15 10:18:56 MTP data 0x7a bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x784, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"data-1.zip", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488830348, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [3982]
2013/10/15 10:18:56 MTP data 0x6e bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"data", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488951320, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [4492]
2013/10/15 10:18:56 MTP data 0x82 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"TitaniumBackup", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63505779042, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [4496]
2013/10/15 10:18:56 MTP data 0x8a bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x3851b0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"TitaniumBackup.zip", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63488951564, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [4854]
2013/10/15 10:18:56 MTP data 0x72 bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"twonky", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63489981882, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [7953]
2013/10/15 10:18:56 MTP data 0x7c bytes
2013/10/15 10:18:56 MTP response OK []
2013/10/15 10:18:56 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".mmsyscache", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63497118818, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:56 MTP request GetObjectInfo [8279]
2013/10/15 10:18:57 MTP data 0x78 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x21, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".bugsense", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63497568466, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [9346]
2013/10/15 10:18:57 MTP data 0x7e bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x22c79, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"PIM00002.vcf", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63499630900, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [9351]
2013/10/15 10:18:57 MTP data 0x86 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".semc-fullbackup", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63499632196, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [9376]
2013/10/15 10:18:57 MTP data 0x98 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x9ddc2, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"AdFree_Android_0_8_47.apk", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63499967660, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [9614]
2013/10/15 10:18:57 MTP data 0x6e bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"Sony", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63499633334, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [10273]
2013/10/15 10:18:57 MTP data 0x98 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3004, ProtectionStatus:0x0, CompressedSize:0x1cb483, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"plants-vs.zombies.apk.txt", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63500231088, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [12506]
2013/10/15 10:18:57 MTP data 0x78 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x8000, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"banamalon", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63503288888, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [12528]
2013/10/15 10:18:57 MTP data 0x76 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x8000, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"LazyList", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63503289132, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [12801]
2013/10/15 10:18:57 MTP data 0x74 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x8000, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".de.rtl", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63504078772, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [13646]
2013/10/15 10:18:57 MTP data 0x94 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x8000, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".com.mobisystems.office", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63505839060, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [13949]
2013/10/15 10:18:57 MTP data 0x96 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x182b3, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".tempLockScreenWallpaper", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63506013154, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [14506]
2013/10/15 10:18:57 MTP data 0x92 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3004, ProtectionStatus:0x0, CompressedSize:0xc223c, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"log-AquaMail-crash.txt", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63506977538, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [16091]
2013/10/15 10:18:57 MTP data 0x7a bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3001, ProtectionStatus:0x0, CompressedSize:0x8000, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"foursquare", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63508785776, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [20083]
2013/10/15 10:18:57 MTP data 0x84 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x0, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:".windows-serial", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63517428623, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [20105]
2013/10/15 10:18:57 MTP data 0x92 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x34b7, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"default-capability.xml", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63517429128, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetObjectInfo [20106]
2013/10/15 10:18:57 MTP data 0x98 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.ObjectInfo{StorageID:0x10001, ObjectFormat:0x3000, ProtectionStatus:0x0, CompressedSize:0x92, ThumbFormat:0x0, ThumbCompressedSize:0x0, ThumbPixWidth:0x0, ThumbPixHeight:0x0, ImagePixWidth:0x0, ImagePixHeight:0x0, ImageBitDepth:0x0, ParentObject:0x0, AssociationType:0x0, AssociationDesc:0x0, SequenceNumber:0x0, Filename:"customized-capability.xml", CaptureDate:time.Time{sec:0, nsec:0, loc:(_time.Location)(nil)}, ModificationDate:time.Time{sec:63517429128, nsec:0, loc:(_time.Location)(0x8da1e0)}, Keywords:""}
2013/10/15 10:18:57 MTP request GetStorageInfo [65537]
2013/10/15 10:18:57 MTP data 0x58 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:57 MTP request GetStorageInfo [65537]
2013/10/15 10:18:57 MTP data 0x58 bytes
2013/10/15 10:18:57 MTP response OK []
2013/10/15 10:18:57 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:58 MTP request GetStorageInfo [65537]
2013/10/15 10:18:58 MTP data 0x58 bytes
2013/10/15 10:18:58 MTP response OK []
2013/10/15 10:18:58 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
2013/10/15 10:18:59 MTP request GetStorageInfo [65537]
2013/10/15 10:18:59 MTP data 0x58 bytes
2013/10/15 10:18:59 MTP response OK []
2013/10/15 10:18:59 MTP decoded &mtp.StorageInfo{StorageType:0x3, FilesystemType:0x2, AccessCapability:0x0, MaxCapability:0x2d0728000, FreeSpaceInBytes:0x56d28000, FreeSpaceInImages:0x40000000, StorageDescription:"Interner Speicher", VolumeLabel:"65537"}
panic: runtime error: slice bounds out of range
goroutine 4 [running]:
github.com/hanwen/go-fuse/fuse/nodefs.(_connectorDir).ReadDirPlus(0xc2001d2720, 0xc2000d6848, 0xc2001c49f0, 0x0)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/nodefs/dir.go:73 +0x241
github.com/hanwen/go-fuse/fuse/nodefs.(_rawBridge).ReadDirPlus(0xc2000d5880, 0xc2000d6848, 0xc2001c49f0, 0xd6898)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/nodefs/fsops.go:174 +0x79
github.com/hanwen/go-fuse/fuse.(_lockingRawFileSystem).ReadDirPlus(0xc20009cf00, 0xc2000d6848, 0xc2001c49f0, 0xc200000000)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/lockingfs.go:180 +0x71
github.com/hanwen/go-fuse/fuse.doReadDirPlus(0xc2000dd2d0, 0xc2000d66c0)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/opcode.go:134 +0xf5
github.com/hanwen/go-fuse/fuse.(_Server).handleRequest(0xc2000dd2d0, 0xc2000d66c0)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:334 +0x253
github.com/hanwen/go-fuse/fuse.(_Server).loop(0xc2000dd2d0, 0x1)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:314 +0x86
created by github.com/hanwen/go-fuse/fuse.(_Server).readRequest
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:244 +0x5d2
goroutine 1 [syscall]:
syscall.Syscall()
/usr/lib/go/src/pkg/syscall/asm_linux_amd64.s:16 +0x5
syscall.read(0xe, 0xc2000e3000, 0x11000, 0x11000, 0x100000000, ...)
/usr/lib/go/src/pkg/syscall/zerrors_linux_amd64.go:2337 +0x70
syscall.Read(0xe, 0xc2000e3000, 0x11000, 0x11000, 0x1000, ...)
/usr/lib/go/src/pkg/syscall/syscall_unix.go:132 +0x5a
github.com/hanwen/go-fuse/fuse.(_Server).readRequest(0xc2000dd2d0, 0xc2000d6200, 0xc2000d6240, 0x0)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:220 +0x1d8
github.com/hanwen/go-fuse/fuse.(_Server).loop(0xc2000dd2d0, 0x0)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:298 +0x53
github.com/hanwen/go-fuse/fuse.(*Server).Serve(0xc2000dd2d0)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:286 +0x49
main.main()
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-mtpfs/main.go:78 +0xe44
goroutine 2 [syscall]:
goroutine 5 [syscall]:
syscall.Syscall()
/usr/lib/go/src/pkg/syscall/asm_linux_amd64.s:16 +0x5
syscall.read(0xe, 0xc200107000, 0x11000, 0x11000, 0x100000000, ...)
/usr/lib/go/src/pkg/syscall/zerrors_linux_amd64.go:2337 +0x70
syscall.Read(0xe, 0xc200107000, 0x11000, 0x11000, 0x1000, ...)
/usr/lib/go/src/pkg/syscall/syscall_unix.go:132 +0x5a
github.com/hanwen/go-fuse/fuse.(_Server).readRequest(0xc2000dd2d0, 0xc2000d6901, 0xc2000d6900, 0x0)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:220 +0x1d8
github.com/hanwen/go-fuse/fuse.(_Server).loop(0xc2000dd2d0, 0x1)
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:298 +0x53
created by github.com/hanwen/go-fuse/fuse.(*Server).readRequest
/tmp/go-mtpfs-git/src/src/github.com/hanwen/go-fuse/fuse/server.go:244 +0x5d2
goroutine 115 [finalizer wait]:
trying to connect nexus 10 to ubuntu 12.10 gives me this message:
$ 2012/12/29 15:29:08 compiled against libmtp 1.1.4
Device 0 (VID=18d1 and PID=4ee1) is UNKNOWN.
Please report this VID/PID and the device model to the libmtp development team
2012/12/29 15:29:08 device unknown: unknown (18d1:4ee1) @ bus 1, dev 3
some more information:
DEVTYPE=usb_device
ID_BUS=usb
ID_MEDIA_PLAYER=1
ID_MODEL=Nexus_10
ID_MODEL_ENC=Nexus\x2010
ID_MODEL_ID=4ee1
ID_MTP_DEVICE=1
ID_REVISION=0226
ID_SERIAL=samsung_Nexus_10_R32CB04FNPR
ID_SERIAL_SHORT=R32CB04FNPR
ID_USB_INTERFACES=:ffff00:
ID_VENDOR=samsung
ID_VENDOR_ENC=samsung
ID_VENDOR_ID=18d1
MAJOR=189
MINOR=5
PRODUCT=18d1/4ee1/226
thanks in advance,
mike
I'm running Ubuntu 12.10
Following instructions:
sudo apt-get install libmtp-dev golang
mkdir /tmp/go
export GOPATH=/tmp/go
sudo go get github.com/hanwen/go-mtpfs
At this point the /tmp/go directory should contain the installation -but it is empty.
The usb user space dev lib is installed according to dpkg
libusb-1.0-0-dev 2:1.0.12-2 amd64 userspace USB programming library development files
Checked the usual permissions issues - can't seem to figure out why it doesn't want to install
echo $GOPATH
/tmp/go
go env
GOROOT="/usr/lib/go"
GOBIN=""
GOARCH="amd64"
GOCHAR="6"
GOOS="linux"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CGO_ENABLED="1"
MTP seems to stop responding after i try to open DCIM folder
Hello,
I'm failing to compile because there are too many errors:
I received the same error using your instructions, and when using:
apt-get source --compile go-mtpfs
after adding ppa and getting all the dependencies installed
mikescc:~$ go get github.com/hanwen/go-mtpfs
src/github.com/hanwen/go-mtpfs/fs.go:28: undefined: Device
src/github.com/hanwen/go-mtpfs/fs.go:29: undefined: DeviceStorage
src/github.com/hanwen/go-mtpfs/fs.go:39: undefined: Device
src/github.com/hanwen/go-mtpfs/fs.go:39: undefined: DeviceStorage
src/github.com/hanwen/go-mtpfs/fs.go:133: undefined: DeviceStorage
src/github.com/hanwen/go-mtpfs/fs.go:143: undefined: File
src/github.com/hanwen/go-mtpfs/fs.go:143: undefined: DeviceStorage
src/github.com/hanwen/go-mtpfs/fs.go:202: undefined: DeviceStorage
src/github.com/hanwen/go-mtpfs/fs.go:218: undefined: File
src/github.com/hanwen/go-mtpfs/fs.go:508: undefined: File
src/github.com/hanwen/go-mtpfs/fs.go:508: too many error
FYI, doing this build on an ARM chromebook with Ubuntu 12.04 since no binaries were available for armhf.
Thanks for any help.
-Mike
Seems like it might be slow transfer rate when requesting a bunch of images. Galaxy Nexus (Jelly Bean)
/tmp/go/src/github.com/hanwen/go-mtpfs/mtp/mtp.go:282: undefined: NullWriter
I don't know go, but I figure I have a better shot with my SGS3 with something currently being developed over mtpfs.
Is this a limitation of MTP or a limitation of go-mtpfs?
When I try go-mtpfs with the S3, I get this error:
$ /tmp/go/bin/go-mtpfs -debug=mtp,usb,data /media/s3
2013/05/02 19:50:46 MTP request OpenSession [688305207]
send: 0x10 bytes with ep 0x1:
0000: 1000 0000 0100 0210 0000 0000 37b4 0629 ............7..)
2013/05/02 19:50:51 MTP sendreq failed: LIBUSB_ERROR_TIMEOUT
2013/05/02 19:50:51 OpenSession failed: LIBUSB_ERROR_TIMEOUT; attempting reset
2013/05/02 19:50:51 USB: ReleaseInterface 0x0, err:
2013/05/02 19:50:51 USB: Close, err:
2013/05/02 19:50:52 USB: Open, err:
2013/05/02 19:50:52 USB: ClaimInterface 0x0, err:
2013/05/02 19:50:52 MTP request OpenSession [1612443451]
send: 0x10 bytes with ep 0x1:
0000: 1000 0000 0100 0210 0000 0000 3bef 1b60 ............;..`
2013/05/02 19:50:57 MTP sendreq failed: LIBUSB_ERROR_TIMEOUT
2013/05/02 19:50:57 Configure failed: OpenSession after reset: LIBUSB_ERROR_TIMEOUT
mtp-detect also fails:
$ mtp-detect
libmtp version: 1.1.3
Listing raw device(s)
Device 0 (VID=04e8 and PID=6860) is a Samsung GT-P7310/P7510/N7000/I9100/Galaxy Tab 7.7/10.1/S2/Nexus/Note.
Found 1 device(s):
Samsung: GT-P7310/P7510/N7000/I9100/Galaxy Tab 7.7/10.1/S2/Nexus/Note (04e8:6860) @ bus 3, dev 7
Attempting to connect device(s)
PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
LIBMTP PANIC: failed to open session on second attempt
Unable to open raw device 0
OK.
$ lsusb | grep Sam
Bus 003 Device 007: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II]
cbiesinger@cbiesinger-glaptop:/tmp/go/src/github.com/hanwen/go-mtpfs$ git log | head
commit 723ce0e
Author: hanwen [email protected]
Date: Sat Apr 13 10:48:34 2013 +0200
The binaries here:
http://hanwen.home.xs4all.nl/public/software/go-mtpfs/
seem to be old. Might it be a good idea to put new builds there?
Mebus
Hi. Thanks for generating the binary to the website for download. Now that I have it, the results are:
but then, when trying to run (the latest) go-mtpfs :
markp@marklap mnt $ ls -al /usr/local/bin/go-*
lrwxrwxrwx 1 root root 15 Dec 21 09:30 /usr/local/bin/go-mtpfs -> go-mtpfs.x86_64
-rwxr-x--x 1 markp users 4486053 Jun 6 12:16 /usr/local/bin/go-mtpfs.x86_64
markp@marklap mnt $ which go-mtpfs
/usr/local/bin/go-mtpfs
markp@marklap mnt $ go-mtpfs nexus/
2013/06/06 12:17:53 detect failed: no MTP devices found
eek.
but when I do the same on my Samsung S3, it works fine :
[17947.259955] usb 2-1.2: New USB device found, idVendor=04e8, idProduct=685c
[17947.259960] usb 2-1.2: New USB device strings: Mfr=2, Product=3, SerialNumber=4
[17947.259962] usb 2-1.2: Product: GT-I9300
[17947.259964] usb 2-1.2: Manufacturer: samsung
[17947.259966] usb 2-1.2: SerialNumber: 4df0077a146f7f25
markp@marklap mnt $ go-mtpfs samsung/
2013/06/06 12:25:04 starting FUSE e7202e3 (2013-02-24 14:23:13 +0100)
markp@marklap mnt $ cd samsung/
markp@marklap samsung $ ls
Internal storage SD card
markp@marklap samsung $ ls -al
total 4
drwxr-xr-x 0 markp users 0 Jan 1 1970 .
drwxr-xr-x 18 markp users 4096 Mar 29 18:20 ..
drwxr-xr-x 0 markp users 0 Jan 1 1970 Internal storage
drwxr-xr-x 0 markp users 0 Jan 1 1970 SD card
markp@marklap samsung $
so - it's specific to the Nexus 7.
Hi!
I downlaoded the go-mtpfs.x86_64 binary and on Fedora 17 it crashes while transfering files from a Samsung Galaxy Note 10.1 with Android 4.1.2:
2013/03/31 18:28:51 fetched "2012-08-20 12.41.36.jpg", 538121 bytes in 32 ms. 16.8 MB/s
2013/03/31 18:28:51 fetched "P\x19", 121268 bytes in 67 ms. 1.8 MB/s
2013/03/31 18:28:51 fetched "Web2.0_Wallpaper.jpg", 133599 bytes in 11 ms. 11.3 MB/s
2013/03/31 18:28:51 FilesAndFolders failed: PTP Layer error 02fe: LIBMTP_Get_Files_And_Folders(): could not get object handles.
Error 02fe: PTP: Protocol error, data expected
2013/03/31 18:28:51 FilesAndFolders failed: PTP Layer error 02fe: LIBMTP_Get_Files_And_Folders(): could not get object handles.
Error 02fe: PTP: Protocol error, data expected
2013/03/31 18:28:51 FilesAndFolders failed: PTP Layer error 02fe: LIBMTP_Get_Files_And_Folders(): could not get object handles.
Error 02fe: PTP: Protocol error, data expected
panic: storage mismatch.
goroutine 3519 [running]:
main.(*DeviceFs).newFile(0xf84007c420, 0x7f4a80000bd0, 0x41f05a0, 0x7f4a0000001a, 0x7f4a80000bd0, ...)
/home/hanwen/go/src/go-mtpfs/fs.go:141 +0x75
main.(*folderNode).Lookup(0xf840358af0, 0xf841d25618, 0xf842a1e100, 0x1a, 0xf841d25698, ...)
/home/hanwen/go/src/go-mtpfs/fs.go:542 +0x2d1
github.com/hanwen/go-fuse/fuse.(*FileSystemConnector).internalLookup(0xf840047ec0, 0xf841d25618, 0xf840366480, 0xf842a1e100, 0xf80000001a, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/fsops.go:61 +0x359
github.com/hanwen/go-fuse/fuse.(*FileSystemConnector).Lookup(0xf840047ec0, 0xf841d255f0, 0xf841d25680, 0xf842a1e100, 0x1a, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/fsops.go:82 +0x1af
github.com/hanwen/go-fuse/fuse.(*LockingRawFileSystem).Lookup(0xf8400488c0, 0xf841d255f0, 0xf841d25680, 0xf842a1e100, 0x1a, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/lockingfs.go:167 +0x99
github.com/hanwen/go-fuse/fuse.doLookup(0xf840083000, 0xf841d25540, 0x1, 0xf841d25680)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/opcode.go:242 +0x81
github.com/hanwen/go-fuse/fuse.(*MountState).handleRequest(0xf840083000, 0xf841d25540, 0xf841d25540, 0x0)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:313 +0x22c
github.com/hanwen/go-fuse/fuse.(*MountState).loop(0xf840083000, 0x1, 0x0, 0x0)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:293 +0x84
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:227 +0x604
goroutine 1 [semacquire]:
sync.runtime_Semacquire(0xf84005c328, 0xf84005c328)
/home/hanwen/vc/go/src/pkg/runtime/zsema_amd64.c:146 +0x25
sync.(*WaitGroup).Wait(0xf840083088, 0x0)
/home/hanwen/vc/go/src/pkg/sync/waitgroup.go:78 +0xf2
github.com/hanwen/go-fuse/fuse.(*MountState).Loop(0xf840083000, 0x100000001)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:269 +0x5e
main.main()
/home/hanwen/go/src/go-mtpfs/main.go:90 +0xe8e
goroutine 2 [syscall]:
created by runtime.main
/home/hanwen/vc/go/src/pkg/runtime/proc.c:221
goroutine 6 [finalizer wait]:
created by runtime.gc
/home/hanwen/vc/go/src/pkg/runtime/mgc0.c:882
goroutine 3528 [syscall]:
syscall.Syscall()
/home/hanwen/vc/go/src/pkg/syscall/asm_linux_amd64.s:15 +0x5
syscall.Read(0xf800000009, 0xf8428f3000, 0x1100000011000, 0x4017f000, 0x0, ...)
/home/hanwen/vc/go/src/pkg/syscall/zerrors_linux_amd64.go:2137 +0x78
os.(*File).read(0xf84005c1c0, 0xf8428f3000, 0x1100000011000, 0xffffffff, 0x0, ...)
/home/hanwen/vc/go/src/pkg/os/file_unix.go:163 +0x58
os.(*File).Read(0xf84005c1c0, 0xf8428f3000, 0x1100000011000, 0xf841d1f540, 0x0, ...)
/home/hanwen/vc/go/src/pkg/os/file.go:95 +0x83
github.com/hanwen/go-fuse/fuse.(*MountState).readRequest(0xf840083000, 0xf841d1f501, 0xf841d1f540, 0x0, 0x0, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:203 +0x1aa
github.com/hanwen/go-fuse/fuse.(*MountState).loop(0xf840083000, 0x1, 0x0, 0x0)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:277 +0x51
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:227 +0x604
goroutine 3524 [syscall]:
syscall.Syscall()
/home/hanwen/vc/go/src/pkg/syscall/asm_linux_amd64.s:15 +0x5
syscall.Read(0xf800000009, 0xf8428e2000, 0x1100000011000, 0x4017f000, 0x0, ...)
/home/hanwen/vc/go/src/pkg/syscall/zerrors_linux_amd64.go:2137 +0x78
os.(*File).read(0xf84005c1c0, 0xf8428e2000, 0x1100000011000, 0xffffffff, 0x0, ...)
/home/hanwen/vc/go/src/pkg/os/file_unix.go:163 +0x58
os.(*File).Read(0xf84005c1c0, 0xf8428e2000, 0x1100000011000, 0xf841d25380, 0x0, ...)
/home/hanwen/vc/go/src/pkg/os/file.go:95 +0x83
github.com/hanwen/go-fuse/fuse.(*MountState).readRequest(0xf840083000, 0xf841d25301, 0xf841d25380, 0x0, 0x0, ...)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:203 +0x1aa
github.com/hanwen/go-fuse/fuse.(*MountState).loop(0xf840083000, 0x1, 0x0, 0x0)
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:277 +0x51
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/home/hanwen/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:227 +0x604
./go-mtpfs.x86_64 /media/tablet 7,51s user 30,13s system 11% cpu 5:22,96 total
What is going wrong here?
Regards
Mebus
TL;DR if you have problems connecting a Samsung device (non-nexus), try the libmtp branch rather than master.
This bug is to document all Samsung issues together.
Several users have reported issues with the master branch and samsung galaxy devices (eg. Galaxy 3, Galaxy 2 etc.). Samsung is using their own MTP stack, which does not quite work like the standard Android one, and I don't have a Samsung device to debug things. Users with an affected device can try the 'libmtp' branch which is an older version linking against libmtp.
Symptoms are:
no matter what the setting of -usb-timeout.
I created a wiki page entitled Fedora Install in the hopes that someone might smooth out the process for Fedora users.
I'll be happy to test and improve any instructions I get.
It shouldn't be hard to find, it's the only page. :)
But here it is: https://github.com/hanwen/go-mtpfs/wiki/Fedora-install
I marked it up with my experience trying to install the fs.
As an aside,, I installed mtpfs on my box. It works for browsing the android but it fails on file copy/move.
I have a nexus 1, a nexus 7, a transformer and a noname from Hong Kong about a year old. I'm using FC 16. The latest is 18. I can install that on something and test it too.
So I have a reasonable test suite to smooth out any instructions that may come my way.
Thanks!
When I mount my Galaxy S2 with Android 4.2.1 (CM 10.1 nightly) using Go-mtpfs, this message is displayed:
OpenSession failed: LIBUSB_ERROR_IO
However, the device seems mounted successfully. Any idea what causes this error?
Hi,
I'm trying to mount my Htc One X on Funtoo and getting this error when trying to mount using go-mtpfs, but when I'm mounting using mtpfs, device seems to be recognized and mounted (although, there is some mix with directories and no files are listed).
libmtp version 1.1.5, libusb version 1.0.9
Any help will be appreciated.
First of all: Thanks for building this beast! It is great and a nice opportunity to improve the MTP support on linux.
Do you plan any support for the ARM architecture?
If I try to cross-compile go-mtpfs from my host system with the following parameters it fails:
export GOOS=linux
export GOARCH=arm
go get github.com/hanwen/go-mtpfs
Result:
src/github.com/hanwen/go-mtpfs/usb/print.go:5: undefined: CLASS_PER_INTERFACE
src/github.com/hanwen/go-mtpfs/usb/print.go:7: undefined: CLASS_AUDIO
src/github.com/hanwen/go-mtpfs/usb/print.go:9: undefined: CLASS_COMM
src/github.com/hanwen/go-mtpfs/usb/print.go:11: undefined: CLASS_HID
src/github.com/hanwen/go-mtpfs/usb/print.go:13: undefined: CLASS_PHYSICAL
src/github.com/hanwen/go-mtpfs/usb/print.go:15: undefined: CLASS_PRINTER
src/github.com/hanwen/go-mtpfs/usb/print.go:17: undefined: CLASS_IMAGE
src/github.com/hanwen/go-mtpfs/usb/print.go:19: undefined: CLASS_MASS_STORAGE
src/github.com/hanwen/go-mtpfs/usb/print.go:21: undefined: CLASS_HUB
src/github.com/hanwen/go-mtpfs/usb/print.go:23: undefined: CLASS_DATA
src/github.com/hanwen/go-mtpfs/usb/print.go:23: too many errors
Do you have an idea?
/André
Hi!
I'm trying to compile go-mtpfs on OSX 10.8, but this is failing because the splice()
syscall seems to be unavailable on the BSDs and some constants are not available either:
# github.com/hanwen/go-fuse/raw
src/github.com/hanwen/go-fuse/raw/print.go:56: undefined: syscall.O_DIRECT
src/github.com/hanwen/go-fuse/raw/print.go:58: undefined: syscall.O_LARGEFILE
src/github.com/hanwen/go-fuse/raw/print.go:59: undefined: syscall.O_NOATIME
# github.com/hanwen/go-fuse/splice
src/github.com/hanwen/go-fuse/splice/pair.go:68: undefined: syscall.Splice
src/github.com/hanwen/go-fuse/splice/pair.go:78: undefined: syscall.Splice
src/github.com/hanwen/go-fuse/splice/pair.go:86: undefined: syscall.Splice
Being not at all familiar with low-level C programming and Go I was wondering if you could help me out resolving these issues?
From what I've read splice
could be replaced by POSIX' memmap
(http://stackoverflow.com/questions/10329505), but I don't understand the logic here...
On BSD's open(2)
man page I read about the available open flags:
O_RDONLY open for reading only
O_WRONLY open for writing only
O_RDWR open for reading and writing
O_NONBLOCK do not block on open or for data to become available
O_APPEND append on each write
O_CREAT create file if it does not exist
O_TRUNC truncate size to 0
O_EXCL error if O_CREAT and the file exists
O_SHLOCK atomically obtain a shared lock
O_EXLOCK atomically obtain an exclusive lock
O_NOFOLLOW do not follow symlinks
O_SYMLINK allow open of symlinks
O_EVTONLY descriptor requested for event notifications only
O_CLOEXEC mark as close-on-exec
I also read the Linux open(2)
man page and it still has to occur to me if these Linux-specific flags that are used in go-mtpfs are really, really needed, but hey, you're the expert :)
Thanks,
Thomas.
I'm using go-mtpfs for my Samsung Galaxy S3. Copied some folders to the external microSDXC card (worked fine), but it crashed when trying to copy another folder.
2012/06/14 16:12:14 sending file "35 - The Who - A Man In A Purple Dress (Live At Nassau Coliseum, 2007).mp3" to device: 6306985 bytes.
2012/06/14 16:12:15 sent 6306985 bytes in 965 ms. 6.5 MB/s
panic: storage mismatch.
goroutine 352 [running]:
main.(*DeviceFs).newFile(0x1876a020, 0xb72c12a0, 0xb7280180, 0xd, 0xb72c12a0, ...)
/tmp/go/src/github.com/hanwen/go-mtpfs/fs.go:141 +0x74
main.(*folderNode).Lookup(0x187de540, 0x18755ce8, 0x18731750, 0xd, 0x18755d68, ...)
/tmp/go/src/github.com/hanwen/go-mtpfs/fs.go:542 +0x21e
github.com/hanwen/go-fuse/fuse.(*FileSystemConnector).internalLookup(0x1876a060, 0x18755ce8, 0x18816190, 0x18731750, 0xd, ...)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/fsops.go:61 +0x22c
github.com/hanwen/go-fuse/fuse.(*FileSystemConnector).Lookup(0x1876a060, 0x18755cc0, 0x18755d50, 0x18731750, 0xd, ...)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/fsops.go:82 +0x148
github.com/hanwen/go-fuse/fuse.(*LockingRawFileSystem).Lookup(0x18731080, 0x18755cc0, 0x18755d50, 0x18731750, 0xd, ...)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/lockingfs.go:167 +0x7a
github.com/hanwen/go-fuse/fuse.doLookup(0x18741310, 0x18755c40, 0x36)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/opcode.go:242 +0x73
github.com/hanwen/go-fuse/fuse.(*MountState).handleRequest(0x18741310, 0x18755c40, 0x18755c40)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:313 +0x204
github.com/hanwen/go-fuse/fuse.(*MountState).loop(0x18741310, 0x1, 0x0)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:293 +0x7b
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:227 +0x734
goroutine 1 [semacquire]:
sync.runtime_Semacquire(0x18700b38, 0x18700b38)
/tmp/bindist374110409/go/src/pkg/runtime/zsema_386.c:146 +0x29
sync.(*WaitGroup).Wait(0x1874136c, 0x0)
/usr/local/go/src/pkg/sync/waitgroup.go:78 +0xe6
github.com/hanwen/go-fuse/fuse.(*MountState).Loop(0x18741310, 0x1)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:269 +0x56
main.main()
/tmp/go/src/github.com/hanwen/go-mtpfs/main.go:90 +0xd7b
goroutine 2 [syscall]:
created by runtime.main
/tmp/bindist374110409/go/src/pkg/runtime/proc.c:221
goroutine 4 [finalizer wait]:
created by runtime.gc
/tmp/bindist374110409/go/src/pkg/runtime/mgc0.c:882
goroutine 351 [syscall]:
syscall.Syscall()
/tmp/bindist374110409/go/src/pkg/syscall/asm_linux_386.s:20 +0x1f
syscall.Read(0x6, 0x1897c000, 0x11000, 0x11000, 0x0, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_386.go:2136 +0x61
os.(*File).read(0x18700328, 0x1897c000, 0x11000, 0x11000, 0x18701940, ...)
/usr/local/go/src/pkg/os/file_unix.go:163 +0x44
os.(*File).Read(0x18700328, 0x1897c000, 0x11000, 0x11000, 0xffffffff, ...)
/usr/local/go/src/pkg/os/file.go:95 +0x67
github.com/hanwen/go-fuse/fuse.(*MountState).readRequest(0x18741310, 0x1881c001, 0x1881c000, 0x0, 0x0, ...)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:203 +0x1d5
github.com/hanwen/go-fuse/fuse.(*MountState).loop(0x18741310, 0x1, 0x0)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:277 +0x4f
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:227 +0x734
goroutine 349 [syscall]:
syscall.Syscall()
/tmp/bindist374110409/go/src/pkg/syscall/asm_linux_386.s:20 +0x1f
syscall.Read(0x6, 0x18a8d000, 0x11000, 0x11000, 0x0, ...)
/usr/local/go/src/pkg/syscall/zerrors_linux_386.go:2136 +0x61
os.(*File).read(0x18700328, 0x18a8d000, 0x11000, 0x11000, 0x187310a0, ...)
/usr/local/go/src/pkg/os/file_unix.go:163 +0x44
os.(*File).Read(0x18700328, 0x18a8d000, 0x11000, 0x11000, 0xffffffff, ...)
/usr/local/go/src/pkg/os/file.go:95 +0x67
github.com/hanwen/go-fuse/fuse.(*MountState).readRequest(0x18741310, 0x18818001, 0x18818000, 0x0, 0x0, ...)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:203 +0x1d5
github.com/hanwen/go-fuse/fuse.(*MountState).loop(0x18741310, 0x1, 0x0)
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:277 +0x4f
created by github.com/hanwen/go-fuse/fuse.(*MountState).readRequest
/tmp/go/src/github.com/hanwen/go-fuse/fuse/mountstate.go:227 +0x734
System: Ubuntu 11.10, current go-mtpfs, Samsung Galaxy S3 with 64 GB external microSDXC card
By the way, the SGS3 isn't recognized as SGS3
Device 0 (VID=04e8 and PID=6860) is a Samsung GT-P7510/Galaxy Tab 10.1/S2.
Thanks for writing go-mtpfs.
I'm trying to rsync out my storage with go-mtpfs, but it dies when it gets to a particular file. This is fully reproducible.
Log:
2014/01/07 03:36:55 Serialize: OPENDIR code: OK value: {Fh 3624094511791806 }
2014/01/07 03:36:55 Dispatch: READDIRPLUS, NodeId: 61220911621525770. data: {Fh 3624094511791806 off 0 sz 4096 L 0 NONBLOCK,DIRECTORY,0x8000}
2014/01/07 03:36:55 Serialize: READDIRPLUS code: OK value: 2480 bytes data
2014/01/07 03:36:55 Dispatch: READDIRPLUS, NodeId: 61220911621525770. data: {Fh 3624094511791806 off 14 sz 4096 L 0 NONBLOCK,DIRECTORY,0x8000}
2014/01/07 03:36:55 Serialize: READDIRPLUS code: OK value:
2014/01/07 03:36:55 Dispatch: RELEASEDIR, NodeId: 61220911621525770. data: {Fh 3624094511791806 NONBLOCK,DIRECTORY,0x8000 L0}
2014/01/07 03:36:55 Serialize: RELEASEDIR code: OK value:
2014/01/07 03:36:55 Dispatch: LOOKUP, NodeId: 70472930737720. names: [.fdroid] 8 bytes
2014/01/07 03:36:55 Serialize: LOOKUP code: OK value: {1935244651517180 E1.000000000 A1.000000000 {M040755 SZ=0 L=0 1000:100 0_0 0:1935244651517180 A 0.000000000 M 0.000000000 C 0.000000000}}
2014/01/07 03:36:55 Dispatch: LOOKUP, NodeId: 1935244651517180. names: [icons] 6 bytes
2014/01/07 03:36:55 Serialize: LOOKUP code: OK value: {2744485209588160 E1.000000000 A1.000000000 {M040755 SZ=0 L=0 1000:100 0_0 0:2744485209588160 A 0.000000000 M 0.000000000 C 0.000000000}}
2014/01/07 03:36:55 Dispatch: LOOKUP, NodeId: 2744485209588160. names: [com.scottmain.android.searchlight.4.png] 40 bytes
2014/01/07 03:36:55 Serialize: LOOKUP code: OK value: {16571943440422084 E1.000000000 A1.000000000 {M0100644 SZ=2548 L=1 1000:100 0*0 0:16571943440422084 A 1369947675.000000000 M 1369947675.000000000 C 1369947675.000000000}}
2014/01/07 03:36:55 Dispatch: OPEN, NodeId: 16571943440422084. data: {O_RDONLY,0x8000}
2014/01/07 03:36:55 Serialize: OPEN code: OK value: {Fh 3659278883880938 }
2014/01/07 03:36:55 Dispatch: READ, NodeId: 16571943440422084. data: {Fh 3659278883880938 off 0 sz 4096 L 0 RDONLY,0x8000}
2014/01/07 03:36:55 MTP request ANDROID_GET_PARTIAL_OBJECT64 [13212 0 0 2548]
2014/01/07 03:36:55 MTP data 0xa00 bytes
2014/01/07 03:36:55 MTP bulk read 0x800 bytes.
2014/01/07 03:36:57 MTP response 0x0 []
2014/01/07 03:36:57 fatal error got type 0 (CONTAINER_UNDEFINED) in response, want CONTAINER_RESPONSE.; closing connection.
2014/01/07 03:36:57 MTP request CloseSession []
The file is 2548 bytes long:
-rw-rw-r-- root sdcard_rw 2548 2013-05-30 21:01 com.scottmain.android.searchlight.4.png
Mount phone with go-mtpfs.
Synchronize directory hierarchy to go-mtpfs filesystem with "rsync -rt".
View the timestamps on the files in the synchronized hierarchy on the phone, and note that they match the timestamps in the hierarchy they were synchronized from.
Umount phone.
Mount phone again with go-mtpfs.
Note that the timestamps on the files in the directory hierarchy no longer match those in the source hierarchy; they've reverted to the times when the files were actually copied.
Is this a deficiency in go-mtpfs, a deficiency in MTP, or a deficiency in my particular phone (Samsung Galaxy S III)?
My OS is Ubuntu 12.04.3 LTS & installed with the latest go-mtpfs package from ppa:nilarimogard/webupd8 repository
go-mtpfs run fine in terminal to access my Samsung Galaxy S4 Android phone. The same scripts are used in the udev rule:-
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", ENV{ID_SERIAL_SHORT}=="811f75d6", SYMLINK+="SamGalS4", MODE="0666", RUN+="/bin/bash -c 'touch /tmp/samgals4;/usr/bin/go-mtpfs -allow-other=true /media/MyAndroid &'"
ACTION=="remove", SUBSYSTEM=="usb", ENV{ID_SERIAL_SHORT}=="811f75d6", RUN+="/bin/bash -c 'pkill go-mtpfs; fusermount -u /media/MyAndroid; rm /tmp/samgals4'"
udev ACTION=="add" is triggered after I plugged in the phone by:-
ls /media/MyAndroid; ls /dev/Sam_; ls /tmp/sam_
/dev/SamGalS4 <--- trigger by SYMLINK+=
/tmp/samgals4 <--- trigger by RUN+=
udev ACTION=="remove" is triggered after I unplugged in the phone by:-
ls /media/MyAndroid; ls /dev/Sam_; ls /tmp/sam_
ls: cannot access /dev/Sam_: No such file or directory <--- trigger by action
ls: cannot access /tmp/sam_: No such file or directory <--- trigger by RUN+=
The problem I'm facing is go-mtpfs is not executed by RUN+= for unknown reason.
ls /media/MyAndroid <--- did not display anything
I confirmed udev rule trigger & the script is working fine by running the same script in terminal after I plugged in the phone:-
/bin/bash -c 'touch /tmp/samgals4;/usr/bin/go-mtpfs -allow-other=true /media/MyAndroid &'
ls /media/MyAndroid; ls /dev/Sam_; ls /tmp/sam_
Card Phone <---- phone storage
/dev/SamGalS4
/tmp/samgals4
Please help.
I try to synchronize some files via unison from linux (ubuntu 13.10) to a nexus 5 (android 4.4) and nook (android 4.1).
On the nook the file-changes didn't seem to get properly reflected by go-mtpfs but from what i read this was related to the media-scanner not doing its job properly (note in this case all changes where triggered by mtpfs, nothing via adb shell or other android apps!) and running SDrescan or alike inside nook, while slow, did seem to handle that problem.
However, on android 4.4 i run into additional problems:
Error in renaming /media/msteiner/nexus/Internal storage/babbage/mobileorg/.unison.checksums.dat.2fb7c5faf78fda0a030b6e431510b8a3.unison.tmp to /media/msteiner/nexus/Internal storage/babbage/mobileorg/checksums.dat: Input/output error [rename(/media/msteiner/nexus/Internal storage/babbage/mobileorg/.unison.checksums.dat.2fb7c5faf78fda0a030b6e431510b8a3.unison.tmp)]". When i try manually it also fails, e.g.,
mv -f /media/msteiner/nexus/Internal\ storage/babbage/mobileorg/.unison.checksums.dat.2fb7c5faf78fda0a030b6e431510b8a3.unison.tmp /media/msteiner/nexus/Internal\ storage/babbage/mobileorg/checksums.datIt seems there are problems in mtpfs implementation/media-scanner inside android, so i'm not sure whether the problems are in android or go-mtpfs but i thought i report them anyway, maybe you (or somebody else) can shed some light in the problem.
thanks for help (as well as providing go-mtpfs: despite these problems it is still much better than the standard linux mtpfs implementation)!
Hi,
Great program. I compiled it against Libmtp 1.1.4 and it work with the new Google nexus 7. Since mtpfs is buggy and does not really work, I have been trying to compile go-mtpfs for Fedora. I am trying to use gccgo to compile the go-mtpfs, but I am running into an issue with the Cgo import you have in mtp.go.
Looking at the fedora packaging guidelines, I don't think the standard go compiler (gc) can be packaged, because of the way it treats libraries.
Is it possible to update the mtp.go code to support gccgo.
i have managed to package up go-fuse and stored it as a library under the gccgo lib files.
Thanks.
hi, i have this output with lastest changes in go-mtpfs/go-fuse while trying to read my Nexus 4:
[signal 0xb code=0x1 addr=0x1 pc=0x809090e]
goroutine 1 [running]:
github.com/hanwen/go-mtpfs/fs.(*folderNode).SetInode(0x1838e980, 0x1836f380)
/home/matthieu/.go/src/github.com/hanwen/go-mtpfs/fs/android.go:0 +0x2e
github.com/hanwen/go-fuse/fuse/nodefs.newInode(0x8051801, 0x18338ea0, 0x1838e980, 0x0)
/home/matthieu/.go/src/github.com/hanwen/go-fuse/fuse/nodefs/inode.go:45 +0x7c
github.com/hanwen/go-fuse/fuse/nodefs.(*Inode).New(0x1836f2c0, 0x8172d01, 0x18338ea0, 0x1838e980, 0x0, ...)
/home/matthieu/.go/src/github.com/hanwen/go-fuse/fuse/nodefs/inode.go:112 +0x37
github.com/hanwen/go-mtpfs/fs.(*DeviceFs).OnMount(0x1836a000, 0x18375690)
/home/matthieu/.go/src/github.com/hanwen/go-mtpfs/fs/fs.go:147 +0x283
github.com/hanwen/go-fuse/fuse/nodefs.(*FileSystemConnector).MountRoot(0x18375690, 0x18375660, 0x1836a000, 0x1838e7e0)
/home/matthieu/.go/src/github.com/hanwen/go-fuse/fuse/nodefs/fsconnector.go:249 +0x62
github.com/hanwen/go-fuse/fuse/nodefs.NewFileSystemConnector(0x18375660, 0x1836a000, 0x1838e7e0, 0x18375690)
/home/matthieu/.go/src/github.com/hanwen/go-fuse/fuse/nodefs/fsconnector.go:72 +0x141
main.main()
/home/matthieu/.go/src/github.com/hanwen/go-mtpfs/main.go:64 +0x77b
go get github.com/hanwen/go-mtpfs :
src/github.com/hanwen/go-fuse/raw/print_linux.go:4: syntax error: unexpected =, expecting }
src/github.com/hanwen/go-fuse/raw/print_linux.go:5: non-declaration statement outside function body
src/github.com/hanwen/go-fuse/raw/print_linux.go:6: non-declaration statement outside function body
src/github.com/hanwen/go-fuse/raw/print_linux.go:7: syntax error: unexpected }
I do not even understand go language, it seems to be here :
OpenFlagNames[syscall.O_DIRECT] = "DIRECT"
Hello,
First of all I would like to say, that go-mtpfs is great - I can finally use my android devices on Ubuntu. But I have a question that I could not found the answer. It is possible to mount more than one device using go-mtpfs?
I followed this tutorial to automount my Nexus7/Galaxy S3 http://bernaerts.dyndns.org/linux/247-ubuntu-automount-nexus7-mtp, and everything works fine, until i connect two devices at the same time. First is mounted, second not.
When i run mount command in terminal I get following output:
go-mtpfs -allow-other=true /media/Nexus7
2012/12/26 05:43:42 compiled against libmtp 1.1.5
Device 0 (VID=18d1 and PID=4e41) is a Google Inc (for Asus) Nexus 7 (MTP).
Device 1 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
2012/12/26 05:43:42 device Google Inc (for Asus): Nexus 7 (MTP) (18d1:4e41) @ bus 1, dev 5
:
2012/12/26 05:43:42 device Samsung: Galaxy models (MTP) (04e8:6860) @ bus 2, dev 3
:
2012/12/26 05:43:42 must have exactly one device
Is there any way to mount more than one device?
mv: cannot move `a/' to `b/': Function not implemented
old folder already has child %q a
Hi Hanwen,
I tried go-mtpfs (latest) on Ubuntu 10.04 using Motorola Razr Mini which had Internal Storage and External SD Card. Though both were shown properly under the directory of mount, Cut & Paste didn't work. Wanted to if Cut & Paste is implement where transfer is from ExternalSdCard - InternalStorage || InternalStorage - ExternalSdCard || ExternalSdCard - PC || InternalStorage - PC. I was getting Function not implement as PopUp
Please let me know what might be the issue ..
[CODE]
$mkdir /tmp/go
$export GOPATH=/tmp/go
$go get github.com/hanwen/go-mtpfs
cannot create nil/go.o: No such file or directory
[/CODE]
Hi,
Thanks for go-mtpfs. This has enabled me to use my Samsung Galaxy S2 with Ubuntu 12.10. you are a star.
When I plug in my device it is mounted in /media/GalaxyS2, and that presents two sub directories "Internal Storage" and "SD Card". This is truly great, unfortunately for me Ubuntu's default media player (which I like) - Rhythmbox scans both of the file systems and presents a massive number of files, most of which are not my music. For Rhythmbox to work for me properly I need to place an .is_audio_player file in the root of the mounted filesystem (/media/GalaxyS2) which has some directives necessary for the better running of the device.
Unfortunately, the root of the Galaxy's filesystem is "virtual", nothing can be placed there.
Would you consider amending go-mtpfs to allow a command line option to specify which device internal fs should be mounted? thereby allowing "Internal Storage" to be mounted directly at a mount point, and "SD Card" to have its own mount point. This would then allow me to place ".is_audio_player" into the root of each, immediately making my device properly usable by Rhythmbox and Banshee and co.
Thanks again for go-mtpfs, and thanks for taking the time to read this.
sudo go get github.com/hanwen/go-mtpfs
/usr/lib/go/src/pkg/github.com/hanwen/go-mtpfs/main.go:77: undefined: fuse.Version
After commenting line 77 in main.go Everything worked for me.
(Ubuntu 12.04 x64)
Hi,
How do I get the C source code of go-mtpfs to compile for Linux.?
I have got only the x86 binary.
Regards
-Preeti
Hi. Any chance of getting the binaries updated to the latest. While go-mtpfs works fine against my samsung s3, it just plain doesn't work at all against my nexus 7. Perhaps a newer binary would be better ?
I just discovered this and it works. You are a saint among mortals. Thank you so very much.
Create a file that is 3680252 bytes long, like this:
dd if=/dev/zero of=/tmp/testfile bs=3680252 count=1
Mount phone (Galaxy S III) with go-mtpfs.
Try to copy the file to the Phone/Music on the phone with cp.
You get this:
2012/07/18 11:28:35 sending file "testfile" to device: 3680252 bytes.
2012/07/18 11:29:36 sent 3680252 bytes in 60478 ms. 0.1 MB/s
2012/07/18 11:29:36 can't convert error type: PTP Layer error 02ff: LIBMTP_Send_File_From_File_Descriptor(): Could not send object.
(Look this up in ptp.h for an explanation.)
If you make the file just one byte larger, it copies fine.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.