Beginners Guide for 1.x

From AwkwardTV
Revision as of 06:04, 6 November 2007 by Simplicity (talk | contribs) (Making the Patchstick)
Jump to: navigation, search

Beginners Guide

First off let's be clear. Everyone's still learning what they're doing here and whilst I have done this procedure several times without incident, that's with my own setup. You follow this at your own risk and as with anything unauthorized and unsupported, there's a chance you might end up with a permanently broken (also known as "bricked", for obvious reasons) Apple TV. What you do here is entirely at your own risk.

--Simplicity 14:08, 5 November 2007 (CET)

Now that that's out the way, let's get started. There's a wealth of good information on the site, so I thought this might be a good place to bring everything together into a simple "how-to beginners guide", making a few assumptions as to a basic list of things everyone would like their Apple TV to be able to do. So, this page will be dedicated to very simple instructions on how to achieve the following:-

1. Unlock the Apple TV so it can be "seen" on your network.

2. Have the Apple TV use an external drive USB drive to sync and store your iTunes content seamlessly

3. Be able to copy other video formats not supported by iTunes to the Apple TV and play them using the on screen menus

4. Stop the Apple TV updating itself so you lose any of these functions

5. Remove any unwanted menu options left from the above process to make things all tidy.

Further, the goal of this guide is to achieve the above in easy to understand steps, so we must meet the following criteria:-

1. Explain each part of the process, so you know what it is you are doing

2. Never need to open the Apple TV and fiddle with its internals.

3. Keep it simple!

By the end, you should not only have an far more useful Apple TV, but also have an understanding of how it works, so that the rest of this site isn't quite as daunting.

What you need before you start

1. An Intel Mac

2. An external USB Hard Drive - I suggest about 500Gb (at time of writing, these seem to be best price/size ratio).

3. A USB Thumb Drive - 128Mb will do.

We'll also need a couple of downloads, but I will point you to these during the process.

I'm not going to cover how to do this on a PowerPC Mac or Windows. If someone would like to write a separate guide to do this, based on this one, that's fine, but I would rather not mix the procedures, as it creates confusion.

If you're not sure if your Mac is running Intel, then just click the Apple logo in the top left corner of your screen and choose the menu option About This Mac. It will tell you what processor you are running. If it begins with "Intel", regardless what it ends with, you're good. If it says anywhere "PowerPC", you cannot use this procedure.

What you will do in this process

(And why you need the above)

You might already know that when on a network, Apple computers, be they laptops or desktops, simply "appear" in your Finder. However, the Apple TV does not. It only appears in iTunes. This is because the Apple TV has most of its network systems turned off, making it pretty hard to modify to do anything other than that which Apple intended - that is, sync iTunes content. There is an "in" for us, however. The Apple TV will read the contents of a USB Drive attached to it when it thinks it is doing a specific type reboot. What we are going to do is use this back door if you will, to install a small menu option on the Apple TV that will allow us to do three things:-

1. Enable SSH. This is a network option which will then allow us to use OS X's Terminal program log into the Apple TV and make some changes. Don't fear this, it's actually pretty simple.

2. Enable AFP. This will make your Apple TV appear on your network like any other Mac, allowing us to modify files, make folders, etc.

3. Intall other menu options, which in turn allows us to achieve a couple of other niceties, too, like playing films in .avi format.

Don't fear the Terminal

As beginner as this guide is, we are going to use something that looks frightening. The Terminal. Don't worry, things will end well. ;-)

Most of the time, you control your Mac using the mouse to drag and drop files, set program options, etc. The Terminal is a way of doing this using text. For every action you can do with a file, like copy from one location to another, there's a way of doing this with the Terminal. The Terminal also provides a few more options that we'll need. You should not fear the Terminal and most of the time, you're going to just be doing copy and paste actions. You can copy the commands from this page and paste them straight into the Terminal. I will explain each command, so that if it needs any changes specific to your system, you can make them easily.

Step One: Preparation's what you need

We need the Apple TV to be in its virgin state. This means, no content and running the software it shipped with. A few months back, Apple updated the Apple TV software to include a few extra functions, like YouTube. Originally, this was not on the Apple TV as an option. This update to the controlling software (known as "Firmware") was version 1.1, known as the YouTube update. We need Apple TV to be running firmware 1.0. So, you need to go to your Apple TV, Settings then Reset Settings then choose Factory Restore. Yes, you are going to wipe your Apple TV clean, but unless you've been hacking previously, there's no need to worry, because all your content is in iTunes and will be synced back again when we're done.

