How to Hack your Original AppleTV 1G (Updated for XBMC v11 and Mac OS X 10.8)

I bought and hacked my “Silver” AppleTV over 2 years ago, on the day Apple announced the “new” black AppleTV (2nd generation).  They have serve me very well, and are still going strong.  But after all these times, I felt the set in my Living Room needed a refresh.  Somehow XBMC dies whenever I leave it idling for a while.  So off I went to restore it and re-hack it, reading my own how-to as I go along since I’ve forgotten how to do it.

Much to my horror, 2 years is a long time and the USB stick failed to be created in Mountain Lion!   So I went looking for answers on how to hack my original AppleTV in Mac OS X 10.8.2. Well, I’m glad it’s still possible, and here I detail the how-to.  This time around, however, I’m not spoon-feeding you with very detailed instructions, but I hope it’s still easy enough for most of you.

Preparing the ATV USB Stick in Mac OS X 10.8

  1. Download atvusb-creator-1.0.b13.zip from here.
  2. Unzip it.
  3. Right-click on the atvusb-creator app, and select “Show Package Contents” from the pop-up menu.
  4. Navigate to /Contents/MacOS/atvusb-creator
  5. Drag & drop the “atvusb-creator” executable file into your Terminal.app (it’s in your OS X “/Application/Utilities” folder).
  6. Hit Enter to launch the app into OS X, and follow Step 2 of this guide to create the USB stick. Come back here after that to start hacking your AppleTV.

Preparing the AppleTV by Restoring it to Factory Condition

  1. Press and hold the Menu+Down buttons until the white LED turns amble, to go into Restore mode.
  2. Select Factory Restore.
  3. After restoring, set up and sync your AppleTV with iTunes, making sure everything works as it should.
  4. (Optional) Setup Network, changing it from DHCP to Manual, if necessary.

Hacking it

  1. Switch off the AppleTV, and plug-in the ATV USB Stick you created earlier.
  2. Switch it on, and watch a bunch of text scrolling by the TV screen.  Hacking is done when text has stopped scrolling, in no more than a minute or so.
  3. (Crucial Step) Switch off the AppleTV, and unplug the ATV USB Stick.
  4. Switch it on again.

It’s hacked; you’ll see a new menu item “Launcher” in Frontrow.

Installing XBMC

(Read this post to find out if you need, and how to set up MySQL on your Mac OS X.)

Before we install XBMC, let’s save some time while we are downloading XBMC later on by copying the following two large files into ~/frontrow/Documents .  The files are required for the Smart Installer we will run later on.

  1. MacOSXUpdCombo10.4.9Intel.dmg, and
  2. recovery.dmg

Select “XBMC 11.x – Eden”, from Launcher -> Downloads

Update Launcher after that.

(Good news) If you have XBMC v11 on another machine, you can simply copy the contents of the two following folders over. That saves you the trouble to re-setup everything! Just make some changes to identify the new setup.

  1. ~/frontrow/Library/Application Support/XBMC/addons/, and
  2. ~/frontrow/Library/Application Support/XBMC/userdata/

Enjoy your XBMC!

(Optional) Installing nitoTV

nitoTV lets me mount my remote afp drives at my MacBook Pro where I keep my collection of multimedia files. It is also required if you want to attach a USB hard disk to your AppleTV USB input.

Open Terminal on your computer, ssh into your AppleTV, and enter the following commands (one line at a time):

  • wget http://nitosoft.com/nitoTVInstaller_tt.zip
  • unzip nitoTVInstaller_tt.zip
  • cd “nitoTV Take Three”/
  • sudo ./installme
  • After rebooting, install & run Smart Installer in nitoTV->Settings->Install Software->Smart Installer
  • DO NOT install Perian via nitoTV. It breaks up the Intro Movie! We don’t need Perian in XBMC anyway (i think).
  • Update NitoTV (0.9.5 to 1.0)
    • (Optional) Change Hostname and Set Time Zone in NitoTV->Settings->General.
    • (Optional) Setup auto-mount remote drives in nitoTV->Network
    • (Optional) Change HDMI Output to RGB High, AppleTV->Settings->Audio & Video
    • (Optional) Make & copy Symbolic Link to Thumbnails in “userdata”.

