OpenBSD on an AppleTV 1st Gen

OpenBSD on an AppleTV 1st Gen

Introduced in 2006, the Apple TV is a mediaplayer for the big screen. Whereas later generations are locked down black boxes, literally, the first generation is an extremely hackable device. It is powered by an Intel Pentium M processor and originally shipped with a customized version of MacOS X Tiger.

Hardware

The modelnumber for the first generation Apple TV is A1218 and has the following specs:

Part Description
CPU 1 GHz Intel “Crofton” Pentium M
GPU Nvidia GeForce Go 7300 with 64 MB of VRAM
Memory 256 MB of 400 MHz DDR2 SDRAM
Storage 40 or 160 GB internal HDD
Connectivity BCM94321MC dual-band 802.11b/g and 802.11 draft-n WiFi

The dimensions are 28 mm (height) x 200 mm (width) x 200 mm (depth). The original unit weighs 1,1 kilograms

Mods

CrystalHD

Broadcom BCM970012 and BCM970015 Crystal HD card boards can be installed in the Apple TVs mini PCIe slot as a replacement for the Broadcom BCM4321 wireless card. These boards enable some software to decode H.264 video content using a dedicated hardware decoder chip instead of software decoding H.264 using the main system CPU.

The standard Apple TV will handle software-decoding of SD and standard profile 720p content but the 1GHz CPU chokes on higher profile 720p and all 1080p content unless you spend many (many) hours painstakingly re-encoding videos. Even then the CPU is typically running at 90-100% during playback and you can expect dropped frames and stuttering during fast panning shots. With a Crystal HD decoder card installed and decoding offloaded from the system CPU the Apple TV is capable of playing all but the most challenging of 1080p content with the system CPU load peaking around 45-50%.

Bigger disk