Windows – 2.2 TB limit applies even to eSATA drives? 3TB appears as 746 GB

esataexternal hard drivehard drivewindows-vista

I have an Icy Dock 3.5" external enclosure with USB 2.0 and eSATA. I have an Intel DG45ID motherboard with USB 2.0 and eSATA ports. In the past I had a 2 TB Seagate drive in the enclosure, and it worked fine via either interface. I just bought a 3 TB Hitachi drive, and it shows up as 746.39 GB!

At first I thought, no problem, the USB storage controller in this couple-year-old enclosure just doesn't support drives over 2.2 TB (a famous limit, apparently). So I switched to eSATA, thinking that this would be a simple pass-through connection and it would work, because the enclosure isn't really doing anything with the interface then. But apparently it isn't so.

I have Windows Vista 64-bit, with the current patches. I initialized the disk as GPT, rather than MBR, as recommended in the GUI for disks larger than 2 TB.

So, what gives? Was I wrong that the eSATA enclosure just passes the SATA connection through unmodified? Is my motherboard to blame? Some drivers?

Edit: I just installed the Intel Rapid Storage software, which updated my SATA controller driver from 8.6 (dated 2-3 years ago) to 9.6 (dated a bit over a year ago). This didn't change how Windows Vista sees the drive, but it did install an "Intel Rapid Storage Technology" application which shows the drive as 3 TB! So, some part of the system sees the full drive size, but not the OS. What gives?

Best Answer

From what I've read, you need an even newer version of the Rapid Storage Technology driver, version 10.1 or newer. Looks like 10.6 is now available.

The main problem is that the combination of your BIOS, OS, and storage drivers don't know how to handle drives with that many 512-byte sectors on it (the Hitachi 3TB disk doesn't have a 4KB sector size, unlike some other > 2TB drives). By updating the storage drivers to something new enough, it can handle the OS/BIOS special interactions better.