6

I have a mobile phone about two years old. When I first bought this phone, the internal micro SD card was recognized without the slightest problem. All I had to do was to connect the phone using a USB cable and select Mass Storage in the phone from an offered list (others were Webcam and Comm Port).

Today, I find that, when I connect the phone, it is not recognized at all.

The following entries are found in /var/log/syslog

Apr 14 16:07:01 HomeDell kernel: [ 6661.524019] usb 5-2: new full-speed USB device number 11 using uhci_hcd
Apr 14 16:07:01 HomeDell kernel: [ 6661.700045] usb 5-2: New USB device found, idVendor=0e8d, idProduct=0002
Apr 14 16:07:01 HomeDell kernel: [ 6661.700054] usb 5-2: New USB device strings: Mfr=2, Product=3, SerialNumber=4
Apr 14 16:07:01 HomeDell kernel: [ 6661.700058] usb 5-2: Product: MT6235 
Apr 14 16:07:01 HomeDell kernel: [ 6661.700062] usb 5-2: Manufacturer: MediaTek Inc
Apr 14 16:07:01 HomeDell kernel: [ 6661.700065] usb 5-2: SerialNumber: 53223730122274f
Apr 14 16:07:01 HomeDell kernel: [ 6661.706198] usb-storage 5-2:1.0: USB Mass Storage device detected
Apr 14 16:07:01 HomeDell kernel: [ 6661.706374] scsi host6: usb-storage 5-2:1.0
Apr 14 16:07:01 HomeDell mtp-probe: checking bus 5, device 11: "/sys/devices/pci0000:00/0000:00:1d.3/usb5/5-2"
Apr 14 16:07:01 HomeDell mtp-probe: bus: 5, device: 11 was not an MTP device
Apr 14 16:07:02 HomeDell systemd[1]: Starting USB_ModeSwitch_5-2...
Apr 14 16:07:02 HomeDell usb_modeswitch_dispatcher[8361]: Could not read attribute: No such file or directory
Apr 14 16:07:02 HomeDell kernel: [ 6662.709045] scsi 6:0:0:0: Direct-Access     MEDIATEK  FLASH DISK      6235 PQ: 0 ANSI: 0 CCS
Apr 14 16:07:02 HomeDell kernel: [ 6662.712064] scsi 6:0:0:1: Direct-Access     MEDIATEK  FLASH DISK      6235 PQ: 0 ANSI: 0 CCS
Apr 14 16:07:02 HomeDell kernel: [ 6662.712853] sd 6:0:0:0: Attached scsi generic sg1 type 0
Apr 14 16:07:02 HomeDell kernel: [ 6662.713613] sd 6:0:0:1: Attached scsi generic sg2 type 0
Apr 14 16:07:03 HomeDell kernel: [ 6662.721057] sd 6:0:0:0: [sdb] 15628288 512-byte logical blocks: (8.00 GB/7.45 GiB)
Apr 14 16:07:03 HomeDell kernel: [ 6662.726540] sd 6:0:0:1: [sdc] 180000 512-byte logical blocks: (92.1 MB/87.8 MiB)
Apr 14 16:07:03 HomeDell kernel: [ 6662.729063] sd 6:0:0:0: [sdb] Write Protect is off
Apr 14 16:07:03 HomeDell kernel: [ 6662.729076] sd 6:0:0:0: [sdb] Mode Sense: 03 00 00 00
Apr 14 16:07:03 HomeDell kernel: [ 6662.732104] sd 6:0:0:1: [sdc] Write Protect is off
Apr 14 16:07:03 HomeDell kernel: [ 6662.732118] sd 6:0:0:1: [sdc] Mode Sense: 03 00 00 00
Apr 14 16:07:03 HomeDell kernel: [ 6662.735065] sd 6:0:0:0: [sdb] No Caching mode page found
Apr 14 16:07:03 HomeDell kernel: [ 6662.735078] sd 6:0:0:0: [sdb] Assuming drive cache: write through
Apr 14 16:07:03 HomeDell kernel: [ 6662.738053] sd 6:0:0:1: [sdc] No Caching mode page found
Apr 14 16:07:03 HomeDell kernel: [ 6662.738067] sd 6:0:0:1: [sdc] Assuming drive cache: write through
Apr 14 16:07:03 HomeDell kernel: [ 6662.777499]  sdb: sdb1
Apr 14 16:07:03 HomeDell kernel: [ 6662.786102]  sdc:
Apr 14 16:07:03 HomeDell kernel: [ 6662.821056] sd 6:0:0:0: [sdb] Attached SCSI removable disk
Apr 14 16:07:03 HomeDell kernel: [ 6662.824163] sd 6:0:0:1: [sdc] Attached SCSI removable disk
Apr 14 16:07:02 HomeDell usb_modeswitch_dispatcher[8361]: message repeated 2 times: [ Could not read attribute: No such file or directory]
Apr 14 16:07:03 HomeDell usb_modeswitch: switch device 0e8d:0002 on 005/011
Apr 14 16:07:03 HomeDell systemd-udevd[8373]: inotify_add_watch(9, /dev/sdb, 10) failed: No such file or directory
Apr 14 16:07:03 HomeDell systemd-udevd[8376]: inotify_add_watch(9, /dev/sdc, 10) failed: No such file or directory
Apr 14 16:07:03 HomeDell systemd-udevd[8373]: inotify_add_watch(9, /dev/sdb1, 10) failed: No such file or directory
Apr 14 16:07:04 HomeDell usb_modeswitch[8361]: usb_modeswitch: switched to 0e8d:0002 on 5/11
Apr 14 16:07:05 HomeDell usb_modeswitch_dispatcher[8361]: Unable to open bind list file: No such file or directory
Apr 14 16:07:05 HomeDell usb_modeswitch[8361]: usb_modeswitch: add device ID 0e8d:0002 to driver option
Apr 14 16:07:05 HomeDell usb_modeswitch[8361]: usb_modeswitch: please report the device ID to the Linux USB developers!
Apr 14 16:07:06 HomeDell colord-sane: io/hpmud/pp.c 627: unable to read device-id ret=-1
Apr 14 16:07:12 HomeDell systemd[1]: Started USB_ModeSwitch_5-2.

