Mac OS X Kernel Panics with RTL-SDR/RTL2832U and Analog Discovery, and a Fix

Earlier this week I fired up WaveForms in order to do some spectrum analysis of power supply rails hooked up to a Class D amplifier board using my Analog Discovery. Before I got the Analog Discovery plugged in though, my computer froze, the screen went dark, and then a kernel panic error displayed.

This was new, I’ve never had a problem before, whether or not the device was hooked up before firing up the software. I tried again, this time making sure the Analog Discovery was plugged in before launching Waveforms. Another kernel panic. I tried again, this time plugging it directly into my laptop, rather than the USB3 hub I use for convenience. Another kernel panic. I muttered and cursed and speculated that the cause was the OS X 10.11.6 update I’d recently installed, and ended up using a Windows machine for the task instead.

A few days later, I received a cheap RTL2832 USB DVB receiver I’d purchased in order to (finally) experiment with Software Defined Radio (SDR) using RTL-SDR software. My first explorations were tacked from base camps on my patio and bed. Everything worked without issue. The third time though, I was at my desk, and as soon as I launched CubicSDR my computer froze, went black, and then complained of a kernel panic.

I was peeved. I thought, perhaps that my hub was an issue, so I plugged the RTL2832 in directly. It worked. I tried a different hub. It worked again. I tried something else, it crashed.

Eventually, I figured out that the problem only occurs with a USB3 to Gigabit Ethernet adapter connected (with or without a hub involved). The adapter in question is based on the RTL8153 chip, which is used in USB3 to GigE adapters sold under many different names.

This chip is complaint with standard USB Ethernet protocols, and works with generic drivers provided by Apple in OS X 10.11 (El Capitan), and perhaps earlier versions. I’d installed the Realtek provided driver in order to take advantage of some features of the chip which might improve performance and power consumption, but not to a significant degree.

By removing the Realtek RTL8153 driver using a script provided in the installer package, I was able to revert to using the generic apple USB Ethernet driver. Now, I can use my Analog Discovery with Waveforms, my RTL-SDR with CubicSDR, and my USB3 Ethernet adapter at the same time without Kernel panics.

The cheapest/best 2012 Retina Macbook Pro SSD Upgrade

Long-time Retina MacBook Pro owners finally have some reasonable storage upgrade options. Apple has used proprietary SSD form-factors and connectors for their thin notebooks since the second generation MacBook Air was released, but they’ve always used standard storage protocols, like SATA.

I’ve long hoped that someone would come out with a simple, inexpensive adapter that would allow a commodity mSATA or m.2 SSD in my Retina MacBook Pro, but I could never find any on the market. When I needed more storage, I decided to supplement my original SSD by fill my laptops SDXC slot with a 64GB micro SDXC in a shortened microSD-SD adapter. It wasn’t exactly cheap, or fact but it was affordable, worked well enough. OWC offered an upgrade for the original SSD, but it was relatively expensive, particularly since I replaced, rather than augmented the original storage, and it was slower than the stock option.

I knew I’d outgrow the add-on card someday. I was heartened that some companies offered larger, higher-performing shortened SD cards, and that Trancend released a line of Apple upgrade SSDs to compete with OWC, but I still thought an adapter would be the best approach. I gave more than idle thought to developing and selling my own adapter, since no one else was doing it.

In the meantime, I managed to keep ~40GB free on the original SSD. Then, this past week, all that space filled up almost overnight. I’t seems that a 15 video I was editing in iMovie resulted in the creation of lots of temp files. I tried to make more space, by copying stuff to a server, and I succeeded well enough to have enough room to finish editing the video. I knew though, that it was time to find an upgrade.

The OWC options still weren’t very compelling, and my next step was to see what the market for original equipment SSDs was on eBay. The prices weren’t too bad, if I could put aside concerns about the quality and provenance of the drives. I decided to search for adapters, and didn’t find anything at first, but stumbled across a company called MaxUpgrades, that was selling Samsung EVO 840 SSDs with an rMBP adapter for non-obscene prices (Warning: BAD website).

