How to make the MacBook Air SuperDrive work with any Mac

Note: for Mac OS X 10.11 El Capitan and later, please see this updated post instead.

(Edited/clarified Nov. 2012, Nov. 2013, Jan 2015 and June 2016)

The story is this - a while ago I replaced the built-in optical disk drive in my MacBook Pro 17" by an OptiBay (in the meantime, there are also alternatives) which allows to connect a second harddrive, or in my case, a SSD.

To be able to continue using the SuperDrive (Apple's name for the CD/DVD read/write drive), the Optibay came with an external USB case which worked fine, but was ugly. And I didn't want to carry that around, so I left it at home and bought a shiny new MacBook Air SuperDrive (by 2012, Apple USB SuperDrive) for the office.

It just didn't occur to me that this thing could possibly not just work with any Mac, so I didn't even ask before buying. I knew that many third-party USB optical drives work fine, so I just assumed that would be the same for the Apple drive. But I had to learn otherwise. This drive only works for Macs which, in their original form, do not have an optical drive.

At this point, I started to search the net, finding hints, disassembling Mac OS X USB drivers and finally patching code in a hex editor which was the first, but ugly, solution to make the superdrive work, and gave me the information to eventually find the second, much nicer solution presented below. For those interested in the nitfy details of disassembling and hex code patching, the first approach is still documented here.

For actually making the SuperDrive work in clean and easy way, just read on (but note: while it has proven to be a quite safe method, still you'll be doing this entirely on your own risk! Using sudo and editing system files incorrectly can damage things severely!).

Apparently, Apple engineers had the need to test the superdrive with non-MacBookAir computers themselves, so the driver already has an option built-in to work on officially unsupported machines! All you need to do is enable that option, as follows:

The driver recognizes a boot parameter named "mbasd" (Mac Book Air Super Drive), which sets a flag in the driver which both overrides the check for the MBA and also tweaks something related to USB power management (the superdrive probably needs more power than regular USB allows). So just editing /Library/Preferences/SystemConfiguration/com.apple.Boot.plist and inserting the "mbasd=1″ into the "Kernel Flags" does the trick:

[For OS X 10.11 El Capitan onwards please see here for updated instructions instead!]

  1. open a terminal
  2. type the following two commands (two lines, each "sudo" starting on a new line)

    sudo plutil -convert xml1 /Library/Preferences/SystemConfiguration/com.apple.Boot.plist

    sudo pico /Library/Preferences/SystemConfiguration/com.apple.Boot.plist

  3. Insert mbasd=1 in the <string></string> value below the <key>Kernel Flags</key> (If and only if there is already something written between <string> and </string>, then use a space to separate the mbasd=1 from what's already there. Otherwise, avoid any extra spaces!). The file will then look like:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Kernel Flags</key>
    <string>mbasd=1</string>
    </dict>
    </plist>

    [Important update for users of Trim Enabler (thanks boabmatic!): Since Yosemite, installation of Trim enabler puts another flag "kext-dev-mode=1" into the com.apple.Boot.plist, and, unfortunately, also converts the .plist to binary format which shows as mostly garbage in many text editors (that's what the "plutil" line in step 2 above takes care about: it converts the file back to XML so you can edit it). Note that the system will not boot any more when trim enabler is installed, but "kext-dev-mode=1" is missing! So to apply the "mdasd=1" with trim enabler active, you need to combine both flags, such that the line will read
    <string>kext-dev-mode=1 mbasd=1</string>. For details on Yosemite and Trim Enabler, see here]
    [Update: As CyborgSam pointed out in the comments, the file might not yet exist at all on some Macs. In that case, the pico editor window will initially be empty - if so, just copy and paste the entire XML block from above].

  4. Save (press Ctrl-X, answer yes to save by pressing Y, press enter to confirm the file name).
  5. Restart your machine. That's it!

I tested this [Updated:2013-11-03] on Lion 10.7.2 up to 10.7.4, Mountain Lion up to 10.8.4 and Mavericks 10.9 so far, but I expect it to work for all Mac OS versions that came after the initial release of the Macbook Air Superdrive, which is probably 10.5.3, and is likely to work with future versions of OS X. Just let me know your experience in the comments!

BTW: the boot options plist and how it works is described in the Darwin man pages

503 thoughts on “How to make the MacBook Air SuperDrive work with any Mac”

  1. Oh, the blog deleted all the but they are fine on my terminal, it’s just the beginning that shows a few different things

  2. ok …. I had it all followed up in terminal until the paste of the XML text … since there was nothing in Sudo ( have Lion on a `Macpro where my writer stopped working ) … but when I press control-X and Y …. in need to confirm with a file name …

    is this filename i should use there ?? –> com.apple.Boot.plist

    or can you just give it any name when pressing ENTER ?

    I get cancelled now when just pressing Enter and since I have no experience in Terminal or Sudo …. I prefer not to experiment with filling in just something there ….

    Thank You for any help on this matter !!!

    Franky

    1. The sequence is:
      – you press Control-X
      – pico says: “Save modified buffer (ANSWERING “No” WILL DESTROY CHANGES) ?”
      – you press single key “Y”
      – pico says: “File name to write: com.apple.Boot.plist”
      – you press the return key to confirm that name.
      – pico quits, file is saved.

  3. The plist method worked fine on an MB Pro 13-inch (2012) where a SSD and a standard HDD in Opti-Bay are installed, using Apple Superdrive via USB.
    Tried the simple method first, but it did not work, plist did the trick. Thanks!

  4. What I really dont get, how can Apple produce such bull*”§$$% !? Looking at the new MacBooks where you cannot configure anything yourself (RAM, SSD, etc.) where does this end!? Apple needs to be careful…

  5. Btw, I am using OSX 10.8.3, and all fine!

    Another question – how to make the drive DVD region-free?

    1. I have no idea if it’s possible at all with the external superdrive. I once applied a patch I found on the internet to get “region code autoreset” for a internal superdrive a while ago, but that procedure was highly specific on the exact model, and really risky (good chance to brick the drive if something goes wrong).

  6. Thanks for the information, I thought I was going to have to take it back. Fortunately I found your blog and the instructions provided worked like a charm.

    Thanks once more for posting this.
    Dara

  7. i tried the commands as listed by copy and pasting exactly as shown above. the superdrive shows up in the system profiler, but still doesnt power up on restart. my software version is Mac OS X 10.5.8 (9L31a). Hardware iMac7,1. what am i doing wrong. and is there a way to revert to the factory settings and try again if necessary

  8. Im very happy couse im try with the first option and its done!
    my Mac is a MBP 13 Mid 2010 w/ML 10.8.4
    salutes from mexico

    sorry my english isn’t well

  9. So i was finally able to change the [com.apple.Boot.plist] file by individually changing the read/write permission on each folder (Library, Preferences, System Config) but now when I try to run “sudo pico /Library/Preferences/SystemConfiguration/com.apple.Boot.plist” in Terminal, I’m unable to type in my password for some reason. Never had that problem before I started messing with the files. I’m afraid I screwed something up when I first tried to change [com.apple.Boot.plist] using sudo pico in Terminal.(which, in hindsight, I realize I did incorrectly)

    Any suggestions? Could I repair this by verifying disk permissions in Disk Utility?

    P.S. my superdrive still wont work with my 2008 macbook pro running 10.5
    P.P.S. I have lost all respect for Apple

  10. Hi Luz,

    (ignore the above comment) (except for the part about it not working)

    So i changed the file Boot.plist file so that the second line of code reads:

    However, when I open this file in Terminal using “sudo pico” the second line reads:
    <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple$

    Any suggestions how to change that? I assume that’s why the Superdrive still doesn’t work. I know how to copy and pasted into terminal but am unsure how to re-edit the entire thing. Would really appreciate your help. This is driving me crazy.

    Thanks,
    Ian

  11. O.K. (7/3/13): the patch works fine on my iMac but not my wife’s. Both are identical vis-a-vis OS/X–10.7.5, kernel–11.4.2, boot rom–IM1010.00CC.B00 and SMC–1.52f9.

    Both were (Sudo) Pico’d per Luz’s instructions, permisions and content verified using ls -la and cat respectively. No glitches noted in either plist file.

    My Mac? the changes took and the drive works fine.

    When I PICO’d my wife’s Mac I noted that the file did not contain the Kernel and mach_kernel lines. It only had the KernelFlags after which I entered MBASD string. After rebooting the SuperDrive was not recognized, so I re-Sudo’d and added the mach_kernel lines, rebooted and again failed to get the SD recognized.

    The wife’s console reports (short form) “Superdrive not recognized by MAC”. But, both her and my consoles report the same ID for the SD, so clearly her Mac is seeing the drive, just ignoring it. The only difference between our Macs that I can see as a problem is hers is 6 months newer than mine–Nov 2010 vs May 2010. Source:http://www.appleserialnumberinfo.com.

    Tis interesting; any suggestions, anyone?

    P.S. I have a fair amount of config editing experience going back to very early MSDOS. I’ve doubled and tripple checked my work and cannot see any errors that would invalidate the plist on her Mac.

    Solving this is a priority for us as we both had 3yr ext-warranties (now expired) and in that time my MAC had its internal drive replaced three times, my wife’s two (dusty, desert climate?). And now here we are again with both drives broken. The SD is the perfect solution… if I can get it to work on her unit. (Any wonder the new desktop come sans DVD drives?)

  12. Thank you thank you thank you! Unbelievable that they don’t just make everything work with everything.

  13. Hi Luz,

    I have a Macbook Pro (mid 2008) and I’ve fallen foul of the DVD region max reset nuisance which means I can only play Region 1 DVDs. I thought about hacking but thought better of it given many people’s varied experiences.

    So my question is, will the new Apple USB Superdrive (2012/3 model) work with my older Macbook Pro assuming the enablement described in your post works? It’s just that the Apple docs say it’s only compatible with Macbook Pro’s with Retina Display which mine, given it’s vintage, doesn’t have.

    Thanks very much,

    Steve

    1. From my experience, I can say the superdrive does work on the early 2010 MBP, and the comments indicate it works on any MBP as long as it has OS X 10.5.3 or newer.

      However, the trick described in this article does not address the region code nuisance. That’s a separate story, apparently with no easy solution. For my own built-in superdrive, I went the “DVD region code autoreset” route and patched the drive firmware. That worked, but it was a very complicated process, needing a WinXP machine or VM and exactly the right combination of drive and firmware patch. Definitely risky – though I was lucky and it worked.

      1. Thanks for the prompt response Luz.

        Ok, based on your feedback and other’s I’m going to dive right in and purchase the Apple USB Superdrive.

        Will report back on my findings.

        Cheers,

        Steve

  14. Ok, so I’m reading the conflicting results and so I figured I’d ask before further proceding. I have a macbook pro 15″ late 2012 model 2.3 Ghz Quad i7 running 10.8.4.

    So when I did the terminal thing and got…

    sudo: pico/Library/Preferences/SystemConfiguration/com.apple.Boot.plist: command not found

    I didn’t want to try the update option when this was recommended. Any ideas?

  15. Got a MacBook Air mi-2012 and a brand new external superdrive which it is supposed to work with isn’t even recognised by the system it keeps spitting out the disc after 3 – 4 seconds.

    Also its a replacement superdrive (as last one was borrowed from my luggage in Amman) the previous one had no problems and worked with all discs

    OS X 10.8.4

  16. Thankyou a great deal. Suddenly on the even of a big gig my CD burner gives up. And you come to the rescue.

    Mid-2010 2.66 GHZ intel Core Duo – OS X 10,8.4

  17. Works a treat on my 2006 white iMac (iMac4,1) maxxed-out at Snow Leopard (due to only having a Core Duo, as opposed to the 64-bit Core 2 Duo, processor). Many thanks!!!

Leave a Reply

Your email address will not be published. Required fields are marked *