davilla / atvusb-creator

Automatically exported from code.google.com/p/atvusb-creator
26 stars 53 forks source link

For those getting "Can't find patchstick.sh", something for you to try... #570

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
BACKGROUND
------------
I created my patchstick using atvusb-creator b13 on my $149 160Gb ATV1 (3.0.2).

I used the 512Mb PNY Attache USB Drive (funny enough the same one that is 
pictured in the App!!)

THE SYMPTOM
---------------
Anyway, I was having the same exact problem as many other users on this thread, 
where the stick was created successfully, attached to my ATV1 and booted.  The 
stick booted busybox with no problem, but kept failing to "find patchstick.sh", 
and then fails into starting telnetd.

[ This is where most advice to ppl with this problem has been to either 
reformat the USB and start over, or use a different drive altogether. ]

THE SOLUTION
---------------
I've found that the linux kernel cannot find the required partitions on the USB 
drive that contains the patchstick.sh script and mod files.  On my ATV, the 
internal drive partitions show up under SDA(x), and the USB stick is supposed 
to show up SDB(x).  But the sdb partitions simply didn't show up in the /dev 
tree!!

TROUBLESHOOTING
-----------------
So, on a whim, I wondered how to have BB rescan the drive so that the 
plug-n-play USB driver could refresh.  Sure enough.. just unplugging the USB 
drive and putting it back in WORKS!  I did this while you are logged into 
BusyBox on the USB through telnet.

THE STEPS
-----------
MAKE SURE YOU ARE WIRED TO THE NETWORK.. I can't be certain about this but on 
my ATV, BusyBox only recognized my wired interface (maybe fooling with lsmod, 
drivers, someone might be able to get it wireless), but I why bother when I can 
just plug the good ol' RJ45 in and get a wired IP?

1) Anyway, log in to BB as root/root.

2) Search your /dev directory and check if you see both the USB drive and ATV 
internal drive (and their partitions)
     # ls /dev/sd*        [ It should return quite a few files "sda, sda(x) .. sdb, sbd(x) .. " ]

3) If you do not see both sda and sdb device files, remove the USB drive wait 
about 5 seconds and plug it back in (if you do.. then go to step 5).

4) Wait about another 5-10 secs and repeat step 2.. if you still don't see both 
devices (and their partitions), then this tip does not work for you.  Sorry.  
If you do see both drives, you're almost done..

5) The script that gets run at boot time that failed to find the partition with 
patchstick.sh does a good job of searching for, so you'll need to run it again 
manually!  I think the script is in the /bin directory, but either way it 
should be in your path!

     # find_run_script.sh patchstick.sh

    The script will now search all mountable partitions and check for the existence of patchstick.sh and execute it, which will perform the mods necessary to make your ATV experience a much better one!  ;-)

FINAL THOUGHTS
-----------------
If this is what I think it is, I believe this USB problem can be recognized 
when you see the console messages scrolling by as BusyBox is booting when it is 
scanning the USB hub, I saw errors like this:

      ehci_hcd and address 2..
      .. error: 64/ -100
      ehci_hcd and address 3.. 
      .. error: 64/ -100
     ehci_hcd and address 4.. 

I believe this is where the problem lies, but I was able to get past it by 
forcing the USB drive to be rescanned after the OS was up and running.

A BIG THANK YOU
----------------
I wish to thank all of those fine people who put in the time to bring us this 
mod!!  Cheers!

Original issue reported on code.google.com by homer...@yahoo.com on 1 Jan 2011 at 4:34

GoogleCodeExporter commented 9 years ago
but what if you can't even login?.....
appleTV will ping me back, but not allow to telnet or ssh..

any cure to this?

thanks!

Original comment by steiner....@gmail.com on 1 Mar 2011 at 11:13