I’ve had an Apple TV for a number of years now, but in the last 12 months I’ve noticed an increasing number of problems with graphical glitches – some pretty minor, such as the odd white pixel in the menu (shown above), up to the horrendous video playback problems like this:
I’ve done quite a bit of experimentation, and the most obvious problem turns out to be the culprit: Heat. I’ve always thought my Apple TV (ATV) ran a little hot, but it seems to be notably hotter when the problems arise. None of this is very scientific, so I’ve set out to see if there’s a fix to this problem.
The symptoms only manifest themselves when the ATV has been switched on for an extended period of time. Given that there’s no practical way of turning off an ATV, I imagine this is already the case for a number of folks. Before I go any further, I should mention this is an original 40Gb ATV. From reading around, I’ve discovered the later, larger capacity models are less prone to this problem.
The first noticeable problems I encounter when the ATV has been running for a while is small pixel-sized white dots appearing on the screen. The clearest place to see this is on the main menu. (see top image). Some of the pixels are static, and some move as you navigate the menu. The dots also start appearing in any videos you play, but they are less noticeable and look more like video noise (see video below):
As things get hotter, the picture corruption becomes worse. I used a temperature probe to take a temperature reading from the top-rear of the ATV’s case. This isn’t an accurate reading, but it helps to illustrate the temperature rising. As you see below, as the temperature hits around 50.3°C, the colours in the video start to break up:
As the temperature rises, the problem get’s worse:
This eventually leads to the point where the video becomes completly unwatchable, as you can see from this Avatar trailer (temperature ~50.9°C):
As you can see, the UI displays without a problem – but the video playback is unusable. I know the ATV uses the GPU to offload some of the video playback, so my best guess is that this problem is only effecting the GPU. I assume this is why visually everything gets messed up, but the ATV happily keeps on running.
As a quick (but impractical!) solution to this problem, I found placing an ice-pack on top of the ATV fixed everything. Clearly the problem was heat related, and one possibility was a either a failed fan or some other problem with airflow within the ATV … so, off the lid came.
Into the Apple TV
The Apple TV is surprisingly easy to get into. The rubber base simply peels off, and the adhesive is tacky enough to stick back on when you’re done.
Once open, it’s just a case of unplugging the hard disk (which is attached to the base).
The part that I was most interested in was the fan. A quick power up confirmed that the fan was indeed working. It’s not a particularly powerful fan, which might be part of the trouble, but it was happily shifting air.
I was curious what was under the fan, so off it came (which is pretty easy, as it’s only held in place by a piece of tape and three rubber posts. That’s when my surprise came:
At first glance, it doesn’t appear to be cooling any particular component. On closer inspection, the design of the fan and mounting seems to suggest that the fan is more of a system extract fan than a CPU or GPU cooler. The plot thickens, so I went in search of the source of all this heat:
And there we are. With the main PCB turned over (towards the camera), you can see two chips that have been smeared with light-gray heat-transfer compound. It appears the design of the ATV is not to directly cool these chips, but to have them dissipate their heat through the metal sheet that *is* the top of the ATV. You can see where the two chips meet the plate:
This certainly explains why the top of the ATV gets so hot … it’s a design feature! It also explains why my ice-pack was so effective at reducing the problems (assuming they were caused by overheating).
I was a bit disappointed to see this, as I was hoping the problem would be something obvious, like a broken fan. Instead, the best I could do was to better distribute the heat compound on both the chip and lid, and make sure everything was nice and tight when refitting. If I had a reoccurrence of the problem, I could always repeat these steps and add some more heat compound.
One final thing – when reassembling the ATV I spent most of my time trying to reattach the fan. Those little rubber posts just don’t want to go back! So here’s a little tip: Use a needle and thread to hook through the post, allowing you to pull it through into position:
No real epic solution here, other than an insight into how the ATV cools itself. Since I’ve reassembled the ATV, I’ve noticed a far cooler (to the touch) running temperature, and the problems are yet to return. I’ve also found that simply using a fan to push air over the top of the ATV works as well as the ice-pack, which could lead to a real solution. The problem seems (or seemed) to be the ATV was dissipating the heat onto the lid, but where it goes from there is entirely up to the conditions of your AV stack and room.
The good news is that it looks like there’s some life still left in my old Apple TV – and if buying a £10 DC fan keeps it alive, that sure saves me having to buy a new one!
—- UPDATE (02.05.10) —-
One week on now, and the Apple TV has certainly improved, although it’s still running hotter than usual, and I’m still experiencing the odd flash. Once again, this remaining problem goes away if I use a fan to push air over the surface of the ATV.
I’ve decided that it’s probably worth applying some more heat-transfer compound to the CPU and GPU chips. It seems by simply disturbing the existing stuff, the situation has improved. Perhaps more of it, helping distribute the heat to a wider area will be the solution.