So, your Apple TV will reboot and restore itself to it's virgin state with firmware 1.0. Go through the process of setting up your network and registering it with iTunes again, just like when you bought it, but turn off syncing of any content. In iTunes, sleect the Apple TV nd go through Music, Pictures, Video, etc and select the option to not sync any content under each. Then press Apply. We'll turn this all back on later.

Important Note

I do not know if Apple are now shipping Apple TVs with 1.1 firmware out the box. If you follow the Factory Restore process and still see the YouTube option, then you can't restore your Apple TV to 1.0 firmware using the above process. Perhaps someone else can help with a guide on how to do this.

If you see the YouTube option after factory restore, stop here. The rest isn't going to work.

Step Two: Making the USB Stick

Please remember: all this must be done on an Intel Mac and your Apple TV must be using Firmware 1.0. If you can see the 'YouTube' option, it's not. Turn back now!

Overview

The USB Stick we're going to use is commonly referred to a Patchstick. Fortunately for us, the hard work here has been done, so there's very little we need to do to complete what would otherwise be a pretty complicated step. What you're about to do:-

1. Download 2 files. One is the instructions and semi-automated program for making a Patchstick. The other is from Apple and is firmware 1.1 for the Apple TV. We don't need the whole thing, but the Patchstick will need a couple of files from it. This is a bit of a Catch 22 situation - we need files off the Apple TV, but can't get to the Apple TV without the files off it, so we're going to have to use the firmware from Apple.

2. Use the Terminal to enter one line that will run a series of commands

3. These commands will gather files you downloaded and files off your Intel Mac (see note below)

4. They will place them on the USB Stick in such a way that it will do what we need it to when plugged into the Apple TV.

Note

Step 3 is why you must use an Intel Mac. The Apple TV runs on an Intel Processor. If you try and use files from an older PowerPC Mac, you'll 'brick' your Apple TV. If you're not sure if your Mac is running Intel, then just click the Apple logo in the top left corner of your screen and choose the menu option About This Mac. It will tell you what processor you are running. If it begins with "Intel", regardless what it ends with, you're good. If it says anywhere "PowerPC", you cannot use this procedure.

Making the Patchstick

So, let's go.

Download the 1.1 firmware from Apple, using this link. The Patchstick needs some files off the Apple TV, but, of course, since we cannot get into the Apple TV (yet!), we can't get the files. So, we're using this download from Apple. This download is a complete disk image which is used to update your Apple TV from 1.0 to 1.1 firmware. Whilst it contains several changes from the original firmware on the Apple TV, it still has one or two files we need in lieu of being able to get them off the Apple TV itself.

When the download is finished, open the file and you will find it creates a new drive for you called OSBoot. That's all we need to do with this.

Download this file Patchstick.zip. When it has finished, double click on it, and you will see a new folder on your desktop. In here, we have the files that are going to go onto your Patchstick.

Round about now is the perfect time to plug in that USB Stick into your Mac. You will find it useful to make a note of the name of the USB Drive and if it is something that is very similar to another drive, rename it. I'm going to assume you rename the USB drive "Patchstick". You can rename the drive by selecting it in the Finder, CTRL-clicking on it and selecting the "Rename" option.

Now, open a Finder window, go to Applications and find the Utilities directory. Locate the Terminal utility and double click to run it. What we're about to do is run a file from the Patchstick download called a script. This is nothing more than a series of commands entered into the Terminal that perform various tasks. We also need to make sure that when you ruin the script you do so with the right privileges. You will no doubt have noticed that sometimes when performing tasks, like changing certain preferences, Mac OS X will ask for your password. The Terminal is no different in this respect and by prefixing any command you run with the word "sudo", you will have the Terminal ask for your password and run with administrator privileges.

You have the Terminal application open on screen. Open the Finder and locate where your Patchstick downloaded to. In Tiger, it will probably be on the desktop, so just double click on the folder on the desktop. In Leopard, it's probably in your user folder, under "Downloads". Regardless, locate the folder, open it and look for the file named createPatchstick. Click it once and drag it into the Terminal window and let go. You will see something a bit like this:-

    /Users/peter/Downloads/Patchstick/createPatchstick

