Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:linux:linux_ipod_touch [2011/03/17 02:21]
alex [iPod configuration]
en:linux:linux_ipod_touch [2019/04/18 10:05]
alex removed
Line 23: Line 23:
 The latest database version is incompatible with the latest linux drivers. ​ Therefore, the database version of the device must be downgraded. ​ The process is quite simple.  ​ The latest database version is incompatible with the latest linux drivers. ​ Therefore, the database version of the device must be downgraded. ​ The process is quite simple.  ​
  
 +  - Install the ''​vim''​ package via cydia
   - Log in to the ipod via SSH as root with default password "​alpine"​.  ​   - Log in to the ipod via SSH as root with default password "​alpine"​.  ​
   -- su to root   -- su to root
Line 40: Line 41:
   -- Delete /​var/​mobile/​Media/​iTunes_Control   -- Delete /​var/​mobile/​Media/​iTunes_Control
   .. <​code>#​ rm -rf /​var/​mobile/​Media/​iTunes_Control</​code>​   .. <​code>#​ rm -rf /​var/​mobile/​Media/​iTunes_Control</​code>​
-  -- Change password (optional)+  -- Change password (optional, but highly recommended)
   .. Root password:   .. Root password:
   .. <​code>#​ passwd</​code>​   .. <​code>#​ passwd</​code>​
Line 50: Line 51:
 ===== Initialize Database ===== ===== Initialize Database =====
  
-Connect the device to iTunes and transfer at least 1 song to the device. ​ This will initialize the database+Connect the device to iTunes and transfer at least 1 song to the device. ​ This will initialize the database ​for use with linux.
  
 ===== Transfer songs with Banshee ===== ===== Transfer songs with Banshee =====
Line 56: Line 57:
 If everything has been done properly so far, the iPod should now work properly with Banshee. ​ If you haven'​t already, you might want to install the ''​gstreamer0.10-plugins-ugly-multiverse''​ package for the //lame// mp3 encoder. ​ This will allow Banshee to convert tracks to mp3 automatically.  ​ If everything has been done properly so far, the iPod should now work properly with Banshee. ​ If you haven'​t already, you might want to install the ''​gstreamer0.10-plugins-ugly-multiverse''​ package for the //lame// mp3 encoder. ​ This will allow Banshee to convert tracks to mp3 automatically.  ​
  
-Open up Banshee with the device connected. ​ Banshee should detect your device and display it in the side panel. ​ Try dragging a song onto the device in Banshee. ​ Once it is finished transferring,​ wait another 10 seconds or so and quit banshee (media -> quit). ​ Check the music player on the device to make sure the file appeared. ​ If so, you're done.  Banshee will now be able to transfer all of your music. ​ If not, well, back to the old drawing board.....+Open up Banshee with the device connected. ​ Banshee should detect your device and display it in the side panel. ​ Try dragging a song onto the device in Banshee. ​ Once it is finished transferring,​ wait another 10 seconds or so and quit banshee (media -> quit). ​ Check the music player on the device to make sure the file appeared. ​ If so, you're done.  Banshee will now be able to transfer all of your music. ​ If not, well, back to the old drawing board...
  
 ====== Debugging Notes ====== ====== Debugging Notes ======