(Optional) Installing Maintenance (for Overflow)
Firecore’s ATV Flash has a nice add-on that lets me install Overflow easily, now that Software Menu is broken and I can’t install it the old way. Unfortunately Firecore deliberately put an expiry date on the ATV Flash installer I paid for. I’m not going into their lame excuses which I find unacceptable. Since I can copy a component from my expired copy, I’m not going to waste my time looking for my registration details and contacting Firecore again for an updated installer.

  1. Right-click on aTV Flash and select “Show Package Contents”.
  2. Navigate to Contents/Resources/root/Contents/maint/
  3. Copy Maintenance.frappliance into /~frontrow
  4. ssh into your AppleTV and issue the following commands:
  • sudo mount -uw /
  • sudo mv Maintenance.frappliance /System/Library/CoreServices/Finder.app/Contents/PlugIns
  • sudo chmod 755 /System/Library/CoreServices/Finder.app/Contents/PlugIns/Maintenance.frappliance/Contents/Resources/mHelper
  • sudo chmod +s /System/Library/CoreServices/Finder.app/Contents/PlugIns/Maintenance.frappliance/Contents/Resources/mHelper
  • sudo mount -ur /
  • sudo reboot

Install Overflow, in Maintenance->Manage Plugins

(Optional) I don’t like Boxee

I don’t know about you but I never liked Boxee because its interface overwhelms me.   I could never figure out what it really offers.  Therefore I like to get rid of it from my AppleTV, by removing its logo in Frontrow and its entry in Launcher, and finally renaming Launcher to XBMC.  Voila, bye bye Boxee.

Here’s a zip file containing the replacement Launcher logo, and two files edited to reflect above.  Simply transfer them to ~/frontrow, ssh into your AppleTV, and type the following commands in Terminal.

  • sudo mount -uw /
  • sudo mv Preview.png /System/Library/CoreServices/Finder.app/Contents/PlugIns/XBMCLauncher.frappliance/Contents/Resources/
  • sudo mv Info.plist /System/Library/CoreServices/Finder.app/Contents/PlugIns/XBMCLauncher.frappliance/Contents/
  • sudo mv InfoPlist.strings /System/Library/CoreServices/Finder.app/Contents/PlugIns/XBMCLauncher.frappliance/Contents/Resources/English.lproj/
  • sudo mount -ur /
  • sudo reboot

All done.

Advertisements

XBMC 10.0 “Dharma” is Out

The long-awaited XBMC major upgrade version 10.0 (codename Dharma) is out. I’ve been using its various betas and Release Candidates in the past months and love it, and urge you to upgrade your current version 9.11 to enjoy the many improvements and enhancements.

Although one of the primary improvements to XBMC is its new Add-on system where you can now easily find and install various enhancements including Skins, it is the underlying core system that received much loving attention.  You’ll find XBMC 10 running noticeably smoother then the old, especially for .rmvb files.  The new (but optional) integration of its library into an SQL database system is also an excellent new feature for those of you who owns multiple sets of XBMC, or those of you who like to fiddle with your library.  I’ve written a simple tutorial on how to set up the new library here.

The only thing I’m not too happy with the new XBMC is that it cannot generate thumbnails for .rmvb files!  For many of us in Asia who enjoy Chinese TV shows and has a large collection of .rmvb files, it’s hard to figure out which file is the right episode we are looking for.  What a bummer!  I’ve a work-around though. Basically since XBMC 9.11 is able to generate the thumbnails, I use a local copy of XBMC 9.11 in my iMac to generate the thumbnails, then synchronizes the newly generated thumbnails to my AppleTV.  It’s not an ideal solution but that’s better than staring at a screen full of blank thumbnails.

Enjoy the new and improved XBMC!

