GNOME Bugzilla – Bug 562664
MTP device not working -> throwing exception (Sony NWZ-639F)
Last modified: 2009-01-30 00:19:20 UTC
Please describe the problem: I have recently bought a new Sony Walkman NWZ-S639F. Using Ubuntu 8.04.1 LTS, Banshee 1.4.1 (from PPA), libmtp0.3.3 (from CVS-2008-11-29), I can't connect it to Banshee (nor Rhythmbox to be honest). mtp-detect detects my Walkman. I've tried using libmtp7 from the Ubuntu repositories, it doesn't change anything. My Walkman won't connect, and sometimes, Banshee throws an exception. There is two ways to reproduce this bug. Steps to reproduce: // The first way 1.1 Start banshee 1.2 Connect Sony Walkman NWZ-S639F 1.3 Banshee will give an error message a few times, stating "Banshee's MTP audio player support can only handle one device at a time" 1.4 Sony Walkman disconnects (according to the Walkman itself) // The second way 2.1 Connect Sony Walkman NWZ-S639F 2.2 Start banshee 2.3 Banshee can't connect to the Walkman - banshee --debug outputs a lot of mumble-jumble and shows an exception 2.4 Sony Walkman disconnects (according to the Walkman itself) Actual results: The Walkman doesn't connect. Expected results: I would expect the Walkman to connect, just as any MTP device would. Does this happen every time? Yes Other information: Here is the output of banshee --debug when trying the second way: (the exception is in line 80) [rob@rob-thinkpad:~$] banshee --debug ** Running Mono with --debug ** [Info 12:22:38.579] Running Banshee 1.4.1 [Debug 12:22:39.215] Bus.Session.RequestName ('org.bansheeproject.Banshee') replied with PrimaryOwner [Debug 12:22:39.222] Core service started (DBusServiceManager, 0.001956s) [Debug 12:22:39.224] Registering remote object /org/bansheeproject/Banshee/DBusCommandService (Banshee.ServiceStack.DBusCommandService) on org.bansheeproject.Banshee [Debug 12:22:39.232] Core service started (DBusCommandService, 0.009953s) [Debug 12:22:39.371] Opened SQLite connection to /home/rob/.config/banshee-1/banshee.db [Debug 12:22:39.371] Core service started (DbConnection, 0.138396s) [Debug 12:22:39.378] Database version 22 is up to date [Debug 12:22:39.390] Core service started (PreferenceService, 0.01114s) [Debug 12:22:39.391] Registering remote object /org/bansheeproject/Banshee/SourceManager (Banshee.Sources.SourceManager) on org.bansheeproject.Banshee [Debug 12:22:39.391] Core service started (SourceManager, 0.001177s) [Debug 12:22:39.529] Core service started (MediaProfileManager, 0.13781s) [Debug 12:22:39.530] Registering remote object /org/bansheeproject/Banshee/PlayerEngine (Banshee.MediaEngine.PlayerEngineService) on org.bansheeproject.Banshee [Debug 12:22:39.532] Core service started (PlayerEngine, 0.002205s) [Debug 12:22:39.536] Configuration client extension loaded (Banshee.GnomeBackend.GConfConfigurationClient) [Debug 12:22:39.584] IO provider extension loaded (Banshee.IO.Unix.Provider) [Debug 12:22:39.589] Core service started (TranscoderService, 0.007547s) [Debug 12:22:39.591] Registering remote object /org/bansheeproject/Banshee/PlaybackController (Banshee.PlaybackController.PlaybackControllerService) on org.bansheeproject.Banshee [Debug 12:22:39.592] Core service started (PlaybackController, 0.002114s) [Debug 12:22:39.592] Core service started (ImportSourceManager, 0.00034s) [Debug 12:22:39.597] Core service started (LibraryImportManager, 0.005034s) [Debug 12:22:39.598] Core service started (UserJobManager, 0.000456s) [Debug 12:22:39.608] Core service started (HardwareManager, 0.010251s) [Debug 12:22:39.610] Bus.Session.RequestName ('org.bansheeproject.CollectionIndexer') replied with PrimaryOwner [Debug 12:22:39.611] Registering remote object /org/bansheeproject/Banshee/CollectionIndexerService (Banshee.Collection.Indexer.CollectionIndexerService) on org.bansheeproject.CollectionIndexer [Debug 12:22:39.612] Core service started (CollectionIndexerService, 0.003652s) [Debug 12:22:39.633] Adding icon theme search path: /usr/share/banshee-1/icons [Debug 12:22:39.634] Core service started (GtkElementsService, 0.021878s) [Debug 12:22:39.679] Core service started (InterfaceActionService, 0.045153s) [Debug 12:22:39.681] Album artwork path set to /home/rob/.cache/album-art [Debug 12:22:39.681] Core service started (ArtworkManager, 0.001646s) [Debug 12:22:40.237] Registering remote object /org/bansheeproject/Banshee/ClientWindow (Nereid.PlayerInterface) on org.bansheeproject.Banshee [Debug 12:22:40.237] Core service started (NereidPlayerInterface, 0.556353s) [Debug 12:22:40.263] Extension service started (AudioCdService, 0.025648s) [Debug 12:22:40.265] Extension service started (DaapService, 0.00081s) [Debug 12:22:40.265] Extension service started (DapService, 0.00039s) [Debug 12:22:40.267] Using GNOME 2.22 API for Multimedia Keys [Debug 12:22:40.267] Extension service started (MultimediaKeysService, 0.002326s) [Debug 12:22:40.269] Extension service started (CoverArtService, 0.001465s) [Debug 12:22:40.272] Extension service started (GnomeService, 0.002724s) [Debug 12:22:40.343] Extension service started (NotificationAreaService, 0.071208s) [Debug 12:22:40.445] GStreamer pipeline does not run: audioconvert ! xingenc bitrate=128 ! id3v2mux [Debug 12:22:40.490] GStreamer pipeline does not run: audioconvert ! fluwmaenc bitrate=64000 vbr=false ! fluasfmux [Debug 12:22:40.491] Extension service started (GStreamerCoreService, 0.147305s) [Debug 12:22:40.495] (libbanshee:player) Using built-in equalizer element [Debug 12:22:40.506] Player state change: NotReady -> Ready [Debug 12:22:40.519] Enabling equalizer preset: Bass [Debug 12:22:40.527] Player state change: Ready -> Idle [Debug 12:22:40.532] (libbanshee:player) Enabled ReplayGain [Debug 12:22:40.532] (libbanshee:player) scaled volume: 1.000000 (ReplayGain) * 0.500000 (User) = 0.500000 [Info 12:22:40.534] All services are started 1.318259s [Debug 12:22:40.841] Registering remote object /org/bansheeproject/Banshee/SourceManager/PlayQueue (Banshee.PlayQueue.PlayQueueSource) on org.bansheeproject.Banshee [Debug 12:22:40.887] Loaded IScreensaverManager: Banshee.GnomeBackend.GnomeScreensaverManager [Debug 12:22:40.986] Creating Pango.Layout, configuring Cairo.Context [Debug 12:22:41.016] Creating Pango.Layout, configuring Cairo.Context [Debug 12:22:41.029] Creating new surface cache for 9216 KB (max) images, capped at 1 MB (113 items) [Debug 12:22:41.058] Creating Pango.Layout, configuring Cairo.Context [Info 12:22:41.207] nereid Client Started [Debug 12:22:41.208] Delayed Initializating Banshee.Dap.DapService [Debug 12:22:41.212] Dap support extension loaded: Banshee.Dap.Mtp [Debug 12:22:41.367] Dap support extension loaded: Banshee.Dap.MassStorage [Debug 12:22:41.484] Dap support extension loaded: Banshee.Dap.Karma [Debug 12:22:41.602] Dap support extension loaded: Banshee.Dap.Ipod [Debug 12:22:41.719] Delayed Initializating Banshee.Daap.DaapService PTP: Opening session PTP: Closing session PTP: Opening session PTP: Opening session PTP: Closing session ERROR: Could not close session! inep: usb_get_endpoint_status(): Device or resource busy outep: usb_get_endpoint_status(): Device or resource busy usb_clear_halt() on IN endpoint: Device or resource busy usb_clear_halt() on OUT endpoint: Device or resource busy usb_clear_halt() on INTERRUPT endpoint: Device or resource busy PTP: Closing session PTP: Opening session LIBMTP PANIC: Unable to read device information on device number 1, trying to continue[Warn 12:23:16.873] Caught an exception - Connecting (in `Mtp') at Mtp.Error.CheckError (ErrorCode errorCode) [0x00018] in /build/buildd/banshee-1.4.1/src/Libraries/Mtp/Mtp/Error.cs:82 at Mtp.MtpDevice.GetConnectedDevices (System.IntPtr& list) [0x00000] in /build/buildd/banshee-1.4.1/src/Libraries/Mtp/Mtp/MtpDevice.cs:305 at Mtp.MtpDevice.Detect () [0x00000] in /build/buildd/banshee-1.4.1/src/Libraries/Mtp/Mtp/MtpDevice.cs:269 at Banshee.Dap.Mtp.MtpSource.DeviceInitialize (IDevice device) [0x00059] in /build/buildd/banshee-1.4.1/src/Dap/Banshee.Dap.Mtp/Banshee.Dap.Mtp/MtpSource.cs:87 ERROR: Could not close session! inep: usb_get_endpoint_status(): Device or resource busy outep: usb_get_endpoint_status(): Device or resource busy usb_clear_halt() on IN endpoint: Device or resource busy usb_clear_halt() on OUT endpoint: Device or resource busy usb_clear_halt() on INTERRUPT endpoint: Device or resource busy [Debug 12:23:58.508] Service disposed (GStreamerCoreService) [Debug 12:23:58.512] Service disposed (NotificationAreaService) [Debug 12:23:58.513] Service disposed (GnomeService) [Debug 12:23:58.513] Service disposed (CoverArtService) [Debug 12:23:58.515] Service disposed (MultimediaKeysService) [Debug 12:23:58.518] Service disposed (DapService) [Debug 12:23:58.523] Service disposed (DaapService) [Debug 12:23:58.525] Service disposed (AudioCdService) [Debug 12:23:58.526] Service disposed (NereidPlayerInterface) [Debug 12:23:58.527] Service disposed (CollectionIndexerService) [Debug 12:23:58.527] Service disposed (HardwareManager) [Debug 12:23:58.529] (libbanshee:player) bp_stop: setting state to GST_STATE_NULL [Debug 12:23:58.529] (libbanshee:player) bp_destroy: disposed player [Debug 12:23:58.530] Service disposed (PlayerEngine) [Debug 12:23:58.538] Service disposed (SourceManager) [Debug 12:23:58.538] Service disposed (DbConnection)
Created attachment 123686 [details] Output of mtp-detect
Update: I found one program that is able to connect to the Walkman using MTP! gnomad2 is able to successfully open a session over PTP! Also, I've done some more research. On Ubuntu 8.04.1 LTS, the Walkman also won't connect over MTP on Amarok or Rhythmbox. On Ubuntu 8.10 and Fedora 10, it won't connect using Banshee (haven't tried other players). All these operating systems are 32-bit, in case that matters. I also decided I should post the output of mtp-detect, maybe someone can find somtehing unkosher in there...
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find. *** This bug has been marked as a duplicate of 543938 ***