Line 66: Line 67:
  
 If ''​banshee --debug''​ yields this error, the device is configured with database version 5 (too new). If ''​banshee --debug''​ yields this error, the device is configured with database version 5 (too new).
 +
 +<​code>​
 +Failed to save iPod database - GLib.GException:​ Failed to generate sqlite database (in `libgpod-sharp)
 +</​code>​
 +
 +To check the current configured version, run
 +
 +<​code>​ideviceinfo -q com.apple.mobile.iTunes -k DBVersion</​code>​
 +
 +.
 +
 +The solution is to edit Checkpoint.xml and change ''​DBVersion''​. ​ If you have already done this, make sure to delete the ''​iTunes_Control''​ directory and reboot the device. ​ Do not allow it to sync with anything and do not start the music player before rebooting.  ​
 +
 +Note: some sources say change the version to 2.  I tried that, and it didn't work.  After much head scratching, I tried 4 and it worked perfectly. ​ Don't forget to delete the ''​iTunes_Control''​ folder, reboot the iPod, and initialize the database with iTunes before trying again with banshee.  ​
 +
 +===== Old Driver Software =====
 +
 +If opening up the device in Nautilus only yields a folder called DCIM, then you are running the incompatible packages. ​ Please add the ppa listed above, upgrade, and reboot.  ​
 +
 +The below error messages are also indications that the drivers are the wrong version. ​ If any of these messages show up in dialog boxes or debug outputs, please check the versions. ​ Also make sure that the computer was rebooted after updating the packages.  ​
 +
 +<​code>​The ogg format is not supported by the device, and no converter was found to convert it.</​code>​
 +
 +<​code>​The mp3 format is not supported by the device, and no converter was found to convert it.</​code>​
 +
 +<​code>​[5 Warn 03:​07:​58.970] Caught an exception - System.ApplicationException:​ The ogg format is not supported by the device, and no converter was found to convert it (in `Banshee.Dap'​)
 +  at Banshee.Dap.DapSource.AddTrackAndIncrementCount (Banshee.Collection.Database.DatabaseTrackInfo track) [0x00000] in <​filename unknown>:​0
 +  at Banshee.Sources.PrimarySource.AddTrackList (System.Object cached_list) [0x00000] in <​filename unknown>:​0</​code>​
 +  ​
 +<​code>​[5 Warn 03:​07:​58.970] Caught an exception - System.ApplicationException:​ The mp3 format is not supported by the device, and no converter was found to convert it (in `Banshee.Dap'​)
 +  at Banshee.Dap.DapSource.AddTrackAndIncrementCount (Banshee.Collection.Database.DatabaseTrackInfo track) [0x00000] in <​filename unknown>:​0
 +  at Banshee.Sources.PrimarySource.AddTrackList (System.Object cached_list) [0x00000] in <​filename unknown>:​0</​code>​
 +
 +===== Red Herring =====
 +
 +The following error message looks ominous and I originally thought it to be an indication of an incorrect database version. ​ However, it appears every time my ipod touch successfully updates. ​ If you get it, all it really means is that some of the database updates apparently didn't work as expected, perhaps due to some sort of database structure change. ​ This error won't stop your ipod from syncing, so if it is not syncing, look elsewhere.
 +
  
 <​code>​ <​code>​
Line 91: Line 129:
 </​code>​ </​code>​
  
-To check the current configured version, run+===== MTP Issues =====
  
-<​code>​ideviceinfo -q com.apple.mobile.iTunes -k DBVersion</​code>​+The first time I ran through the whole process it worked perfectly The second time, on a different computer, I ran headlong into a different problem The iPod Touch would be properly detected until Banshee was started, then it would disappear The error log looked like this:
  
-.+<​code>​ 
 +** (Banshee:​19245):​ CRITICAL **: itdb_get_control_dir:​ assertion `mountpoint'​ failed 
 +Device 0 (VID=05ac and PID=129e) is UNKNOWN. 
 +Please report this VID/PID and the device model to the libmtp development team 
 +LIBMTP WARNING: no MTP vendor extension on device 30 on bus 2LIBMTP WARNING: VendorExtensionID:​ 00000000LIBMTP WARNING: VendorExtensionDesc:​ Device has no vendor extensionsLIBMTP WARNING: this typically means the device is PTP (i.e. a camera) but not an MTP device at all. Trying to continue anyway.LIBMTP PANIC: could not inspect object property descriptions! 
 +LIBMTP PANIC: could not inspect object property descriptions! 
 +LIBMTP PANIC: could not inspect object property descriptions! 
 +[7 Warn  01:​07:​44.542] Unable to get battery level from MTP device - Mtp.LibMtpException:​ Could not retrieve battery stats (in `Mtp'​) 
 +  at Mtp.MtpDevice.GetBatteryLevel (Mtp.MtpDeviceHandle handle, System.UInt16&​ maxLevel, System.UInt16&​ currentLevel) [0x00000] in <​filename unknown>:​0  
 +  at Mtp.MtpDevice.get_BatteryLevel () [0x00000] in <​filename unknown>:​0  
 +  at Banshee.Dap.Mtp.MtpSource.DeviceInitialize (IDevice device) [0x00000] in <​filename unknown>:​0  
 +[7 Debug 01:​07:​44.542] Found DAP support (Banshee.Dap.Mtp.MtpSource) for device Apple iPod and Uuid ... 
 +[1 Debug 01:​07:​45.063] Unmapping DAP source (...) 
 +</​code>​
  
-The solution is to edit Checkpoint.xml and change ​''​DBVersion''​.  If you have already done this, make sure to delete the ''​iTunes_Control''​ directory and reboot ​the device.  Do not allow it to sync with anything and do not start the music player before rebooting.  ​+Running ​''​mtp-detect'' ​also caused ​the device to disappear.  ​
  
-===== Old Driver Software =====+Solution: MTP is not required for talking to iPod devices, so the problem has nothing to do with MTP.  The ''​$HOME/​.gvfs''​ directory was actually a directory instead of a mount point. ​ Deleting the directory and rebooting solved the problem.  ​
  
-If opening up the device in Nautilus only yields a folder called DCIM, then you are running the incompatible packages. ​ Please add the ppa listed above, upgrade, and reboot. ​  +~~DISCUSSION~~
- +
-The below error messages are also indications that the drivers are the wrong version. ​ If any of these messages show up in dialog boxes or debug outputs, please check the versions. ​ Also make sure that the computer was rebooted after updating the packages. ​  +
- +
-<​code>​The ogg format is not supported by the device, and no converter was found to convert it.</​code>​ +
- +
-<​code>​The mp3 format is not supported by the device, and no converter was found to convert it.</​code>​ +
- +
-<​code>​[5 Warn 03:​07:​58.970] Caught an exception - System.ApplicationException:​ The ogg format is not supported by the device, and no converter was found to convert it (in `Banshee.Dap'​) +
-  at Banshee.Dap.DapSource.AddTrackAndIncrementCount (Banshee.Collection.Database.DatabaseTrackInfo track) [0x00000] in <​filename unknown>:​0 +
-  at Banshee.Sources.PrimarySource.AddTrackList (System.Object cached_list) [0x00000] in <​filename unknown>:​0</​code>​ +
-   +
-<​code>​[5 Warn 03:​07:​58.970] Caught an exception - System.ApplicationException:​ The mp3 format is not supported by the device, and no converter was found to convert it (in `Banshee.Dap'​) +
-  at Banshee.Dap.DapSource.AddTrackAndIncrementCount (Banshee.Collection.Database.DatabaseTrackInfo track) [0x00000] in <​filename unknown>:​0 +
-  at Banshee.Sources.PrimarySource.AddTrackList (System.Object cached_list) [0x00000] in <​filename unknown>:​0</​code>​+