March 2012

HTPC Project Update

The HTPC project (a.k.a. get rid of cable) has been going on for almost a year now, so I thought I’d post an update.  The original intent was to see if cable TV service could be replaced with internet and broadcast TV.  My requirements for a solution were:

  • Usable by the whole family
  • Content obtained legally
  • No loss of content
  • Run on Linux machines (or at least not Windows)

So can it be done?  Not exactly.  At least I couldn’t make it work.  Here’s what I found out:

  • Audio/Video retailers won’t touch this space.  They don’t know it, they don’t want to know it.  All they do know is that this stuff isn’t turnkey and they don’t want to support a computer.  And they’re right.  This means setting this up without computer skills is probably not a good idea.
  • The cable TV experience has been refined over the years.  As petty as it sounds, you need a traditional remote control.  No one wants to have to sit with a keyboard and type in a URL, log in and push a “full screen” button to switch channels.
  • Some networks are only available only on cable.  Sports, for instance, are not always available.  If they’re not broadcast (i.e. carried by a major network), you can’t get them without buying a subscription.  This was a problem for Phillies and Eagles games.
  • Streaming services like Netflix, Hulu and Amazon video don’t run natively on Linux.  To use them requires inconvenient steps.  See this discussion of Netflix on Linux.

Could I have done more to make this work?  Yeah.  I didn’t install a TV tuner in the HTPC. This would have let us fast-forward and rewind through live TV.  Once you’ve gotten used to this, it’s jarring to watch TV without it.   (Heck, sometimes I try to rewind the radio in my car.)   I didn’t try any subscriptions to replace cable content. But those subscriptions still require use of a web site, which, as I mentioned, scores low on ease of use.  I could have canceled cable to force myself to dig deeper for a replacement.  And, lastly, I did this project in the basement, which isn’t as comfortable as the family room.  If the kids were watching their shows in the family room (even ones I would never watch myself), I found I’d rather watch that in the family room than go down to the basement to watch something I enjoyed.  Insane, yes.  Lazy, yes.  But that’s what happened.

The experiment wasn’t a total loss.  The HTPC gets content automatically loaded on the NAS by Sickbeard.  I watch those shows while on the treadmill or bike trainer, which means I exercise more.  The kids use the HTPC to watch YouTube on the big screen.  I use the big screen to preview video I take with my DSLR.  The NAS has made back-ups a breeze.  There’s an extra computer in the house as a back-up.  And I was inspired to get a TiVo!

Although we’re not giving up cable, one thing that was a constant irritation about cable was the usability of the FiOS DVR.  In addition to being buggy (switching tuners unpauses a show, fast forwarding to the end of a show is tricky, recordings sometimes don’t work right), the user interface is unresponsive.  Frequently the DVR doesn’t respond to a button press.  What’s worse is there’s no user feedback when the DVR is busy.  So you can’t tell if it got your command or not.  Do I push the button again?  Wait a while?  Ugh.  After living with this for three years, I replaced it with a TiVo.  I had considered getting the TiVo Premiere because it records broadcast TV.  What the HTPC experiment taught me is that I can’t replace cable just yet.  So if I’m going to use cable, I don’t need broadcast.  The Premiere Elite has four cable tuners, but no broadcast tuner.  It’s only been in the house for a day–I’ll post more on that later.


Comments (0)


GMail Stuck on “Sending…”

After restoring my Galaxy Nexus, all was fine except for sending email.  I could get email, but when I tried to send one, the message would go in the Outbox with “Sending…” next to it.   Rebooting didn’t help.  Neither did wiping the cache from Recovery.  The answer was to clear data for GMail in the Application Manager under Settings.  The link says to do this for the GMail Storage app, too, but I didn’t have one of those.  Just clearing GMail was enough.


Comments (0)


Clockworkmod Recovery Failure

I tried updating CyanogenMod 9 on my Galaxy Nexus.  The first step is to perform a Nandroid backup.  You can do that by powering off the phone, holding volume up and down and then power until the phone vibrates.  This might take 15 seconds or so.  The Android logo will appear on the screen with a big green arrow above it that says “Start”.  Let go of the keys.  Use volume down to select Recovery Mode and press Power.  Select “backup and restore”, then “backup.”

After loading the new CyanogenMod ROM, the phone wouldn’t boot right.  It would start, but not connect to the  phone network.  After a while it’d reboot itself.  I’d had this problem once before.  I rebooted into Recovery and tried a restore, but it failed with the message “Error while restoring /data!”  Googling recommends wiping the phone to factory state and reloading CyanogenMod.

The first step is to save the last Nandroid backup.  To do this, start Recovery, then select “Mounts and Storage”, then “mount /data”.  Then connect the phone via USB to your computer and on your computer, change to the android SDK platform-tools directory and
$ adb pull /data/media/clockworkmod/backup
You might have to run this command with sudo if you don’t have UDEV rules set up correctly.  Each directory in backup is a Nandroid backup that has a TAR file of cache, data and system, a boot and recovery image and an MD5 sum.

After the backups are secure, restore the phone to a factory state.

When the phone starts in activation mode, just skip everything it asks for, then in settings, under developer options, turn on USB debugging.  This will let you download

$ adb push /sdcard/.

As mentioned in the Root instructions.

After you have the phone rooted, create the ClockworkMod backup directory:

$ adb shell

# mkdir -p /sdcard/clockworkmod/backup

# exit

And copy your backups to the phone:

$ adb push clockworkmod/backup /sdcard/clockworkmod/backup/.

Then on the phone (while still in recovery mode), Select “backup and restore”, then “restore” and choose your backup.  After the restore completes, reboot the phone.

Alternately, you can restore the data partition of the backups with Titanium  Backup.


Comments (2)


Rooting the Nexus

Rooting instructions

These clarifications are for Linux:

Turn on USB debugging on your phone. This is under settings -> Developer options.

Power off your phone first.
On the phone, hold down Volume Up and Volume Down, then hold the Power until the phone vibrates (about four seconds). On the screen There will be a green arrow with “Start” written in it.

When they say “open terminal”, this is on your computer, not the adb shell. When running fastboot, you might need to run this with sudo. (The udev rules listed still don’t allow me to run the adb server as myself. See previous post about adb.)

Recover and Root section: Restart phone by holding volume up, volume down and then holding the power button until it vibrates. This might take up to 15 seconds.

You’ll see a screen with an open android and a green arrow at the top. On the bottom in small red letters, it’ll say FASTBOOT MODE.


Comments (0)


Creating a DVD from other DVDs

  1. Rip the DVDs with dvd::rip
  2. Edit the .VOB files with Avidemux and save desired clips
  3. Transcode for NTSC DVD with ffmpeg -i clip.vob -target ntsc-dvd dvdclip.vob
  4. Create a project with DeVeDe and add each transcoded DVD clip in its own title. Select option to Create a menu with the titles

If DeVeDe fails to create the DVD structure, make sure you’ve properly transcoded the DVD clips with -target ntsc-dvd. If you haven’t, the error message misleadingly suggests you’ve run out of disk space.

Preview the ISO file with VLC and burn it to a disc with K3B (Tools -> Burn Image).


Comments (0)