I've been a TiVo owner since 2002, and I still think it's as fantastic a piece of hardware now as I did six years ago. It's incredibly easy to use, and has been 100% reliable. However, over Christmas I decided I'd record plenty of films, for later viewing. The only problem was that we couldn't watch them as fast as they were recorded, and some films were automatically deleted to make room for new films. I'd thought about upgrading the TiVo before, but since I bought the iMac I've had a spare 250GB drive lying around…
I'd read about upgrading the TiVo several times over the years, and the upgrader's bible has always been the Hinsdale howto. I also came across Steve Conrad's site, where he talks about his TiVo upgrade experiences, the best bit being that as he uses a UK TiVo he'd have the same options as me. Conveniently he also links to all the downloads you need, and he covers the kernel upgrade (to address more than 137GB of disk space).
The hardest part of the whole process is probably getting the disks you need ready. If you're a Windows user, you don't have a simple way of burning ISOs to a CD. Luckily the Mac does, so that wasn't difficult for me. What was difficult was finding a Windows machine with a floppy drive, to create a bootable disk with diskpart on it. As I had an old machine with parallel ATA connectors, a CD-ROM drive, and a floppy drive handy, I was ready to go.
Steve Conrad's guide covers backing up your TiVo drive to another drive, then restoring it to the new drive, but I didn't want to bother with that, preferring to copy direct from the TiVo drive to the new drive. Also I wanted to preserve my recordings.
First, I disconnected any hard drives already in the machine, and connected the CD-ROM drive as primary master. Then I removed the hard disk from the TiVo (which was really easy), and connected it as secondary master. Set the BIOS to boot from CD, let it boot, then scroll back to see how large the detected drive is. In my case it had been detected as 10MB, so it needed unlocking with diskpart.
Power off the system, and boot from floppy. Then run diskpart/PermUnlock 2. Answer yes to all the questions. Then power off the machine.
Connect the new drive as secondary slave (leaving the TiVo drive as secondary master), and boot from CD. Now I had to figure out what options to use to copy the data between drives, while retaining the recordings, and adjusting the amount of swap space too.
Steve Conrad's guide mentions that you should use the restore command rather than mfsrestore, so I investigated that, and found that restore appears to simply be a link to mfsrestore, so I don't think it matters which you use.
Both guides are unanimous that the TiVo should be backed up with mfsbackup -Tao – /dev/hdc which would read all the data from the drive and send it to stdout. I plumped for mfsrestore -r 4 -s 300 -xzpi – /dev/hdd for the restore, which would be read from stdin. The -r should remove a limitation that I don't actually need to worry about at 274GB, but I put it in anyway. The -s 300 should expand the swap to 300MB, to prevent memory issues when there are large amounts of recordings. This meant it was simply a case of connecting the commands together with a pipe, giving me:
mfsbackup -Tao – /dev/hdc | mfsrestore -r 4 -s 300 -xzpi – /dev/hdd
Then I left it to do its stuff. My estimates were that it would take around 3 hours, but I simply left it overnight. The copy completed successfully.
The next step was to upgrade the kernel. I didn't need to worry about taking a backup of the existing kerel, as I still had the original TiVo drive, so I simply ran copykern and selected option 1 for my type of TiVo.
Then power it all down, put the new hard drive in the TiVo, ad power it all up. Everything worked like a charm, and a check on the system information showed I now had 299 hours, 58 minutes of recording space. I think that should be enough! As an added bonus the new hard drive is quieter than the old drive.
If you have a TiVo and have thought about upgrading, just do it! It's easier than you might think.