How-To: Expand TiVo HD Storage

With a swish and flick of my wand, and an incantation of “Tivous Expandiarmus!” (Oh my, I’ve been reading way too much Harry Potter!), our TiVo’s capacity increased from 35 hours to over 120 hours of recording space.

OK, it wasn’t quite that simple. But, about three and a half hours after I cracked open my Hughes DirecTiVo box, I had finished the job. This was something I had been planning to do for almost two years ever since I first got my TiVo but just finally got around to completing. The biggest factor was that I was waiting for the price point of the hard drive to fall under $100.

The only thing I had to purchase was a 160GB, 7200rpm, ATA/100 Seagate hard drive. Since my Hughes DirecTiVo is based on an older Linux kernel that doesn’t support any drive larger than 137GB it didn’t make sense to buy anything with a bigger capacity than that. Plus, the box only supports one drive (without some modifications to the box and the creation of a custom bracket, not to mention the added drain on the fragile power supply), so adding a second drive wouldn’t have worked either. I picked up the drive new at Fry’s Electronics for $89 — with a $50 mail-in rebate!

After burning myself a boot CD, I cracked open one of my spare IBM desktops to perform the operation. Since the IBM (and every other computer in the house) uses XP, I disconnected the existing hard drive so that Windows XP couldn’t corrupt the TiVo drive. I hooked up the old TiVo drive in its place, making it the Primary Master (hda). The new upgrade drive I hooked inline with the CD-ROM drive, making the new drive the Secondary Slave (hdd). Once I flipped the power back on the IBM, I changed the boot sequence to search for the CD first, and I was ready to begin the upgrade.

Essentially, I followed most of the standard upgrade instructions, but since I had an in-depth understanding of what was really happening underneath the covers, I skipped a few of the steps. I chose to skip the backup process mainly because I didn’t want to set up a computer running something other than XP (too much of a hassle), and I had a good idea that I knew what I was doing. Even so, I was a bit nervous when I typed in the two commands needed to complete the upgrade, hoping that I hadn’t accidentally gotten the two drives mixed up. I really didn’t want to overwrite the old TiVo unit with the empty drive and lose all the TiVo stuff!

So, I started out with a simple Linux drive duplicate command which took about an hour and a half to complete:

dd if=/dev/hda of=/dev/hdd bs=1024k

Then, after popping the new drive in and out of the TiVo just to make sure the vanilla copy worked OK, I skipped the rest of the steps and went right to increasing the capacity. See, the dd command above makes the new hard drive look exactly like the old, right down to the 35-hour capacity. A simple command that took another hour and a half to complete the job:

mfsbackup -Tao - /dev/hda | mfsrestore -s 127 -xzpi - /dev/hdd

Once I replaced the new drive into the TiVo box, tightened up all the screws, reconnected everything, and booted up — voila!! I had gone from only 35 hours to over 120 hours of possible recording time! Worked out to be just about $0.50 per hour of added capacity.

Of course, it was not until everything was properly stowed away that I realized that the rebate paperwork requires the drive serial number. *sigh*