The Archos Gmini 120 is one of the oldest MP3 player. It uses the USB mass storage protocol. Currently hal does not detect it as a portable audio player. As requested by the authors of Rhythmbox, I fill a bug. Here are the relevant informations provided by hal-device. Hope this helps. 0: udi = '/org/freedesktop/Hal/devices/volume_uuid_9482_04AC' volume.unmount.valid_options = { 'lazy' } (string list) volume.mount.valid_options = { 'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid=' } (string list) org.freedesktop.Hal.Device.Volume.method_execpaths = { 'hal-system-storage-mount', 'hal-system-storage-unmount', 'hal-system-storage-eject' } (string list) org.freedesktop.Hal.Device.Volume.method_signatures = { 'ssas', 'as', 'as' } (string list) org.freedesktop.Hal.Device.Volume.method_names = { 'Mount', 'Unmount', 'Eject' } (string list) info.interfaces = { 'org.freedesktop.Hal.Device.Volume' } (string list) volume.ignore = false (bool) info.udi = '/org/freedesktop/Hal/devices/volume_uuid_9482_04AC' (string) volume.partition.msdos_part_table_type = 12 (0xc) (int) info.product = 'JUKEBOX' (string) volume.size = 19987398144 (0x4a7577e00) (uint64) volume.num_blocks = 39037887 (0x253abbf) (int) volume.block_size = 512 (0x200) (int) volume.partition.number = 1 (0x1) (int) info.capabilities = { 'volume', 'block' } (string list) info.category = 'volume' (string) volume.is_partition = true (bool) volume.is_disc = false (bool) volume.is_mounted = true (bool) volume.mount_point = '/media/JUKEBOX' (string) volume.label = 'JUKEBOX' (string) volume.uuid = '9482-04AC' (string) volume.fsversion = 'FAT32' (string) volume.fsusage = 'filesystem' (string) volume.fstype = 'vfat' (string) storage.model = '' (string) block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_USB_HS_IC25N020ATMR04_0_2411041000E7' (string) block.is_volume = true (bool) block.minor = 1 (0x1) (int) block.major = 8 (0x8) (int) block.device = '/dev/sda1' (string) linux.hotplug_type = 3 (0x3) (int) info.parent = '/org/freedesktop/Hal/devices/storage_serial_USB_HS_IC25N020ATMR04_0_2411041000E7' (string) linux.sysfs_path_device = '/sys/block/sda/sda1' (string) linux.sysfs_path = '/sys/block/sda/sda1' (string) 1: udi = '/org/freedesktop/Hal/devices/storage_serial_USB_HS_IC25N020ATMR04_0_2411041000E7' block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_USB_HS_IC25N020ATMR04_0_2411041000E7' (string) info.udi = '/org/freedesktop/Hal/devices/storage_serial_USB_HS_IC25N020ATMR04_0_2411041000E7' (string) storage.requires_eject = true (bool) storage.hotpluggable = true (bool) info.capabilities = { 'storage', 'block' } (string list) info.category = 'storage' (string) info.product = 'IC25N020ATMR04-0' (string) info.vendor = 'USB-HS' (string) storage.removable = false (bool) storage.physical_device = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0' (string) storage.lun = 0 (0x0) (int) storage.firmware_version = '0.01' (string) storage.serial = 'USB-HS_IC25N020ATMR04-0_2411041000E7' (string) storage.vendor = 'USB-HS' (string) storage.model = 'IC25N020ATMR04-0' (string) storage.drive_type = 'disk' (string) storage.automount_enabled_hint = true (bool) storage.media_check_enabled = false (bool) storage.no_partitions_hint = false (bool) storage.bus = 'usb' (string) block.is_volume = false (bool) block.minor = 0 (0x0) (int) block.major = 8 (0x8) (int) block.device = '/dev/sda' (string) linux.hotplug_type = 3 (0x3) (int) info.parent = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0_scsi_host_scsi_device_lun0' (string) linux.sysfs_path_device = '/sys/block/sda' (string) linux.sysfs_path = '/sys/block/sda' (string)
I take the bugs and write one patch for: 6095,6101,6102,6107,6130,6135,6139, 6140,6147,6148,6155,6156,6160
1.) I need the complete lshal output for the device. This include the related USB-device with vendor and product ID 2.) What are the capabilities of the device? Need this information: portable_audio_player.output_formats portable_audio_player.access_method portable_audio_player.type portable_audio_player.input_formats
portable_audio_player.access_method storage portable_audio_player.type generic (I guess, couldn't find what the other possible values are except ipod) portable_audio_player.input_formats mp3 wma wav portable_audio_player.output_formats mp3 wav I'll give you the lshal output when I'm home ;)
OK I guess the USB vendor is ARCHOS vendor_id = 3705 (0xe79) and the product should be Gmini 120 but is identified with various names. The relevant product_id is probably 4609 (0x1201) Here is the (I hope) relevant lshal: Dumping 78 device(s) from the Global Device List: ------------------------------------------------- udi = '/org/freedesktop/Hal/devices/volume_uuid_9482_04AC' volume.policy.desired_mount_point = 'JUKEBOX' (string) volume.policy.mount_filesystem = 'vfat' (string) volume.policy.should_mount = true (bool) info.udi = '/org/freedesktop/Hal/devices/volume_uuid_9482_04AC' (string) info.product = 'JUKEBOX' (string) volume.size = 19987398144 (0x4a7577e00) (uint64) volume.num_blocks = 39037887 (0x253abbf) (int) volume.block_size = 512 (0x200) (int) volume.partition.number = 1 (0x1) (int) info.capabilities = {'volume', 'block'} (string list) info.category = 'volume' (string) volume.is_partition = true (bool) volume.is_disc = false (bool) volume.is_mounted = true (bool) volume.mount_point = '/media/JUKEBOX' (string) volume.label = 'JUKEBOX' (string) volume.uuid = '9482-04AC' (string) volume.fsversion = 'FAT32' (string) volume.fsusage = 'filesystem' (string) volume.fstype = 'vfat' (string) block.storage_device = '/org/freedesktop/Hal/devices/storage_model_IC25N020ATMR04_0' (string) block.is_volume = true (bool) block.minor = 1 (0x1) (int) block.major = 8 (0x8) (int) block.device = '/dev/sda1' (string) linux.hotplug_type = 3 (0x3) (int) info.parent = '/org/freedesktop/Hal/devices/storage_model_IC25N020ATMR04_0' (string) linux.sysfs_path_device = '/sys/block/sda/sda1' (string) linux.sysfs_path = '/sys/block/sda/sda1' (string) udi = '/org/freedesktop/Hal/devices/storage_model_IC25N020ATMR04_0' storage.policy.should_mount = true (bool) block.storage_device = '/org/freedesktop/Hal/devices/storage_model_IC25N020ATMR04_0' (string) info.udi = '/org/freedesktop/Hal/devices/storage_model_IC25N020ATMR04_0' (string) storage.requires_eject = true (bool) storage.hotpluggable = true (bool) info.capabilities = {'storage', 'block'} (string list) info.category = 'storage' (string) info.product = 'IC25N020ATMR04-0' (string) info.vendor = 'USB-HS' (string) storage.removable = false (bool) storage.physical_device = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0' (string) storage.lun = 0 (0x0) (int) storage.drive_type = 'disk' (string) storage.vendor = 'USB-HS' (string) storage.model = 'IC25N020ATMR04-0' (string) storage.automount_enabled_hint = true (bool) storage.media_check_enabled = false (bool) storage.no_partitions_hint = false (bool) storage.bus = 'usb' (string) block.is_volume = false (bool) block.minor = 0 (0x0) (int) block.major = 8 (0x8) (int) block.device = '/dev/sda' (string) linux.hotplug_type = 3 (0x3) (int) info.parent = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0_scsi_host_scsi_device_lun0' (string) linux.sysfs_path_device = '/sys/block/sda' (string) linux.sysfs_path = '/sys/block/sda' (string) udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0_scsi_host_scsi_device_lun0' info.udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0_scsi_host_scsi_device_lun0' (string) linux.subsystem = 'scsi' (string) linux.hotplug_type = 1 (0x1) (int) info.product = 'SCSI Device' (string) scsi.lun = 0 (0x0) (int) scsi.target = 0 (0x0) (int) scsi.bus = 0 (0x0) (int) scsi.host = 0 (0x0) (int) info.parent = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0_scsi_host' (string) info.bus = 'scsi' (string) linux.sysfs_path_device = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1:1.0/host0/target0:0:0/0:0:0:0' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1:1.0/host0/target0:0:0/0:0:0:0' (string) udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0_scsi_host' info.udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0_scsi_host' (string) linux.subsystem = 'scsi_host' (string) linux.hotplug_type = 2 (0x2) (int) scsi_host.host = 0 (0x0) (int) info.product = 'SCSI Host Adapter' (string) info.capabilities = {'scsi_host'} (string list) info.category = 'scsi_host' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0' (string) linux.sysfs_path_device = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1:1.0/host0' (string) linux.sysfs_path = '/sys/class/scsi_host/host0' (string) udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0' info.udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7_if0' (string) linux.subsystem = 'usb' (string) linux.hotplug_type = 1 (0x1) (int) info.product = 'USB Mass Storage Interface' (string) usb.interface.protocol = 80 (0x50) (int) usb.interface.subclass = 6 (0x6) (int) usb.interface.class = 8 (0x8) (int) usb.interface.number = 0 (0x0) (int) usb.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1:1.0' (string) usb.configuration_value = 1 (0x1) (int) usb.num_configurations = 1 (0x1) (int) usb.num_interfaces = 1 (0x1) (int) usb.device_class = 0 (0x0) (int) usb.device_subclass = 0 (0x0) (int) usb.device_protocol = 0 (0x0) (int) usb.vendor_id = 3705 (0xe79) (int) usb.product_id = 4609 (0x1201) (int) usb.vendor = 'ARCHOS' (string) usb.product = 'USB Mass Storage Interface' (string) usb.device_revision_bcd = 260 (0x104) (int) usb.max_power = 2 (0x2) (int) usb.num_ports = 0 (0x0) (int) usb.linux.device_number = 4 (0x4) (int) usb.serial = '2411041000E7' (string) usb.speed_bcd = 294912 (0x48000) (int) usb.version_bcd = 512 (0x200) (int) usb.is_self_powered = true (bool) usb.can_wake_up = false (bool) usb.bus_number = 4 (0x4) (int) info.bus = 'usb' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7' (string) linux.sysfs_path_device = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1:1.0' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1:1.0' (string) udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7' info.udi = '/org/freedesktop/Hal/devices/usb_device_e79_1201_2411041000E7' (string) linux.subsystem = 'usb' (string) linux.hotplug_type = 1 (0x1) (int) usb_device.bus_number = 4 (0x4) (int) usb_device.can_wake_up = false (bool) usb_device.is_self_powered = true (bool) usb_device.version_bcd = 512 (0x200) (int) usb_device.speed_bcd = 294912 (0x48000) (int) usb_device.serial = '2411041000E7' (string) usb_device.linux.device_number = 4 (0x4) (int) usb_device.num_ports = 0 (0x0) (int) usb_device.max_power = 2 (0x2) (int) usb_device.device_revision_bcd = 260 (0x104) (int) info.product = 'Gmini100' (string) usb_device.product = 'Gmini100' (string) info.vendor = 'ARCHOS' (string) usb_device.vendor = 'ARCHOS' (string) usb_device.product_id = 4609 (0x1201) (int) usb_device.vendor_id = 3705 (0xe79) (int) usb_device.device_protocol = 0 (0x0) (int) usb_device.device_subclass = 0 (0x0) (int) usb_device.device_class = 0 (0x0) (int) usb_device.num_interfaces = 1 (0x1) (int) usb_device.num_configurations = 1 (0x1) (int) usb_device.configuration_value = 1 (0x1) (int) usb_device.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1' (string) info.linux.driver = 'usb' (string) info.bus = 'usb_device' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_7' (string) linux.sysfs_path_device = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1' (string)
Modified Files: 10-usb-music-players.fdi Log Message: 2006-03-08 Danny Kukawka <danny.kukawka@web.de> * fdi/information/10freedesktop/10-usb-music-players.fdi: applied patches and added new devices from fd.o bugs: 6101, 6139, 6173, 6175
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.