Trouble in Promise-land

What's the first thing you do when you've got a display that has tons of interfaces and bandwidth at its disposal? Try them all at once to see if anything breaks of course. Over the course of the past few days that's exactly what I did. Unfortunately I did find a situation where things broke.

For whatever reason, if you're doing a lot of writes to the Promise Pegasus while playing music (or any other constant audio) through the Thunderbolt Display's internal speakers the audio will eventually corrupt. You can hear exactly what I'm talking about below:

TB Pegasus Audio Issue by AnandTech

This is a recording taken of me listening to music on the Thunderbolt Display (via its internal speakers) while writing a couple hundred gigabytes to the Pegasus R6. Note the introduction of what can only be described as really bad noise at the 6 second marker.

If you stop music playback and quickly resume, the problem will still be there. You have to restart the application that's using the audio codec to recover from this point. From a hardware standpoint, the codec just needs to go through an off/on (sleep/wake?) cycle to return back to normal. If you do this however and haven't stopped the transfer, the problem will creep up again. Stopping the transfer while playing back music won't fix the issue either. You have to stop the transfer and restart the music playback application for it to go away.

The issue goes deeper than that. I went out and bought a Creative Labs X-Fi Go Pro USB sound card to see if the problem stopped at the internal audio codec or extended to all USB sound devices. Unfortunately, it does even happen if you're using an external USB sound card connected to the Thunderbolt Display. Connect the same sound card directly to your Mac or use your Mac's 1/8" stereo jack and the problem goes away.

I was worried that what may appear as noise through speakers could result in data corruption over USB transfers. I ran the Pegasus write test while copying a bunch of files to an SSD attached via USB to the Thunderbolt Display and never saw any corruption on the SSD. This appears to be limited entirely to audio playback.

What's truly bizarre is I can only get the issue to appear when writing to the Pegasus, hundreds of GBs of sequential reads don't seem to produce it. Short bursts of writes don't seem to cause it either. Sending tons of data across the monitor's Gigabit Ethernet, FireWire 800 and USB ports doesn't seem to trigger it either. It appears to be an issue with the Pegasus and the Thunderbolt Display. But which device is ultimately at fault? Is it a problem with the Thunderbolt Display or the Pegasus? Ideally I'd use another Thunderbolt storage device to see if the issue remained, but I couldn't get my hands on a LaCie Little Big Disk.

I thought of something else.

First I needed to test and see if perhaps the issue was related to ultra high speed transfers. As we've already shown, the Pegasus can push as much as 1GB/s over Thunderbolt whereas none of the other bandwidth eaters come even remotely close to that. To determine if the issue was data rate invariant I wrote to the Pegasus at different speeds ranging from 480Mbps all the way up to 7.2Gbps. I tried putting SSDs in the Pegasus as well as standard mechanical hard drives. The problem remained. I got audio corruption regardless of what drives were in the Pegasus or what speed I wrote to the drives. The problem wasn't related to transfer rates.

I also took apart the Thunderbolt Display to confirm there weren't any obvious issues on the controller board (E.g. putting the Thunderbolt IC far too close to the audio controller). Nothing obvious there either.

While I was doing all of this, Apple put forth a Thunderbolt firmware update the other day, however it didn't seem to address the issue either. So I went back to my testing.

Since the problem appeared regardless of how fast (or slow) I was transferring and all I needed was another Thunderbolt storage device to vindicate either the Pegasus or the Thunderbolt Display I turned to the trusty MacBook Air.

As I mentioned in our original Pegasus review, if you have two Thunderbolt equipped Macs and a Thunderbolt cable you can actually put one of the machines in target disk mode and access its drives via Thunderbolt on the remaining Mac. You don't get super high performance but you can get around 500Mbps. Since I had reproduced the audio corruption issue at an even slower data rate I decided to give this a try.

I booted the MacBook Air in target disk mode by holding down the 't' key after turning on the machine. My MacBook Pro was connected to the Apple Thunderbolt Display and a Thunderbolt cable connected the display to the MacBook Air. This was the same setup as the Pegasus, but with the MBA in place of the Pegasus.

