Ok, so I've done a bit of searching to try to find out how to get my mp3 player recognised, and most of what I've learned is that its hard, and varies a lot based on the mp3 player. Still, I'd appreciate any pointers that anyone can give.
So I've got a Samsung YP-T9 mp3 player (Yes, its old. Yes, its crap. But it was free, and its got my music on it now...) I plug it in to my brand new install of Kubuntu 9.10 with its USB cable, and I see in dmesg:
(I do NOT see any message about it using drivers or mounting anything at this point, which quite a few posters of similar questions have reported seeing.) lsusb tells me that it sees the USB device:
solid-hardware tells me (as I understand it) that hal has seen my device, and recognised it as of type PortableMediaPlayer:
I set up a rule for Device Manager to do... something... when it detects a PortableMediaPlayer:
...and this seems to work, inasmuch as Device Manager now pops up when I plug in the device, and clicking on the icon it brings up does in fact write to /tmp/thing. I chose the action as something fairly foolproof, because I just wanted to test out the detection. %i is the only variable that I could find which is set to anything - it is set to the uri used by solid-hardware.
Thanks in advance for any advice you can offer.
My question is; now what? Is there a way I can mount the device somehow? Or otherwise make it available for access by one of the various players already on the machine?
- rob.
So I've got a Samsung YP-T9 mp3 player (Yes, its old. Yes, its crap. But it was free, and its got my music on it now...) I plug it in to my brand new install of Kubuntu 9.10 with its USB cable, and I see in dmesg:
Code:
[ 5099.431278] usb 1-4: new high speed USB device using ehci_hcd and address 5 [ 5099.584066] usb 1-4: configuration #1 chosen from 1 choice
Code:
Bus 007 Device 003: ID 046d:0a0b Logitech, Inc. Bus 007 Device 002: ID 046d:c016 Logitech, Inc. M-UV69a/HP M-UV96 Optical Wheel Mouse Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 002: ID 413c:2003 Dell Computer Corp. Keyboard Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 005: ID 04e8:507f Samsung Electronics Co., Ltd Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Code:
$ solid-hardware query "IS PortableMediaPlayer" udi = '/org/freedesktop/Hal/devices/usb_device_4e8_507f_ed3fc920000000f1_if0' $ solid-hardware nonportableinfo /org/freedesktop/Hal/devices/usb_device_4e8_507f_ed3fc920000000f1_if0 udi = '/org/freedesktop/Hal/devices/usb_device_4e8_507f_ed3fc920000000f1_if0' camera.libgphoto2.name = 'Samsung YP-T9' (string) camera.libgphoto2.support = true (bool) info.capabilities = {'portable_audio_player'} (string list) info.category = 'portable_audio_player' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_4e8_507f_ed3fc920000000f1' (string) info.product = 'YP-T9' (string) info.subsystem = 'usb' (string) info.udi = '/org/freedesktop/Hal/devices/usb_device_4e8_507f_ed3fc920000000f1_if0' (string) info.vendor = 'Samsung' (string) linux.hotplug_type = 2 (0x2) (int) linux.subsystem = 'usb' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-4/1-4:1.0' (string) portable_audio_player.access_method = 'user' (string) portable_audio_player.access_method.drivers = {'libmtp'} (string list) portable_audio_player.access_method.protocols = {'mtp'} (string list) portable_audio_player.libmtp.protocol = 'mtp' (string) portable_audio_player.output_formats = {'audio/mpeg', 'audio/x-ms-wma'} (string list) portable_audio_player.type = 'mtp' (string) usb.bus_number = 1 (0x1) (int) usb.can_wake_up = false (bool) usb.configuration_value = 1 (0x1) (int) usb.device_class = 255 (0xff) (int) usb.device_protocol = 0 (0x0) (int) usb.device_revision_bcd = 256 (0x100) (int) usb.device_subclass = 0 (0x0) (int) usb.interface.class = 255 (0xff) (int) usb.interface.number = 0 (0x0) (int) usb.interface.protocol = 255 (0xff) (int) usb.interface.subclass = 255 (0xff) (int) usb.is_self_powered = true (bool) usb.linux.device_number = 5 (0x5) (int) usb.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-4/1-4:1.0' (string) usb.max_power = 100 (0x64) (int) usb.num_configurations = 1 (0x1) (int) usb.num_interfaces = 1 (0x1) (int) usb.num_ports = 0 (0x0) (int) usb.product = 'USB Vendor Specific Interface' (string) usb.product_id = 20607 (0x507f) (int) usb.serial = 'ed3fc920000000f1' (string) usb.speed = '480' (string) usb.vendor = 'Samsung Electronics Co., Ltd' (string) usb.vendor_id = 1256 (0x4e8) (int) usb.version = '2' (string)
Code:
$ cat ~/.kde/share/apps/solid/actions/Samsung-MP3.desktop [Desktop Action open] Exec=echo "%i" > /tmp/thing Icon=unknown Name=Samsung MP3 X-Ubuntu-Gettext-Domain=desktop_kdebase-workspace [Desktop Entry] Actions=open; Type=Service X-KDE-Action-Custom=true X-KDE-Solid-Predicate=IS PortableMediaPlayer
Thanks in advance for any advice you can offer.
My question is; now what? Is there a way I can mount the device somehow? Or otherwise make it available for access by one of the various players already on the machine?
- rob.
Comment