With more digging, I found similar, if not the same, adapter cards were on Amazon for ~$20 and on eBay for ~$10. So, I ordered the adapter, a 500GB Samung 840 EVO SSD, and another adapter that would let me use the mSATA SSD with a USB3/SATA adapter cable I already had to migrate my data before installing it in my Macbook. It only took a few days for all the parts to arrive, and an hour or two to get the data copied and install the new SSD + adapter in my computer.

Everything was pretty straightforward. I think the one thing that I wasn’t sure about was how to transfer everything to the new SSD. I originally settled on using demo version of Carbon Copy Cloner, but then I realized that I could do what I needed by rebooting in recovery mode, running Disk Utility, and then restoring to the new SSD using the old SSD as the source. In addition to moving the OS install and all my data, DiskUtility automatically creates a new recovery partition.

Once that was done, I rebooted from the new SSD over USB to check to make sure it worked before shutting down and installing the new SSD, with the OS, data and everything already transferred. Once I had everything back together, it booted right up.

I’ve ordered an adapter that will let me use the old Apple SSD in place of a 2.5″ SATA drive. I’ll probably put it in a case with an integrated USB3 adapter and use it for extra speedy storage and backup.

A few things to consider before doing this yourself:

  • The mid-2012 and early-2013 retina MacBook Pros (MacBook Pro 10,1, A1398) use the SATA 6Gbps protocol to connect to SSDs. Later models use PCIe, but I don’t know if the necessary adapters exist.
  • This upgrade might create issues if you are still under the original or extended AppleCare warranty. In theory, “user replaceable” parts don’t invalidate the overall warranty in the US, but Apple might argue that their SSDs are no longer user-replaceable.
  • Opening up an rMBP and removing the SSD requires a special pentalobe screwdriver. I used this inexpensive toolkit, which has the necessary bit, and many others.
  • Cheap Chinese electronics from ebay can be a great deal, but the quality and documentation is inconsistent. Compatibility (and incompatibility) information should be taken with a grain of salt.

Animated Crashplan Icon Causes Window Server to Burn CPU on OSX

I use Crashplan for backup on OSX. Tonight I happened to notice that the OSX windowserver process was consistently burning ~25% of a CPU core on my Mac for no reason. I also noticed that Crashplan was backing up my computer at the time.

I decided to try switching the preferences for the Crashplan menu bar icon to disable animation, windowserver’s CPU utilization dropped. I turned animation back on it jumped back up.

Someone should change the default.

Quick impressions: iOS 8 on the iPhone 4s and iPad Retina (3rd generation)

I installed iOS on both my iPad Retina (3rd gen) and my iPhone 4s. I had some misgivings, since they are both at or near the bottom of the barrel in terms of supported hardware for this release. After some research though, it sounded like the iPad would do reasonably well. As for the iPhone, well, I should have a newer model in a week or two if it doesn’t work out.

My report is that both of them seem to work just fine. There may be a few more rough spots and hitches than before, but if there are, they are rare and subtle (for the most part), and they are counterbalanced by new features and refinements.

One issue on the iPhone 4s is that all the other models supported by iOS have taller displays, and so some UI is more suited to larger phones. The only place where this really stands out is when composing an email. Between the predictive text selections above the keyboard (which can be hidden, if desired) and the new UI affordance for easily switching between the email you are drafting and other messages, there isn’t much room to read the text you are writing.

There are definitely signs of memory pressure though. Tabs in Safari need to reload more (too) often and switching between some apps can take a little too long.

My advice for iPhone 4s users is to wait until they release a round of bug fixes, unless you absolutely need to try the latest and greatest.

As for the iPad, I don’t notice many differences in interaction experience from iOS 7. Safari may need to reload tabs a bit more often, but no where near as often as on the iPhone.

My advice for anyone with a 3rd generation iPad, or better is: If you want it, go for it.

If you want to know why you’d want to upgrade in the first place, there are lots of reviews of what’s new in iOS to choose from. Its worth noting though, that some features aren’t available on all devices. It looks like my devices will be left out of some of the seamless handoff as you move from a Mac to your iPad, or vice versa. One thing that just worked though, incoming phone calls show up on my iPad, and I can choose to answer them there, if I want. Not a huge deal, but convenient in some situations.