I wrote to the MBA just like I did the Pegasus (from a file server connected over the Thunderbolt Display's GigE, transfer rates were capped at around 500Mbps from the file server). After a couple hundred gigabytes were transferred without any audio corruption I swapped out the MBA and connected the Pegasus. I copied the same files at the same rate from the same source. After no more than 7GBs were written to the Pegasus the audio stream started to corrupt.

Based on my testing I can only conclude that the Pegasus seems to be at fault here, not the Thunderbolt Display. Given that the Pegasus was introduced prior to Apple's Thunderbolt Display it's not all that surprising that this issue made it through to production. It's unclear what the root cause is but it's hopefully something Promise can address either through firmware or a driver revision.

Update: I'm still verifying that this is indeed a "fix" but it looks like if you use a USB sound card plugged into a USB hub which is then plugged into the Thunderbolt Display then the sound corruption doesn't happen. This seems to point at noisy power as being the cause with the USB hub acting as a crude filter. It's still not ideal but this may be a workaround for Pegasus users until Promise supplies a fix.

Windows/Boot Camp Experience Dissection
Comments Locked

275 Comments

View All Comments

  • mcturkey - Friday, September 23, 2011 - link

    I guess I really don't understand why they can't just make a non-integrated docking station. Use Thunderbolt to connect it if need be, but making it part of the display seems to just add a very unnecessary expense increase if you find yourself needing a new monitor or different/more/better ports in the future.
  • Constructor - Friday, September 23, 2011 - link

    As far as I'm aware there are already multiple external PCIe slot housings and other adapters on the way which will effectively serve that purpose.

    And all of them will be usable with any Mac or PC which has suitable PCIe drivers for the respective ports, so Thunderbolt can indeed provide the long-missing "universal dock".

    The complication may be that these drivers should be able to survive hot plugging if you want to avoid having to reboot the machine every time you (dis)connect such an external box (or possibly risk a blue screen / kernel panic otherwise).

    Apple just chose to make one specific bundle product; They're leaving all the other possibilities to third parties so far. Once such alternatives are on the market, it's simply your choice.
  • SameerRamesh - Friday, September 23, 2011 - link

    My strong gut feeling suggests that apple will bring only USB 3.0 ports to all their next-gen Macs. Why?
    Intel's IVB chipsets have native USB 3.0 support. So apple needn't do any extra work there. Furthermore, not adopting an industry standard is a loss. Adding to that, they haven't gone against USB 3.0 now, have they?
    Why only USB 3.0 in the next-gen Macs? That's Apple's style!
  • Constructor - Friday, September 23, 2011 - link

    Current Intel chipsets don't have USB3 on chip, so it would take external USB3 controllers to add them to a Mac.

    The problem is that such external controllers consume precious PCIe 2 lanes which are comparatively scarce with the mobile Intel CPUs. I've not checked the data sheets, but there may simply not be enough PCIe 2 lanes with a mobile Intel CPU to supply both a full-speed-capable external USB3 controller and the Thunderbolt controller at the same time.

    Given that choice, I'd say Thunderbolt is the far better option of the two (not least since you can connect USB3 externally through it, but not vice versa).

    Desktop CPUs are less constrained, so the iMac and the Mac Pro could have both at the same time even with the current CPU generation (through PCIe plugin cards, if need be).

    But I expect Apple to make the jump with the upcoming CPUs which simply provide them on chip with nothing to sacrifice for it.
  • JasperJanssen - Saturday, September 24, 2011 - link

    Ivy Bridge generation Macs will obviously have USB3. Presumably enough of them so that there are no USB2 ports left, as Apple does not like mix and match. And when the Macs have USB3, the display will get it too.
  • quiksilvr - Friday, September 23, 2011 - link

    Can you use this Thunderbold Display on another Thunderbolt computer that isnt Mac?
  • Anand Lal Shimpi - Friday, September 23, 2011 - link

    Theoretically, yes. We won't know for sure until we see the PC implementations of Thunderbolt but according to Apple if a PC vendor were to integrate Thunderbolt and fully follow the spec the Thunderbolt Display would work.

    Take care,
    Anand
  • the goat - Friday, September 23, 2011 - link

    Somebody already solved this problem decades ago. It is called a laptop docking station. All those cables you are complaining about stay plugged into the docking station.
  • Parhel - Friday, September 23, 2011 - link

    That's what's confusing me about this too. Why is this better than, or even as good as, a docking station?

    With my docking station, I just have to put my laptop on it, and I'm connected to wired network, monitor, mouse and keyboard. I could add another monitor (2 dual link DVI ports), speakers, a printer, and I believe 4 USB devices to that.

    I have one docking station at home, one at the office. The dock for home cost me under $100, and it's compatible with both my laptop and my wife's. This seems like a step down from that.
  • HMTK - Friday, September 23, 2011 - link

    If you wan't a razor thin laptop like a MBA there's no room for a docking connector in the laptop. That's probably the main reasons why Apple makes this thing. For their customers it's good.

    Personally I prefer a docking station exactly for the reasons you stated. I would like to use a generic docking station that's not USB though because now docking stations can only be used with a limited number of machines and there's no compatibility between brands.

    Laptop makers are being forced by the EU to make compatible power bricks. Why not do the same for docking stations? Or force them to make a single connector for data and power that's also compatible with a power supply only?

Log in

Don't have an account? Sign up now