Setting up MySQL for Mac OS X in Prep for XBMC 10 (Dharma)

A neat new feature of the work-in-progress XBMC 10, aka Dharma, is it can keep its Libraries in a MySQL database. With the database, your multiple installation of XBMC (in the living room, bedroom, your Mac etc) can all share just one central library. You no longer have to repeat adding new movies manually to all your machines. Best of all, you can stop watching a movie in one location (the living room), and continue without skipping a beat in another (the bedroom). That’s right, no more fast forwarding to find where you were.

The reference tutorial to set up this feature is here. Go read up on the relatively simple instructions.

Unfortunately the tutorial does not detail how to install MySQL for our dear Mac OS X, and here’s where I pick up the task.

  1. First, download the .dmg for your version of Mac OS X from here. I’m using “mysql-5.1.51-osx10.6-x86_64” for my iMac running on Snow Leopard[1] (Works great in Lion too).
  2. Mount the downloaded .dmg, and inside you’ll find two .pkg and one .prefPane files. Double-click to install all three files on one of your Mac that you keep running 7/24.
  3. Go to System Preferences -> MySQL, and click on “Start MySQL Server”.  You’ll also want to tick to enable the “Automatically … on Startup” option.
  4. Launch the Terminal app on your Mac and issue the following commands, one line at a time:
    • sudo /usr/local/mysql/bin/mysql
    • CREATE USER 'xbmc' IDENTIFIED BY 'xbmc';
    • CREATE database xbmc_video;
    • CREATE database xbmc_music;
    • GRANT ALL ON *.* TO 'xbmc';

Done! You now have MySQL running and ready to accept your XBMC library. Just follow the mentioned tutorial to finish up the setup.

[1] I have a G4 Mac mini which I prefer to use as the MySQL server, but I’m not able to find a PPC version of the MySQL installation package. If you know where I could download a PowerPC Mac OS X 10.5.8 Leopard compatible version of MySQL, please do let me know. Thank you.

Skip Frontrow and Boot Up Directly into XBMC

Wouldn’t it be great if you can boot your AppleTV directly into XBMC? Well, you can if you are using Launcher version 3.2.5. Simply enable the MultiFinder option, which you can find in Launcher’s Settings. Unfortunately, it’s a hidden setting that you’ll have to un-hide first. Here’s how to do it:

  1. Exit XBMC if it’s running.
  2. Launch your Terminal app and issue the following commands:

    ssh frontrow@appletv.local
    defaults write com.teamxbmc.xbmclauncher XBMCExpertMode 1

  3. Now go to Launcher -> Settings -> [enable] Multi-Finder. (Get your Apple Remote ready; your universal remote may not work temporarily until your AppleTV is rebooted.)

Once rebooted, you’ll find your AppleTV boots significantly faster and directly into XBMC!

Frontrow is still available; simply exit XBMC as per usual to use it.

Getting Chinese Lyrics in XBMC

(This is for XBMC 9.11 only; XBMC Dharma does not support Chinese songs lyrics yet.)

I had guests over for the weekend and they have never seen the AppleTV before. Impressed, I’m sure, but they were delighted to see Chinese lyrics on the big screen when XBMC was playing Chinese songs. So this post details how to get XBMC’s lyrics system going.

Firstly, please update the SVN Repo Installer if you have not already done so, XBMC -> Favorites [press the remote’s left button] -> SVN Repo Installer -> Check for updates.

Next, within the same SVN Repo Installer, select xbmc-addons-chinese -> scripts -> LRC Lyrics, and go through with the installation, and you’re done.

Setting up: If you now go to XBMC’s Script category, you will find the newly installed LRC Lyrics script inside. For other scripts that you installed via the SVN Repo Installer, you will execute them from within this Scripts category. However, XBMC’s music player has a special function reserved for lyrics, which you can put to good use, quickly calling up the LRC Lyrics script while listening to your MP3s. Here’s how to do it. XBMC -> System -> Skin -> Addon Scripts Shortcuts -> [enable] XBMC Lyrics, and browse to the this file, Scripts -> LRC Lyrics -> default.py, to set it as the “Path to Lyrics Script.”