The following points might be relevant.

  1. It is a cheap brand phone.
  2. It is a non-Android phone.
  3. The phone and internal storage are recognized in Windows 8 without any problem.
  4. The internal SD card that was present before and present today are different. My phone was without any SD card for about a year or more. Today, I inserted a new SD card (Transcend MicroSDHC Class 10 8GB) to my phone.

When the phone is connected, a menu appears giving one the options of choosing from 'Mass storage', 'Web cam' and 'COM port'. If the second or third is chosen, the following appears when lsusb command is issued.

Bus 005 Device 009: ID 0e8d:0003 MediaTek Inc. MT6227 phone

However, if the first option (Mass storage) is chosen, lsusb output is,

Bus 005 Device 019: ID 0e8d:0002 MediaTek Inc.

Update 1

  • Ubuntu 15.10 (but I tested in Ubuntu 16.04 with the same failure).
  • Kernel: 4.2.8-040208-generic.
  • Mobile phone: Symphony X120 (as you can see above, lsusb calls it a MediaTek Inc. MT6227 phone.
6
  • Please, can you tell the Ubuntu version, Ubuntu kernel version and mobile model? Apr 14, 2016 at 10:40
  • @RaelGugelminCunha Please see the update.
    – Masroor
    Apr 14, 2016 at 11:30
  • Your USB cable may not be capable of transferring or reading files, only charging your phone up. Can you try other USB cables?
    – userino
    Apr 14, 2016 at 11:50
  • @user281916 If the cable is not good, how come it works in Windows?
    – Masroor
    Apr 14, 2016 at 11:59
  • 1
    @user281916 I did try another cable, no change.
    – Masroor
    Apr 14, 2016 at 13:07

1 Answer 1

8
+50

The key to the solution are the usb-modeswitch errors.

usb-modeswitch was introduced as a means to deal with devices who have different modes, most popular example are USB surfsticks which have drive-like properties on first insert to access the Windows drivers. After installation, the driver switches the mode of the device to UMTS or LTE modem mode.

OP's mobile phone needs the same procedure to access the storage.

Usually the usb mode switch is fairly automatic, but in this case, there are devices with conflicting USB IDs around, blocking a fully automatic solution.

Since the issue for the device is already known; just comment out the line ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="0002", RUN+="usb_modeswitch \'%b/%k\'" in /lib/udev/rules.d/40-usb_modeswitch.rules, and it should work.

You have now clarified to your PC what exactly your device is. Only downside is that if you should encounter one of the USB devices with conflicting IDs, they will be treated as your phone, and throw errors or even fail.

2
  • Yes, it did. Please allow me to wait for a couple of days before I award the bounty, as I always do, to see if a better answer comes up. In the meantime, you may want to enrich your answer with some explanations.
    – Masroor
    Apr 14, 2016 at 23:53
  • Thank you! It worked for me, for connecting the storage of a "kids smart watch", in Ubuntu 20.04. I needed also a reboot after commenting the mentioned line in 40-usb_modeswitch.rules file.
    – Stefano
    May 5, 2021 at 21:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.