This is how mine looks. Your username will change from "Peter" (probably!) and it might say Desktop rather than Downloads, depending on which version of OS X you are using, but nonetheless, the last part, "/createPatchstick" will be the same. This is all that matters for now.

The Terminal is a bit like the Finder, in so much as you are always in a directory. When you start the Terminal, you are in your home directory. We need to change to the Patchstick download directory, so change the above to read as follows by adding cd (change directory) and removing /createPatchstick from the end, as that's a file not a directory we can change to.

    cd /Users/peter/Downloads/Patchstick

This is how the Terminal sees directories or folders: separated by forward slashes.

Now we are ready to run the script. We need to do this with administrator privileges so the command must be prefixed by "sudo". We must also tell the Terminal that the file is a script to run, and we do this by adding "./" in front of the file name. So, type this into the Terminal:-

    sudo ./createPatchstick

You will be asked for your password. Enter it and press return. It is normal that you cannot see what you are typing and the cursor does not move.

The script will tell you a few things and then list your disks in what at first appears to be quite a frightening way. It's not, don't worry. Nothing has been changed at this stage. It is however, imperative that you get this next part right as in theory, you could wipe your whole hard drive with a tiny typo. So, read very carefully and double-check everything.

The list of drives will look something like this:-

    Listing available disks:
    /dev/disk0
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     Apple_partition_scheme                        *76.3 Gi    disk0
       1:        Apple_partition_map                         31.5 Ki    disk0s1
       2:                  Apple_HFS boot                    76.2 Gi    disk0s3
   /dev/disk1
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     Apple_partition_scheme                        *149.1 Gi   disk1
       1:        Apple_partition_map                         31.5 Ki    disk1s1
       2:                  Apple_HFS Patchstick              148.9 Gi   disk1s3
    /dev/disk2
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     Apple_partition_scheme                        *232.9 Gi   disk2
       1:        Apple_partition_map                         31.5 Ki    disk2s1
       2:             Apple_Driver43                         64.0 Ki    disk2s2
       3:           Apple_Driver_ATA                         64.0 Ki    disk2s3
       4:             Apple_FWDriver                         112.0 Ki   disk2s4
       5:                  Apple_HFS music                   232.9 Gi   disk2s6

It depends how many drives you have (I have more, but have removed them from the list for simplicity's sake). What you are looking for is the information about the drive named Patchstick. Now you can see why we renamed the drive in the step above. In the example above, we're interested in this section:-

/dev/disk1

       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     Apple_partition_scheme                        *149.1 Gi   disk1
       1:        Apple_partition_map                         31.5 Ki    disk1s1
       2:                  Apple_HFS Patchstick              148.9 Gi   disk1s3

As you can see, it is the part that describes the USB disk we named "Patchstick". What's most important is the /dev/disk1 part as our script wants this information so it knows which drive to turn into a Patchstick. Note that the name of the drive comes under the /dev/disk1 part, not before it. This would be a bad time to mix these up, since we're about to erase the drive and replace its contents.

Because your drive setup will certainly be different from mine, your USB Stick is most likely to have different dev/disk reference. So there is no confusion, I will use a capital N to refer to the number. You replace the N with the disk number for your Patchstick.

Make a note of the /dev/diskN reference and return to the Terminal. Press the up arrow key and the laast command executed will appear. Do not press enter yet. The last command was:-

    sudo ./createPatchstick

Change this to add the dev/diskN for your Patchstick:-

    sudo ./createPatchstick /dev/diskN

Double check this is right, then double check again. And again. Be 100% certain you have the right dev/diskN reference. You really do not want to get this wrong. When you are sure, press enter.

The script now runs. It will get data off your Mac and from its download folder and put in on your USB drive. You will be asked many times for your password. Enter it and press enter. When prompted for the location of the System/Library/Extensions folder, just press Enter, as you are running an Intel Mac and the folder is in the location the script expects it to be.

After entering your password many times, the script will tell you that your disk is unmounted and ready to patch your Apple TV. Holy hacking apples, Batman, we really are getting somewhere!

What might have gone wrong

Hopefully, the above went smoothly without error. If you ran into problems, double check you diskN reference was right, that you executed the cd command correctly and that you typed you typed your password correctly. Other than this, you're going to need to ask for help in the forums.