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!]
- open a terminal
- 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
- 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]. - Save (press Ctrl-X, answer yes to save by pressing Y, press enter to confirm the file name).
- 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
I have a early 2009 Imac with the DVD drive not able to burn anymore. Just bought a new Apple External Superdrive for $100 and plugged in the USB cable and got an error message saying this device is not supported. After reading all the fixes for this I was ready to edit the files listed but am a bit of a novice in that I haven’t a friggin’ clue what ‘open terminal’ means. I searched all my preferences etc. for something called ‘terminal’ and can’t find it.
Where do I find these files I’m supposed to edit/add to and is it just a matter of deleting and typing in place? Also is there a chance I could screw up the entire computer so it loses data or won’t boot?
Just type “terminal” in spotlight, and you’ll find it (app with black rectangular icon).
If you follow the instructions closely, there’s not much that can go wrong.
However, it is possible to screw it up, and with a lot of bad luck you can also render your mac unbootable.
Unlikely, but possible. Still, as long as you have an up-to date time machine backup, you’ll be able to restore even in the worst case (If you don’t have a backup, get one, now! There are 1000 more reasons to have a full backup, not just using “Terminal” and “sudo”!!).
Thanks so much. Will give it a try.
I found Terminal and typed in the first Sudo Plutil command , hit enter to start typing second Sudo command line and was asked for Password. Typed that in and got lots of error messages saying couldn’t read command, couldn’t find command followed by lines of text which I didn’t understand. Was not able to get any screen that looked like the one you show to insert the other imput.
I have a MBAir with a working Apple USB Optical Drive. I also recently bought a used 17″ MBPro (2011-ish the latest version before being stupidly discontinued) and installed an SSD so I put the original spinning Drive in the Optical Drive’s position. Its a long story but I “Cloned” my MBAir’s SSD to the MBPro’s SSD making the Pro an Air….sorta. Everything has worked for months flawlessly till I plugged the Apple USB Optical Drive into the MBPro. It “doesn’t” recognize it. Shouldn’t it? The Pro should contain the Air’s flag etc…. Any idea whats up? (I’m running Mavericks and will NEVER upgrade to Yosemite.)
The MBA is the machine the external SuperDrive was designed for, so it does not need the flag (OS X figures out it is runnning on a MBA itself and allows the SuperDrive). But now the OS is cloned to a MBP17″, you need to add the flag.
Seems to work for me. Thanks a lot, you saved my day :-)
Solange
This is a great tip, thanks for this.
I only need my superdrive occasionally, when I’m writing CD Masters for production.
With the Clover bootloader I can add the mbasd command at the boot-screen. That way I’m only tweaking the power management on sessions where I need that extra juice.
Oh, interesting comment! Wouldn’t have thought a Apple Superdrive would get connected to a machine booting with Clover ;-) But then, why not?
How do I make it go onto a second line. I tried entering “enter” but then it wanted my password. Should I just hit space until I am on the next line. The first one when completed goes on to the second line but should I make the sudo start a new line? Reply soon please. Thank you
Using these instructions, I had my external SuperDrive working fine for the last 9 months. Recently, I received an automatic update to my system and now it will not work. I’ve tried to redo the instructions in this post, but it will still not work.
Specs: MacBook Pro (15-inch, Mid 2010)
OSX Yosemite: Version 10.10.3
Any help would be super appreciated!
Using Yosemite 10.10.3 and, to my shock, couldn’t use my Apple USB SuperDrive on my MBP (15″ mid 2012). I had long ago applied this patch and it had persisted through many upgrades, until now.
I followed the above instructions and upon reboot, the com.apple.Boot.plist file reverted back to its original state and created the version I made as com.apple.Boot.plist.save. I noted that com.apple.Boot.plist~orig existed as well, which was identical to what my com.apple.Boot.plist was upon reboot. So, I first converted the file com.apple.Boot.plist~orig to XML, edited it to add the patch, saved it, and converted it back to binary. I then converted the file com.apple.Boot.plist to XML, edited in the patch, saved it, and converted it back to binary. Upon reboot, it saw that they matched and my edit remained in place. My SuperDrive works again. So upon boot, the OS looks at teh com.apple.Boot.plist file and makes sure it matches the com.apple.Boot.plist~orig file. If not, it reverts to the original and saves any changes. No doubt a protection against malware…
I bought a SuperDrive for my Early 2011 13-inch MacBook Pro that I essentially just use for DVD’s and streaming, but the internal DVD drive doesn’t always work. Naturally, I didn’t find out until I got home that it doesn’t work with MacBook Pros with an internal DVD drive.
It’s running on Yosemite 10.10.3 and I was able to get the SuperDrive to work by just using the basic instructions Luz provided (two sudo lines, inserting mbasd=1 between the , reboot).
I noticed some people have been having trouble with it, so I’m not sure if it has to do with the year they were made? Just thought I’d add that it worked great for me. It’s a beautiful drive and I would have been really disappointed if I spent $80 and it didn’t work.
Thanks Luz!!!
Hi, I have a MID 2009 with Yosemite 10.10.3 and I’ve tried the “sudo nvram boot-args=”mbasd=1″” but is not working. Any Hint?
Hello,
I have a late 2011 Macbook Pro. My built in disk drive stopped working altogether recently, so I needed an external disk drive. I encountered the same dilemma after buying this brand new Superdrive!
I have yet to try this fix, but have a few questions since I am a beginner. I have never used terminal commands like this before, and it seems pretty self explanatory, so I think i can do it . How do I open a terminal? Do you think it’s a bad idea to try this on my computer with no experience?…Will I seriously damage it if I make a small error?
It’s not that complicated, and unless you type totally different commands than what the instructions say, there’s little chance things can go really wrong. Still, be careful, especially if you also have Trim enabler installed.
“Terminal” is just an app like any other, you can easily find and open it by typing the name in Spotlight search.
I have Macbook Pro with Yosemite.. This fix worked brilliantly ..Yay ..But there is an addition.. After 4 Save (press Ctrl-X, answer yes to save by pressing Y, press enter to confirm the file name).) You must actually save the changes to file. The above only saves in Command Prompt. Press control t and scroll down the list to com.apple.Boot.plist and then press return… This saves to file and returns to normal Command Prompt window. Then restart :-) Thanks so much for this post
You can take the detour via Ctrl-T and selecting the file name if you want, but it is definitely also working the way it is described in the post. There’s no such thing as “save in the command prompt”, pico always saves to files.
After Ctrl-X followed by “Yes”, pico offers to save to the original file, which is what we want in this case, so pressing return is all you need here.
Only if you want to save to another file, you would need to either manually type a filename or use Ctrl-T to select a file to save to.
Anyway, what counts is that you got it working ;-)
Thanks very much. It worked nicely for my 2008 iMac.
Just did this on an early 2009 iMac running OS X 10.10.5 and it worked perfectly.
I followed the steps exactly as they are written and didn’t have to make any changes to the filename, as one commenter asserted above.
Why, Apple, why would you make us jump through this extra hoop?
I have an older iMac OS X 10.5.8 version. Internal disc drive isn’t working. I bought this pathetic USB SuperDrive. Then, carefully reading the directions I put in the codes exactly how the directions states, but nothing is seeming to happen? I can’t even see the USB option in the Utility Disk. Please help. It’s driving me insane. Is there something internally I have to deactivate? Thanks so much!
Did you plug the Superdrive directly into a USB port of the iMac itself? I’m asking because the drive needs more power than for example the USB ports in the Apple keyboard or non-powered USB hubs can deliver, so that might be the reason why it is not working.
I wanted to import my 250 CDs to my MacBookPro 17″ 2009. I didn’t want to use the internal drive as I didn’t want to put that much wear on it. So I looked at external optical drives on the web and found one at a local store. I rushed out and purchased an Apple USB SupperDirve. Like everyone else who would have thought that it wouldn’t work with my MacBookPro. Your solution worked excellently. I would add one additional step. After you save the file with the additional code, while still in terminal pull it up again to make sure the file has been changed. this saves rebooting and having something not working if you either didn’t enter the code correctly or didn’t save the file like you intended. May thanks for this blog and the save. Regards, MARK-48
I have an older (dinosaur) Mac iBook G4 that needed to have the CD/DVD drive repaired and the repair guy was a “quack.” I had to return it to him because he disabled several things on my computer that I was able to utilize. Now I cannot burn cd’s/dvd’s, use itunes or Quick Time, and I am not sure what else. I cannot get him to repair it because I don’t trust his work. I have not had to time to bring to another repair person to fix the problem I did not have in the first place, but would like to use these programs once again. I know I have an old Mac, but want to at least use these programs until I get a new one. Can you help? Thank You.
You are the best. Big smooch. https://alicemariearcher.wordpress.com/2015/09/04/macalice-solves-it-my-mac-wont-work-with-this-superdrive/
Thanks so much for this! I had just bought a USB Superdrive on sale for $59 to use with my two Macs with broken optical drives, and I was shocked to discover that it didn’t work!
There is an easier way to deal with editing the file than using the Terminal and Pico. Download Textwranger for free and drag the file onto it (I have changed all .plist files to automatically open with TextWrangler). This worked for me even with Trim Enabler installed (apparently Trim Enabler had not changed the file to binary).
This also should work with the included TextEdit as well, but TextWrangler is better. If the file is indeed in binary, of course, and shows up as gibberish in a text editor, you’ll have to change it to text via your first Terminal command above.
I wasn’t able to save the file in place using TextWrangler, so I saved it to the desktop and dragged it over. Make sure you keep a copy of the original file somewhere (I just Duplicated it and added an “.old” extension) in case something goes wrong!
Textwrangler (or its big brother, BBedit) are indeed good tools for editing .plists – in particular because they automatically convert binary ones to text for editing. That’s the reason why you thought your file was not converted by trim enabler.
Still, for a step by step recipe, I prefer to strictly using tools that are available every OS X. After all, when you overcome initial console shyness, pico is a pretty “normal” text editor – its not so much different to insert these few characters in pico than in textwrangler, except that you need to move the cursor with the arrow keys. But of course, if you need a great text editor for more than just this tweak, TextWrangler and BBedit are great. I’m a BBedit user myself, since nearly two decades now…
I just did this and when I rebooted the mac it has gone into a spin. The Apple logo is turning into a folder with a question mark in it and then a circle with a line through it. It is cycling through these icons constantly and won’t boot. HELP!!!!
URGENT WARNING. Do NOT try the latter option (sudo nvram boot-args=”mbasd=1″) on El Capitan. I just tried it (the first option didn’t work as it would not let me access the plist file, sudo or not) and it has killed my Macbook.
It does not look like something I can come back from. Any hints on starting up to reverse the changes most welcome.
Thanks for the hint! I modified the post accordingly and added a warning for El Capitan users.
The problem is apparently OS X 10.11 “rootless” mode which prevents editing system files in general under normal operation. There are ways around, but I haven’t figured out how exactly this would work for this hack.
To revert the sudo nvram, I would try to boot the machine into single user mode (restart with Cmd+S held down).
After updating my laptop to 10.11 (“El Capitan”), I found that this change was reverted and I was left once again with the “USB Superdrive is not supported on this mac” warning.
As you mention in your update, I had to disable “System Integrity Protection” (“SIP”, aka “rootless”) in order to change the plist as you describe. I followed the instructions here: http://www.imore.com/el-capitan-system-integrity-protection-helps-keep-malware-away, changed the plist, and then re-engaged SIP when I was done. It involved multiple reboots, two of them into recovery mode, but it worked without a hitch.
Thanks again for this post.