This thread is about upgrading MacBook Airs (2013-2017) & Macbook Pros (2013-2015) with new M.2 NVMe SSDs.
It was the first thread to discuss of NVMe SSD upgrades and was initited by@maxthackray which we can thank and give tribute for having started this thread.
This post has now been converted by MacRumors administrators to the present wiki post you are reading.
This wikipost was redacted by many users, including among other @gilles_polysoft, @redtomato, @tonych...
1 - What models are concerned with M.2 NVMe upgrades ?
From 2013 to 2017, Apple shipped MacBook Airs and MacBook Pro with proprietary, AHCI "blade" SSDs with a proprietary "gumstick" 12+16 pins connector.
In details:
1-a MacBook Air
The following MacBook Air support M.2 2280 NVMe SSD with an adapter :
2013-2014 MacBook Air originally shipped with 2x lanes PCIe 2.0 AHCI SSUAX SSD (speed ~700MB/s).
2015-2017 MacBook Air originally shipped with 4x lanes PCIe 2.0 AHCI SSUBX SSD (speed ~1.4GB/s).
They all support NVMe SSDs at full 4x lanes PCIe 2.0 speed (~1.4GB/s) with no size limit.
The A1466 MacBook Air 13", Mid 2012 (MacBookAir5,2) is reported to being able to both support SATA and NVMe M.2 SSD, but this need to be confirmed.
1-b MacBook Pro retina 13" and 15"
The following MacBook Pro Retina support M.2 2280 NVMe SSDs with an adapter :
The 2013-2014 15" MacBook Pro originally shipped with 2x lanes PCIe 2.0 AHCI SSUAX SSD (speed ~700MB/s).
They all support NVMe SSDs at full 4x lanes PCIe 2.0 speed (~1.4GB/s) with no size limit.
The 2015 15" MacBook Pro originally shipped with 4x lanes PCIe 2.0 AHCI SSUBX SSD (speed ~1.4GB/s).
The 2016-2017 13", 2Thunderbolt (no touchbar) MacBook Pro originally shipped with a proprietary NVMe SSD.
They all support NVMe SSDs at full 4x lanes PCIe 3.0 speed (~2.8GB/s) with no size limit.
1-c 2016 and 2017 MacBook Pro 13" and 15"
The following MacBook Pro Retina support M.2 2230 or 2242 NVMe SSD with an adapter :
Before 2017, the only possible replacement of upgrades for 2013-2017 MacBook Airs and Pros were only AHCI :
They are clearly one of the best solution to upgrade storage of 2013-2017 MacBook airs and Pros.
To get full NVMe support you need:
Support at the BootRom (firmware) is mandatory.
All MacBooks 2013-2017 originally shipped with BootRom incompatible with NVMe drives.
But it your Mac has already been running macOS BigSur or Monterey with an original Apple SSD,
then its BootRom has already been updated and is compatible with NVMe drives.
You can check if your firmware is up to date using SilentKnight.
Be sure to upgrade your BootRom to the latest version before installing the NVMe drive.
If you are planning to install a NVMe SSD but are stuck with an outdated BootRom and you no longer have access to a working Apple AHCI SSD, then you can still try MacBRTool to update the BootRom
Version supporting NVMe Boot are :
The minimum BootRom version offers NVMe Boot, but doesn't support wake-up from deep sleep on 2013-2014 models. So, always go to the latest recommended version.
3.2 Support at the OS level
You can boot natively from a NVMe drive with the following OS :
To get full NVMe energy saving features on macOS, you need either :
4 - Which NVMe SSDs are known to work?
Basically most, if not all NVMe SSDs are able to work, except a few ones with incompatible firmwares.
Always try to update NVMe SSD firmware to the latest before using.
The following models have been tested to work :
All NVMe M.2 drives do work with TRIM enabled and supported natively, without any patch.
Apple uses a proprietary "gumstick" 12+16 PCIe interface in its 2013-2017 MacBook Airs and Pro computers
On those computers, to install a M.2 NVMe drive you simply need a "M.2 to 12+16" adapter.
There are a lot of different adapters on the market, and a lot of problems went from bad wiring or bad insulation.
User @gilles_polysoft was the first to identify the need of proper isolation with kapton tape
User @rusgolder was the first to correctly identify the wiring problem with some adapters
User @gilles_polysoft confirmed the wiring differences
Since 2018 there is absolutely no doubt left : Sintech adapters are the way to go
They do provide the M.2 adapters that have proper wiring and they have correct kapton isolation
They cost 7.5$ (4$ when bought in quantities) at their website :
http://eshop.sintech.cn/ngff-m2-pcie-ssd-card-as-2013-2014-2015-macbook-ssd-p-1139.html
If you have a valid link for a valid NVMe adapter which has has proper wiring please feel free to indicate it here.
If for any reason you have an old Sintech adapter made in 2017, you have to add some tape insulation like in the following photo :
6 - Hibernation issues on 2013-2014 laptops
Before macOS Big Sur 11.0.1, the Apple-supplied BootRom didn't have a full NVMe DXE driver for 2013-2014 models.
The consequence was that “deep sleep” (hibernation) always caused kernel panics on waking from deep sleep.
Two workaround were :
Those workaround are now obsolete, because starting with macOS Big Sur 11.0.1, Apple has released BootRoms for system firmware for 2013-2014 MacBook Pro and MacBook Air models that allows hibernation.
These issues are quite rare, so don't panic! We have a 3 step plan.
If you are experiencing crashes or kernel panics especially around sleep/wake, try the following steps:
You may also try :
8 - BootCamp installation issues
During installation of Windows 10 via BootCamp, a blue screen may occur.
This was resolved by user ohnggni in post #1685, thanks to him.
Here are the two recommendations to Install BootComp with success on a MacBook Air / Pro with a NVMe SSD :
- Repair partitioning:
Terminal> "diskutil repairDisk disk0"
It will say "Repairing the partition map might erase disk0s1, proceed? (y/N)"
Press "y"
-----
If you get "An error occurred while partitioning the disk" in Mojave Boot Camp Assistant, this is a problem with disk overallocation. To fix:
If there was a problem with overallocation, you may see this line in the output: "Overallocation detected on Main device" And then another line may appear: "Fix overallocation"
Tip from: https://apple.stackexchange.com/que...rtition-w-boot-camp-assistant-on-macos-mojave
9 - Swap before returning to Apple Store
Some users have reported that Apple Stores have refused to perform a battery swap on MacBooks equipped with an upgraded NVMe SSD, and that it was necessary to reinstall the original Apple SSD before obtaining service.
Apple no longer offers service on MacBook Pros and MacBook Air from 2013 to 2017, so this issue no longer matters.
10 - Comparison of tested NVME SSD models
Here you can find Excel charts which try to give you comparison of tested models - Speed - Power consumption - NAND types (MLC, TLC, QLC).
Those charts haven't been upgraded since 2020 and won't be upgraded anymore.
You can use them as an old reference, but as of today (2024), there is no bad SSD, but if you ask, the consensus is that the Hynix P31 Gold NVMe SSD could be your best choice.
Average power Consumption (= battery life) chart
Power Efficiency chart
Performance by Price chart :
Charts are courtesy of @gilles_polysoft
It was the first thread to discuss of NVMe SSD upgrades and was initited by@maxthackray which we can thank and give tribute for having started this thread.
This post has now been converted by MacRumors administrators to the present wiki post you are reading.
This wikipost was redacted by many users, including among other @gilles_polysoft, @redtomato, @tonych...
1 - What models are concerned with M.2 NVMe upgrades ?
From 2013 to 2017, Apple shipped MacBook Airs and MacBook Pro with proprietary, AHCI "blade" SSDs with a proprietary "gumstick" 12+16 pins connector.
In details:
1-a MacBook Air
The following MacBook Air support M.2 2280 NVMe SSD with an adapter :
- A1465 - MacBook Air 11", Mid 2013 (MacBookAir6,1)
- A1465 - MacBook Air 11", Early 2014 (MacBookAir6,1)
- A1465 - MacBook Air 11", Early 2015 (MacBookAir7,1)
- A1466 - MacBook Air 13", Mid 2013 (MacBookAir6,2)
- A1466 - MacBook Air 13", Early 2014 (MacBookAir6,2)
- A1466 - MacBook Air 13", Mid 2015 (MacBookAir7,2)
- A1466 - MacBook Air 13", Mid 2017 (MacBookAir7,2)
2013-2014 MacBook Air originally shipped with 2x lanes PCIe 2.0 AHCI SSUAX SSD (speed ~700MB/s).
2015-2017 MacBook Air originally shipped with 4x lanes PCIe 2.0 AHCI SSUBX SSD (speed ~1.4GB/s).
They all support NVMe SSDs at full 4x lanes PCIe 2.0 speed (~1.4GB/s) with no size limit.
The A1466 MacBook Air 13", Mid 2012 (MacBookAir5,2) is reported to being able to both support SATA and NVMe M.2 SSD, but this need to be confirmed.
1-b MacBook Pro retina 13" and 15"
The following MacBook Pro Retina support M.2 2280 NVMe SSDs with an adapter :
- A1502 - MacBook Pro Retina 13", Late 2013 (MacBookPro11,1)
- A1502 - MacBook Pro Retina 13", Mid 2014 (MacBookPro11,1)
- A1502 - MacBook Pro Retina 13", Early 2015 (MacBookPro12,1)
- A1398 - MacBook Pro Retina 15", Late 2013 (MacBookPro11,2 - MacBookPro11,3)
- A1398 - MacBook Pro Retina 15", Mid 2014 (MacBookPro11,2 - MacBookPro11,3)
- A1398 - MacBook Pro Retina 15", Mid 2015 (MacBookPro11,4 - MacBookPro11,5)
The 2013-2014 15" MacBook Pro originally shipped with 2x lanes PCIe 2.0 AHCI SSUAX SSD (speed ~700MB/s).
They all support NVMe SSDs at full 4x lanes PCIe 2.0 speed (~1.4GB/s) with no size limit.
The 2015 15" MacBook Pro originally shipped with 4x lanes PCIe 2.0 AHCI SSUBX SSD (speed ~1.4GB/s).
The 2016-2017 13", 2Thunderbolt (no touchbar) MacBook Pro originally shipped with a proprietary NVMe SSD.
They all support NVMe SSDs at full 4x lanes PCIe 3.0 speed (~2.8GB/s) with no size limit.
1-c 2016 and 2017 MacBook Pro 13" and 15"
The following MacBook Pro Retina support M.2 2230 or 2242 NVMe SSD with an adapter :
- A1708 - MacBook Pro 13", 2016, Two Thunderbolt 3 Ports (MacBookPro13,1)
- A1708 - MacBook Pro 13", 2017, Two Thunderbolt 3 Ports (MacBookPro14,1)
2 - Why upgrading to M.2 NVMe ?
Before 2017, the only possible replacement of upgrades for 2013-2017 MacBook Airs and Pros were only AHCI :
1 - AHCI SSDs with Apple connector (used Apple SSUAx and SSUBX drives, 1st gen OWC Aura, Transcend JetDrive 820)
2 - AHCI M.2 SSDs using a M.2 adapter (Samsung 941 or Samsung 950 AHCI SSD)
But in 2017, macOS 10.13 (High Sierra) came out and it was discovered that it not only supported any tiers NVMe SSD but it also brought BootRom upgrades which enabled booting from NVMe SSD. We god 2 new way :3 - NVMe drives with Apple connector (Apple "Polaris" NVMe SSDs from 2017 5k iMacs, OWC Aura Pro X, X2 and Aura N2, Transcend JetDrive 850/855)
4 - NVMe M.2 SSDs using a M.2 adapter
M.2 NVMe SSD from the PC market are much more easy and cheap to buy, and a lot are manufactured with high quality NANDs and controllers from reliable manufacturers : Crucial/Micron, Hynix, Kioxia, Sandisk, Samsung, WD/SandiskThey are clearly one of the best solution to upgrade storage of 2013-2017 MacBook airs and Pros.
3 - OS and Firmware support
To get full NVMe support you need:
- support at the BootRom (firmware) level.
- support at the OS level.
Support at the BootRom (firmware) is mandatory.
All MacBooks 2013-2017 originally shipped with BootRom incompatible with NVMe drives.
But it your Mac has already been running macOS BigSur or Monterey with an original Apple SSD,
then its BootRom has already been updated and is compatible with NVMe drives.
You can check if your firmware is up to date using SilentKnight.
Be sure to upgrade your BootRom to the latest version before installing the NVMe drive.
If you are planning to install a NVMe SSD but are stuck with an outdated BootRom and you no longer have access to a working Apple AHCI SSD, then you can still try MacBRTool to update the BootRom
Version supporting NVMe Boot are :
Minimum BootRom version for NVMe support | Recommended BootRom version for full NVMe support | |
---|---|---|
MacBookAir 2013 to 2014 | MBA61.0103.B00 | 478.0.0.0.0 |
MacBookAir 2015 to 2017 | MBA71.0171.B00 | 489.0.0.0.0 |
MacBookPro 13" 2013 to 2014 | MBP111.0142.Bxx | 478.0.0.0.0 |
MacBookPro 13" 2015 | MBP121.0171.Bxx | 489.0.0.0.0 |
MacBookPro 15" 2013-2014 | MBP112.0142.Bxx | 478.0.0.0.0 |
MacBookPro 15" 2015 | MBP114.0177.Bxx | 489.0.0.0.0 |
The minimum BootRom version offers NVMe Boot, but doesn't support wake-up from deep sleep on 2013-2014 models. So, always go to the latest recommended version.
3.2 Support at the OS level
You can boot natively from a NVMe drive with the following OS :
- Windows from Windows 8.1 and up.
- Linux from kernels 3.3 and up.
- macOS from 10.12 (for 4k formatted drives) and 10.13 (for 512b formatted drives)
To get full NVMe energy saving features on macOS, you need either :
- to manually install Lilu, NVMEFix and SsdPmEnabler.kext
- to install OpenCore Legacy Patcher
4 - Which NVMe SSDs are known to work?
Basically most, if not all NVMe SSDs are able to work, except a few ones with incompatible firmwares.
Always try to update NVMe SSD firmware to the latest before using.
The following models have been tested to work :
- Adata NVMe SSD : SX6000, SX7000, SX8200, SX8200 Pro etc.
- Corsair NVMe SSD : MP500, MP510
- Crucial NVMe SSD : P1, P2, P3, P5, etc.
- HP NVMe SSD : EX900, EX920, EX950
- OCZ RD400
- Intel NVMe SSD : 600p, 660p, 760p
- Inland Premium (not Professional)
- MyDigital NVMe SSDs : SBX - BPX
- Kingston NVMe SSD : A1000, A2000, KC1000, etc.
- Sabrent Rocket (Phison E12 and E16 based)
- Samsung NVMe SSD : 960 Evo, 960 Pro, 970 Evo, 970 Pro, 970 Evo Plus (FW update needed), 980, 990
- SK Hynix P31 Gold, P41 Platinum
- Toshiba XG3, XG4, XG5, XG5p, XG6
- Kioxia Exceria Plus G3
- WD Black NVMe SSD v1, v2 and v3, WD Blue SN550 (FW Update mandatory), SN750, SN750 SE, SN580
- Samsung PM981
- Samsung 950 Pro
All NVMe M.2 drives do work with TRIM enabled and supported natively, without any patch.
5 - M.2 to Apple "gumstick" adapters which DO work
Apple uses a proprietary "gumstick" 12+16 PCIe interface in its 2013-2017 MacBook Airs and Pro computers
On those computers, to install a M.2 NVMe drive you simply need a "M.2 to 12+16" adapter.
There are a lot of different adapters on the market, and a lot of problems went from bad wiring or bad insulation.
User @gilles_polysoft was the first to identify the need of proper isolation with kapton tape
User @rusgolder was the first to correctly identify the wiring problem with some adapters
User @gilles_polysoft confirmed the wiring differences
Since 2018 there is absolutely no doubt left : Sintech adapters are the way to go
They do provide the M.2 adapters that have proper wiring and they have correct kapton isolation
They cost 7.5$ (4$ when bought in quantities) at their website :
http://eshop.sintech.cn/ngff-m2-pcie-ssd-card-as-2013-2014-2015-macbook-ssd-p-1139.html
If you have a valid link for a valid NVMe adapter which has has proper wiring please feel free to indicate it here.
If for any reason you have an old Sintech adapter made in 2017, you have to add some tape insulation like in the following photo :
6 - Hibernation issues on 2013-2014 laptops
Before macOS Big Sur 11.0.1, the Apple-supplied BootRom didn't have a full NVMe DXE driver for 2013-2014 models.
The consequence was that “deep sleep” (hibernation) always caused kernel panics on waking from deep sleep.
Two workaround were :
- to disable deep sleep with command
Code:
sudo pmset hibernate mode 0
- to modify firmware by adding the full NVMe DXE driver
Those workaround are now obsolete, because starting with macOS Big Sur 11.0.1, Apple has released BootRoms for system firmware for 2013-2014 MacBook Pro and MacBook Air models that allows hibernation.
7 - Troubleshooting steps for kernel panics, crashes or instability
A small number of members have reported issues around stability and kernel panics after upgrading to an aftermarket SSD.
These issues are quite rare, so don't panic! We have a 3 step plan.
If you are experiencing crashes or kernel panics especially around sleep/wake, try the following steps:
- Make sure the machine's boot ROM is the latest version
- Make sure the machine's boot ROM is the latest version.
- Make sure the machine's boot ROM is the latest version
You may also try :
- Install the latest firmware for your SSD, if there is one. Some SSD update utils install firmware using Windows so use a PC or BootCamp. Some SSD updater utils blank the drive, so make a backup of the drive.
- Clean the contacts of the SSD, motherboard and the sintech adapter using isopropyl alcohol and a qtip/cotton bud.
- Ensure the adapter and SSD are fully seated and centred. Even a slight skew or unseated drive can cause crashes and reboot issues.
- Ensure there is no corrosion on the contacts of the SSD, sintech adaptor or motherboard. Oxidized contacts can simply be cleaned with a white eraser and wiped with isopropyl alcohol.
- Track the temperature of your SSD using a utility like istat menu. Normal temps vary from drive to drive and work load but e.g. for the Rocket it should be 0c-35c. If temperature gets higher than say ~50c for a sustained time you may need to mitigate the heat by setting the fans to alway on in istat menu, or using a heatsink, copper shims or thermal pads.
- Post your sleep settings "
pmset -g
" and most recent kernel .panic file from/Library/Logs/DiagnosticReports
. Use pastebin.com and share a link on this thread. - Try the Kexts (SSDPMEnabler.kext and/or NVMEfix.kext, or install OpenCore Legacy Patcher)
- Try a different aftermarket SSD and/or adapter
- MacOS version: Mojave 10.14.6 (18G7016)
- Mac: MacBookAir7,2
- Processor: Intel Core i5 1.6 GHz
- Boot ROM Version: 426.0.0.0.0
- SSD: Sabrent Rocket 1TB (firmware version: ECFM12.3) + Sintec short adapter
- link to
pmset -g
output on pastebin.com - link to .panic file(s) on pastebin.com
- SSD speeds in BlackMagic benchmark screenshot
- SSD temperatures from istat menu screenshot
- Any steps you have tried already
8 - BootCamp installation issues
During installation of Windows 10 via BootCamp, a blue screen may occur.
This was resolved by user ohnggni in post #1685, thanks to him.
Here are the two recommendations to Install BootComp with success on a MacBook Air / Pro with a NVMe SSD :
- leave the MagSafe charger plugged in during the whole installation process (don't run on battery)
- When you see the error pop-up, "The Computer restarted unexpectedly....", please do the following :
1. Press Shift + F10 keys.
2. Launch "regedit".
3. Find this directory, "HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\ChildCompletion"
4. Once you can see "setup.exe" in the right section, double-click it and modify the value to 3.
5. Close the regedit.
6. Reboot
A video of the process is available here (zh-CN).
-----
How to fix various other issues that may occur with Boot Camp Assistant:
- Disable File Vault (will take a few hours / overnight to fully decrypt your drive)
- Turn off Time Machine and un-associate any Time Machine drives
- Purge local Time Machine snapshots:
Terminal> "tmutil thinlocalsnapshots / 9999999999999999"- Repair partitioning:
Terminal> "diskutil repairDisk disk0"
It will say "Repairing the partition map might erase disk0s1, proceed? (y/N)"
Press "y"
-----
If you get "An error occurred while partitioning the disk" in Mojave Boot Camp Assistant, this is a problem with disk overallocation. To fix:
- Shut down your Mac.
- Start and hold Cmd-S to boot into single user mode.
- Type: "fsck_apfs -oy /dev/disk0s2"
- It will ask you to confirm, type in y and press Enter.
- When finished (up to 3 minutes) type reboot and press Enter.
If there was a problem with overallocation, you may see this line in the output: "Overallocation detected on Main device" And then another line may appear: "Fix overallocation"
Tip from: https://apple.stackexchange.com/que...rtition-w-boot-camp-assistant-on-macos-mojave
9 - Swap before returning to Apple Store
Some users have reported that Apple Stores have refused to perform a battery swap on MacBooks equipped with an upgraded NVMe SSD, and that it was necessary to reinstall the original Apple SSD before obtaining service.
Apple no longer offers service on MacBook Pros and MacBook Air from 2013 to 2017, so this issue no longer matters.
10 - Comparison of tested NVME SSD models
Here you can find Excel charts which try to give you comparison of tested models - Speed - Power consumption - NAND types (MLC, TLC, QLC).
Those charts haven't been upgraded since 2020 and won't be upgraded anymore.
You can use them as an old reference, but as of today (2024), there is no bad SSD, but if you ask, the consensus is that the Hynix P31 Gold NVMe SSD could be your best choice.
Average power Consumption (= battery life) chart
Power Efficiency chart
Performance by Price chart :
Charts are courtesy of @gilles_polysoft
Attachments
Last edited: