Background / Introduction
The second-generation Apple TV, a digital media receiver made and sold by Apple Inc., was unveiled during an Apple press conference on September 1, 2010. It is a small form factor network appliance designed to play digital content originating from the iTunes Store, Netflix, YouTube, Flickr, MobileMe or any Mac OS X or Windows computer running iTunes onto an enhanced-definition or high-definition widescreen television, and will accept music, video and photo streams from other iOS devices using AirPlay in 4.2. The second generation sold 250,000 in its first two weeks available.
Packaged iOS Software
Lowtide is the application running on the AppleTV. It is essentially a rewrite of the "BackRow" Application from the previous generation AppleTV to adopt the standards that Apple set for the iOS Platform. BackRow shares it's roots with the Mac "FrontRow" application, a system that provides the "ten-foot UI" that is expected from TV Set-top Boxes. This interface handles all user interaction, video playback, streaming, etc. It has been shown to run on other iOS hardware such as the iPod Touch.
Size: 23 mm (0.9 inches) (h), 98 mm (3.9 inches) (w), 98 mm (3.9 inches) (d)
Weight: 0.6 pounds
I/O: HDMI, Optical audio, 10/100 Mbps Ethernet, IR receiver, Micro-USB port
- Apple A4 Processor (K4X2G643GE, same as in iPad)
- Samsung K9LCG08U1M 8GB NAND Flash chip
- Broadcom BCM4329XKUBG 802.11n Wi-Fi/Bluetooth/FM chip (Same as in iPad)
- 256 MB RAM
- Apple 343S0479 1005 005BB
- M430 F2350 TI E03K C0GP G4
- SMSC 8710A-EZK B1023-A2 (10/100 Ethernet Transceiver)
- TXC MUGT 27.000
- TXCPCUM3 50.000
- Apple 338S0891
The AppleTV 2 has a predetermined spot on the logic board for an Apple Dock Connector. This is most probably here for Apple's in-house developer units.
The default Apple TV hardware does not allow you to use the HDMI port and the micro-USB port at the same time, as they're too closely placed. Whether appropriately modified plugs that fit will allow this to be usable is currently unknown. Adding an iPod dock to the side of the enclosure should bypass this hardware restriction, allowing both hacking and viewing.
An image of the dock connector spot can be seen in a teardown by iFixit:
Here is a link to some female dock connector parts:
Soldering to the dock terminals on pins 2 and 3 failed to get analog audio out. It's not currently known if this is a hardware or software limitation. It's been possible to produce sound out of the HDMI port, but no sound comes out of the dock pins corresponding to audio out on other iOS devices.
Pins 5, 7, 9, 14, 16, 18, 22 and 24 are connected to Ground.
How To Enter DFU Mode
There are two methods for forcing your device into DFU Mode. The first is the easiest, but if you're having difficulties (possibly from a low powered USB Hub), you may want to try the second.
Step 1: Plug your Apple TV 2G in to your computer using a MicroUSB cable (power is not required, as the Apple TV 2G can be powered via the USB Bus).
Step 2: Immediately hold down the "Menu" and "Play" buttons on the Apple IR Remote until iTunes prompts you that "an Apple TV in recovery mode has been detected".
Step 1: Connect the standard power cable to your device, then connect it to your computer using a MicroUSB cable.
Step 2: Hold down "Menu" and "Down" on the Apple IR Remote for approximately six seconds, this will cause the device to reboot. You may need to experiment with the timing, as all you'll see is a flashing light on the front of the box.
Step 3: Immediately hold down the "Menu" and "Play" buttons on the Apple IR Remote until iTunes prompts you that "an Apple TV in recovery mode has been detected".
If you're keeping an eye on the Device Manager (Windows), or using Growl (Mac), you'll see the the device initially connecting in Recovery Mode, then switching to DFU Mode.
Note: It appears that you must use the new Apple IR Remote (Aluminum) to do this. The previous (Plastic) model has one less button (the "Play" and "Select/Enter" button performed the same function), and pressing "Menu" and "Select" doesn't appear to force the device into DFU Mode.
NitoTV is a standard set of tools to enhance the functionality provided by the Apple TV Platform.
Releases of NitoTV Take 2 for the previous generation Apple TV hardware acted as an Installer for additional packages that did not come standard on the OS X 10.4-based OS, as well as provided additional Frappliances (Applications that integrated with the AppleTV's Backrow Application).
Currently, the NitoTV Take 3 release for the current generation Apple TV provides a Weather Forecast and an RSS Reader application within it's own Frappliance wrapper. Its developer has stated that these first two applications were intended as Proof-of-Concepts, as well as serve as a testbed for further development for the iOS-Based Apple TV.
- Complete Proper Headers for OS 4.1
- Sample frappliance template
- New and Improved Sample frappliance
- Dustin Howett's beigelist
- iFixit Teardown
- How to save SHSH blob
- dyldcache listing
- Buildable / linkable sample project for ATV-2 via NitoTV
PwnageTool 4.1.2 uses the limera1n exploit to jailbreak as well as auto-install Cydia, SSH and afc2.
Currently, Cydia's Graphical User Interface has not been ported to the Backrow Frappliance model, however the Command Line tools such as 'apt-get' are fully intact and functional.
As all iOS-devices are concerned, SSH exposes full access to your devices. As such, it is important to make sure that you change your root password ('alpine') as soon as possible.
Currently, the vast majority of GUI Applications provided by Cydia will not run on the AppleTV due to missing libraries and lacking a launcher. Several developers have committed to updating their Applications to run on the AppleTV and make use of the Remote as a valid Input Device.
Tests show that Applications that support a hardware keyboard (Bluetooth or the iPad Dock) can make use of the Apple IR Remote.
Greenp0ison also makes use of the limera1n exploit. RC5 is being prepared to have AppleTV support. Preview screenshots have been posted by the Chronic Dev Team showing altered menus and a software injector. Preview
- SHAtter Exploit: pod2g's SHAtter exploit was shown by MuscleNerd and posixninja as capable of jailbreaking the AppleTV. Due to George Hotz's (Geohot) release of Limera1n, it was decided that this exploit will be with held for use on future generation hardware.
- Limera1n: George Hotz (Geohot) released the limera1n exploit; capable of jailbreaking the AppleTV. The current iteration of his jailbreak solely installs afc2 and the Cydia application. As Cydia does not have a GUI that is capable of running on the AppleTV, users are incapable of installing additional packages to their AppleTVs if they use this jailbreak method. This limitation is expected to be resolved in the near future via an updated limera1n release.
We will do our best to keep this page neutral because of the controversy surrounding limera1n and the various development teams, please if you add to this page, do the same.
There have been reports that users utilizing the PwnageTool 4.1.2 Jailbreak will lose their WiFI Settings following a reboot. While these reports have been confirmed to happen, the behavior is not guaranteed for all users.
3rd Party Apple TV iOS Software
- Fire Core is a software development group that provides a standard set of tools useful to those who wish to Jailbreak their AppleTVs. They have controversially packaged the AppleTV Patchstick software that was available in conjunction with other freely available and in-house applications to release their aTV Flash application. In doing so they provided a standardized and supported experience with Jailbroken AppleTVs.
Firecore has announced that they are actively working on the development of an update to their aTV Flash application, aTV Flash black and an SDK to enable others to develop for Lowtide.
- NitoTV, a popular application for the original Apple TV. NitoTV is the first publicly disclosed Application running on the AppleTV 2.
- Plex (or rather it's developer community) has provided an experimental client to connect to the Plex Media Server application to provide a custom media browser and player on the AppleTV.
The above sample code requires Dustin Howett's beigelist frappliance. This section initially housed a change that was necessary to get the beigelist frappliance to work, with the latest updates from DHowett, the changes are no longer needed. Additional developer notes will be added to this section pending their noteworthiness.
Follow this page for any updates, it will be more inclusive of information time pending, as it arises.
Notes from nunux77
To be able to run your test application, like the NitoTV "Hello World" example, you need to install Dustin Howett's beigelist. I had some issues and do dirty fix to compile the lastest version, but you can now get directly the cydia package on NitoTV repository to save some solving time about compilation. Just follow the instruction to install NitoTV, and it will install beigelist as a dependency.
Thank a lot to Nito, Dustin and the community for your support.