Sometimes Mac doesn't recognise my external hard drive I have a Western Digital My Passport Ultra 1 TB external hard drive that is formatted FAT32 and a 16 GB Silicon Power USB thumb drive and both of them uses USB3 but my MacBook Pro sometimes doesn't recognise them and I have to remove them or restart MacBook several times until they show up.

What could be the problem?

Specs: MacBookPro12,1 2015 with OS X 10.11.5
There can be a number of reasons why your Macbook Pro won't recognize a drive.

For instance, if you have a drive mounted and your system goes to sleep, it will also power down the USB port, putting your drive to sleep.  When your Mac wakes up again, the drive may not have come out of its slumber.

To verify that your USB port is detecting devices, open "Console" (Applications > Utilities > Console).  For example, I inserted a Windows (FAT16) formatted USB flash drive that doesn't mount and doesn't show on my desktop.  However, in Console, you can see that it is detected and an error is generated:



When you attach your USB devices, have Console running and watch to see if the device is detected and whether an error is generated.  If nothing happens here (with both devices) then you have ruled out your USB devices.  

If they are being recognized in the system, but not showing up, you may have to disconnect them and remount them in Terminal. 

First, see if they are listed.  Issue the command 

diskutil list

My relevant output, again using my non-mountable USB as an example is as follows:

/dev/disk4 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +15.6 MB    disk4
   1:        Apple_partition_map                         32.3 KB    disk4s1
   2:                  Apple_HFS True Key                15.6 MB    disk4s2
/dev/disk5 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *8.0 GB     disk5
   1:             Windows_FAT_16                         2.1 GB     disk5s1 &lt;----- My Problem Child


Eject the disk using the command

diskutil eject disk5

(Obviously use the disk number that associated with your USB device)

Running diskutil list again shows the device is gone:

/dev/disk4 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +15.6 MB    disk4
   1:        Apple_partition_map                         32.3 KB    disk4s1
   2:                  Apple_HFS True Key                15.6 MB    disk4s2


Now, physically remove, then reinsert the USB drive.   Your drive should be functioning again.