3TB Internal Drive as 746GB

AIUI, the firmware in most older external enclosures is limited to 32-bit LBAs. This means that the maximum addressable capacity is 2TiB, which corresponds to a maximum LBA of 0xFFFFFFFF.

The USB-SATA bridge chip in the enclosure retrieves the drive’s capacity by issuing an ATA Identify Device command. The drive responds with a 512-byte data block which includes its model number, serial number, and capacity. The total number of LBAs is stored by the drive as a 48-bit value. However, because the bridge firmware is limited to 32-bits, the bridge IC reports only the lower 32 bits of the capacity to the host PC.

For example, the WD30EZRS has a capacity of 5860533168 LBAs. The hexadecimal value is 0x15D50A3B0.
http://www.google.com/search?q=5860533168+in+hex

If we take the lower 32 bits and discard the uppermost bits, then this number reduces to 0x5D50A3B0.

At 512-bytes per LBA, the reported capacity is now only 801GB:
http://www.google.com/search?q=0x5D50A3B0+x+512+in+decimal

This is equivalent to 746.5 GiB:
http://www.google.com/search?q=0x5D50A3B0+x+512+%2F+%281024%5E3%29

Depending on the chip in the enclosure, you may be able to upgrade its firmware so that it supports the full 3TB. Can you tell us the markings on the largest chip on the bridge PCB?

1 Like