PC Suddenly doesn't recognize secondary HDD

I left home today at 7PM with my PC working fine. I came back, turned it on and it took a long time to boot. When it booted up the only thing showing up in my drives was my SSD, my secondary drive(a seagate harddrive) was gone. It was also gone from everywhere (even checked the BIOS, it says that all SATA ports but the one my SSD uses are uninstalled.

Before checking the BIOS i moved it around all SATA slots just to be sure and all i got was long boot times and no secondary drive.

Frustrated, (as it is a Saturday so i'll have to wait till Monday to get it looked at), I put it back on it's original SATA port and booted up again and it actually worked! My PC booted up in seconds and the second drive was there!

Delighted I turned my PC off, put the case back together and when I went to boot it up again it took 5 minutes and no secondary hard drive. After a couple restarts no luck...

Please people of reddit that know better help me out on this. Is it the hard drive? Is it the SATA cable? is it the motherboard? is it the drivers? HELP!

Some more info:

  • Motherboard: Gigabyte B250M-D2V
  • The hard drive receives power normally and at the very start of the boot I can even hear it spinning.
  • At the one instance when the driver booted up normally all files were working properly.

Edit: I switched the SATA cables of my SSD and HDD and confirmed that the SATA was not at fault. There's must be an issue preventing the HDD to fully boot because when it did that one time last night all files were fine.