Failing power supply

Catastrophic failure of a power supply

For my MythTV media computer I use a network based HD-TV tuner from SiliconDust . I've been very pleased with how it works, the form factor and feature set. However, over christmas it suddenly went dead due to no fault of it's own. The 5V 2A power supply had failed. (It is plugged into a UPS with surge suppressor, so I'm relatively sure it was caused by a component failure and not bad input power.) If you look at the photo of the failed power supply (left) next to the replacement component that SiliconDust sent me (right), you can clearly see where something inside melted (and/or forced) the plastic case to bubble out, leading me to believe it was a relatively catastrophic failure.

This reminds me of the trouble I had with the original iRobot Roomba. I had my initial robot replaced under warranty two times  (3 total robots) due to power supply and battery charging issues. Each replacement had a completely new (and different) power supply system, and it was clear that iRobot was iterating through  designs until they found one that was robust.  I only hope that this power supply failure was due to one bad unit, and isn't indicative of the average lifespan of the power supplies supplied with the HDHomerun.

My Reading Habits: Korean

Google Reader (a web based RSS reader that I use to track and read various sites and blogs) has a recommendation system that will give you recommended blogs to subscribe to. It uses the RSS feeds that you are currently subscribed to, and then looks to see who else is also subscribed to those feeds. It then looks for feeds your "neighbors" are subscribed to that you are not subscribed to, and recommends them.

Two of my top three recommendations were in Korean. Juding from the pictures and a few babelfish translations, they are a news website and a fashion/entertainment website.  Two possible conclusions to draw from this:

 1. I'm more like an average korean reader than an average US reader. (Somewhat possible given the  technically orientated blogs I subscribe too.)

2. A lot more Korean uses use Google Reader to read their RSS feeds than English users and are polluting the recommendation system.

My suggestion: Don't recommend a feed that is in a language that the user has never subscribed to before. But wading through a few useless recommendations didn't take much time, and near the bottom of my list was a suggestion for the Girl Genius comic, which I did find useful, so overall I found the recommendation system useful.

Tuning an ext3 filesystem for storing large media files

I added a new hard disk to my MythTV box, specifically for storing movies copied from my DVD collection. Because this disk will be used for storing mostly files that will be in the 1-4GB size range, and because it is NOT going to be used as the root (/) drive of this computer, I set the sparse_super and largefile4 settings, plus reserved zero space for the superuser (-m 0) with the following command:

 
mkfs -t ext3 -m 0 -O sparse_super -T largefile4 /dev/sdb1

MythTV to phone (.3gp) transcoder script and Bluetooth transfer

I built a perl script that can be used as a "User Job" from within mythtv to convert a recorded TV program into a cell phone (.3gp) movie. It makes uses of mythname.pl to get the show and title (for the filename) and mplayer/mencoder and ffmpeg to do the actual transcoding.

Unless you want to drop your files off in the /var/lib/mythtv/for_phone directory, you will need to edit the output directory.  I've found that 35 minutes of TV gets shrunken down to 24-30megs when in .3gp format when transcoded at a generous 80/16 (video/audio bitrate).

Script to transcode from mythtv files to .3gp files

I wrote a second script to transfer any files in this directory to my phone via bluetooth OBEX push every night. I use cron to start the phoneTransfer.pl script up each night, and it looks for any .3gp files in the directory and tries to copy them to my phone. If successful, it removes them from the directory.  Note that my Motorola V3xx has an annoying feature where it will receive OBEX bluetooth files into phone memory, and NOT to the default download location (which can be set to the memory card). If your phone is similar, you will have to copy files from the phone's memory to the memory card so that your phone's memory doesn't get full. If your phone's memory gets full, it will refuse further bluetooth transfers until you move the files over to a memory card. 

Script that does a bluetooth transfer to phone

Note that to use this script you will have to find your phone's bluetooth mac address (using "hcitool scan") and put it in the script. Also, you should pair your phone with your computer, and set your phone up to automatically accept OBEX push/FTP transfers unless you want to manually approve each video transfer.

Cingular/ATT is locking down newer V3XX phones

AT&T Death StarI have one of the first Cingular branded v3xx phones that was released when they first hit the market. Although it came pre-stocked with shortcuts to Cingular stores, Cingular Music downloads, and had things like the IMAP email client disabled by default, it was still relatively easy to hack. I was able to use P2kCommander over a USB cable to enable cool features like allowing unsigned java applications to access the internet , and the IMAP email client.  

To use P2kCommander, you had to go into your Settings->Connection->USB Settings and make sure that the default connection type was set to Data Connection (as opposed to Memory Card or USB Printing). If you couldn't set it to Data Connection, you can't use P2kCommander. (Or use the phone as a modem via a USB cable.)

A reader recently wrote in that Continue reading

MIME Types for hosting J2ME .jar and .jad files

If you want a mobile phone to be able to download and install a java application (.jad/.jar file) from your website, you need to set up the correct MIME types for .jar and .jad files if they have not been set up by your webhost.

With apache, you can usually do this on a per-directory basis by adding the following lines to your .htaccess file:

addtype text/vnd.sun.j2me.app-descriptor jad
addtype application/java-archive jar

How to import all windows fonts to Ubuntu (Gutsy)

I do NOT recommend importing all of your windows fonts to Linux. Sure, you paid for windows, and should be able to use all the windows fonts on any OS you want, but Microsoft (and their lawyers) may not feel the same way. Read your license agreement carefully. Instead, you should install the freely released and  licensed to all for any use Microsoft "core" fonts. (Also, Arial-9 killed my firefox install)

But, if after that warning you still want to import all of your Microsoft Windows truetype fonts from your windows partition to your linux partition and install them system wide, here is what to do:

Gain root privileges: sudo bash

Make a directory to store the fonts: mkdir  /usr/share/fonts/truetype/msfonts

Find the fonts on your windows partition, for me this was /media/sda1/Windows/Fonts

copy the fonts over: cp /media/sda1/Windows/Fonts/*.ttf  /usr/share/fonts/truetype/msfonts 

Re-create the font cache:   fc-cache -f -v

Turning off Video Overlay on Linux (Ubuntu 7.10)

The old version of the X.org ati x-server would do a true "clone" of my Thinkpad X31's LCD display out the VGA port on the back of the laptop. The new version shipped with Ubuntu 7.10 (gutsy) however doesn't do a true clone, so video overlays (called Xv in linux) will display movies on the LCD but not on the external VGA monitor.

So when you give a presentation with a movie, you can see the movie, but your audience can not! My X31 is able to play most movies without Xv so I decided not to use it. In windows, you can fix this problem by turning off Video Overlay in the display driver control panel. However, under Linux, you have to tell each of your movie players to use something besides Xv.  Standard X11 works, but won't allow you to scale videos. I prefer to use OpenGL, which works very nicely with the open source ati driver.

To make mplayer use OpenGL, edit the ~/.mplayer/config file and add the line "vo=gl2".

To make totem use OpenGL, edit the ~/.gnome2/Totem/xine_config file to include a line  as follows: "video.driver:OpenGL"

BTW- If you are unable to get video showing on your external VGA output, you can run the following command to set up a "clone" or "mirror" display:

 xrandr –output LVDS –mode 1024×768 –output VGA-0 –mode 1024×768 –same-as LVDS