Are you ready to listen and sing to your favorite tunes with on-screen lyrics?  Play a tune, then go into full-screen mode by pressing and holding the Play/Pause button. Now press and hold the Play/Pause button again to drop own the Media Controller, and select the Lyrics icon (it looks like a speech cloud).  Voila!  The lyrics of the playing song is fetched from the internet, and displayed scrolling for you to sing-along.  The lyrics are saved in your AppleTV so the next time you play the songs they show up immediately.

Enjoy your AppleTV; now significantly more fun with XBMC.

Oh, of course the LRC Lyrics script support English song’s lyrics.  Korean and Japanese?  Yah those too.  Cool eh?  Just don’t expect to find lyrics for unpopular songs, and sometimes you have to select from a list of identically titled songs.

Why can’t iTunes’ do the same?  😦

————

Sep 23, 2010 Addendum

A user reported that he is unable to find the “xbmc-addons-chinese” repository. I have no idea why it’s missing from his install, nor how to manually add new repository sources in the SVN Repo.  Fortunately, I know how you can install the LRC Lyrics script manually, as follow:

  1. Download the zip file from here: http://code.google.com/p/lrclyrics/downloads/list
  2. Unzip it and upload the entire folder and its content into the following folder in AppleTV:

    ~/frontrow/Library/Application Support/XBMC/scripts

  3. Go read the paragraph “Setting up” to complete the installation.

That’s it!

How to Install ATVFiles that is Compatible with AppleTV OS 3.0.2

I mentioned in my hacking guide (this one) that you should not install the version of ATVFiles you find inside Software Menu’s “3rd Party” option. That’s because the version it will install is for the older AppleTV OS 2.x, and it will cause the screen to blank out after installation.

Here’s how to have the compatible version of ATVFiles, version 1.3.0b1. It’s dead easy.

Launch the Terminal app in computer and issue the following 3 commands, one at a time.

    1. ssh frontrow@appletv.local
    2. wget http://ericiii.net/sa/appletv/ATVFiles-1.3.0b1.run
    3. sudo sh ./ATVFiles-1.3.0b1.run

When Finder restarts after installation, you’ll find a new “Files” menu item on the home screen. That’s it.

Here’s the Readme file of ATVFiles.

You may delete the script downloaded in Step 2 above with the terminal command “rm ATVFiles-1.3.0b1.run”.

Boxee Box Now Available for Pre-Order But It’s Too Expensive

Sweet!

I’ve been wanting the Boxee Box because it looks so nice.  After a couple of postponements, it’s finally available for pre-order at Amazon, for a whopping US$199! One ninety-nine was considered a reasonable price just months ago, but now we can have the (less capable) new AppleTV for just US$99, or half the price.  The Boxee Box suddenly becomes too expensive because of the new AppleTV.

You can argue that it does a lot more out of the box then the new AppleTV, but hey, it’s only a matter of time before the new AppleTV will be hackable to run the Boxee app (and more!) too.  Then the AppleTV becomes significantly more capable than the Boxee Box, at half the price.

Oh well, I wish the new AppleTV looks better than that.  Heck, it looks too much like my little US$40 WD TV mini. Why didn’t Apple make the AppleTV looks really unique and cool?  What happen to Johnathan Ive?  Let’s hope he’s too busy designing a new box for the terribly aged Mac Pro, and we can all forgive him for the lame design of the new AppleTV.

Meanwhile, buy the old AppleTV now at the SG Apple Store before it’s too late.  It’s totally hackable and comes with a spiffy hard disk to refrigerate all your prawns, for just US$160. Hey… wait, come to think about it, the very capable old AppleTV is also less expensive compared to the Boxee Box!

Boxee Box ah Boxee Box… I think your future’s not too bright even though I must give credits to your innovative two-faced remote.

%d bloggers like this: