0

I have a USB key that was working and now cannot be mounted anymore. The device is detected but is not mounted. After a one minute or so it moves to not detected state. The command ioreg -p IOUSB -w0 -l returns the following just after the connection. After a while, the device disappears from the list.

+-o USB Flash Disk@14100000  <class AppleUSBDevice, id 0x100007502, registered, matched, active, busy 0 (7 ms), retain 19>
|   {
|     "sessionID" = 140116672718152
|     "iManufacturer" = 1
|     "bNumConfigurations" = 1
|     "idProduct" = 4096
|     "bcdDevice" = 4352
|     "Bus Power Available" = 250
|     "USB Address" = 10
|     "bMaxPacketSize0" = 64
|     "iProduct" = 2
|     "iSerialNumber" = 3
|     "bDeviceClass" = 0
|     "Built-In" = No
|     "locationID" = 336592896
|     "bDeviceSubClass" = 0
|     "bcdUSB" = 512
|     "USB Product Name" = "USB Flash Disk"
|     "PortNum" = 1
|     "non-removable" = "no"
|     "IOCFPlugInTypes" = {"9dc7b780-9ec0-11d4-a54f-000a27052861"="IOUSBFamily.kext/Contents/PlugIns/IOUSBLib.bundle"}
|     "bDeviceProtocol" = 0
|     "IOUserClientClass" = "IOUSBDeviceUserClientV2"
|     "IOPowerManagement" = {"DevicePowerState"=0,"CurrentPowerState"=4,"CapabilityFlags"=32768,"MaxPowerState"=4,"DriverPowerState"=4}
|     "kUSBCurrentConfiguration" = 1
|     "Device Speed" = 2
|     "USB Vendor Name" = "General"
|     "idVendor" = 2316
|     "IOGeneralInterest" = "IOCommand is not serializable"
|     "USB Serial Number" = "04IUVY6CK9W0QCJJ"
|     "IOClassNameOverride" = "IOUSBDevice"
|   }
|   
+-o USB Flash Disk@14200000  <class AppleUSBDevice, id 0x100007700, registered, matched, active, busy 0 (7 ms), retain 18>
    {
      "sessionID" = 142173080787396
      "iManufacturer" = 1
      "bNumConfigurations" = 1
      "idProduct" = 4096
      "bcdDevice" = 4352
      "Bus Power Available" = 250
      "USB Address" = 31
      "bMaxPacketSize0" = 64
      "iProduct" = 2
      "iSerialNumber" = 3
      "bDeviceClass" = 0
      "Built-In" = No
      "locationID" = 337641472
      "bDeviceSubClass" = 0
      "bcdUSB" = 512
      "USB Product Name" = "USB Flash Disk"
      "PortNum" = 2
      "non-removable" = "no"
      "IOCFPlugInTypes" = {"9dc7b780-9ec0-11d4-a54f-000a27052861"="IOUSBFamily.kext/Contents/PlugIns/IOUSBLib.bundle"}
      "bDeviceProtocol" = 0
      "IOUserClientClass" = "IOUSBDeviceUserClientV2"
      "IOPowerManagement" = {"DevicePowerState"=0,"CurrentPowerState"=4,"CapabilityFlags"=32768,"MaxPowerState"=4,"DriverPowerState"=4}
      "kUSBCurrentConfiguration" = 1
      "Device Speed" = 2
      "USB Vendor Name" = "General"
      "idVendor" = 2316
      "IOGeneralInterest" = "IOCommand is not serializable"
      "USB Serial Number" = "04P6O04UC8YSC6QU"
      "IOClassNameOverride" = "IOUSBDevice"
    }

Device 140116672718152 is correctly detected and works correctly (it's an USB key of the same type) and device 142173080787396 is the problematic one. It is detected and listed but after a while it disappears from the list. Is there a way to reset the USB key firmware or something like that? I cannot connect on another laptop the key. I think it's not working since I have disconnected without eject during a transfer but I'm not sure about that.

1

In short, it's time to throw it away & get a new one.

If a USB key encounters a write error, then it will attempt to lock the device into read-only mode. If it tried to do this as power was being removed it may have failed to complete that task & be left in an uncertain state.

This is, to all intents & purposes, irreversible.

The solution is to discard it & copy your data to a new USB key.

If for any inconceivable reason it was the only copy of that data, then your recourse would be to a specialist recovery company.

The same applies to such as SD cards, as well as USB flash drives.
Once they start to go bad, they are not worth the effort of fighting them to try squeeze a little more life out of them.
Discard & replace.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .