Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.
Updated a 2015 13" Air to the Catalina GM release. Bootrom was updated to 190.0.0.0.0 from 188.0.0.0.0 with a Lexar n600 name drive.

But have you updated by reinstalling the OEM SSD first and then reinstalling the Lexar, or have you updated directly on the Lexar?
 
What do you mean with: "Unless the nvme drive is in a 2015/17 Air or 2015 Pro, the MacBook won't enter deep sleep (hibernatemode 25)"

I thought apple hadn't included ASPM (active state power management) in Mac OS for PCI express yet
[automerge]1571213242[/automerge]

What do you mean with: "Unless the nvme drive is in a 2015/17 Air or 2015 Pro, the MacBook won't enter deep sleep (hibernatemode 25)"

I thought apple hadn't included ASPM (active state power management) in Mac OS for PCI express yet

MacOsx is not capable of properly managing the power states of 3rd party NVME drives, and don't have PCIe Active State Power Management (ASPM). For 2015+ Macbook Pro/Air models which officially supports hibernation standby 0 with hibernate 25 is the best option, Standby set to 0 allows your PC to go directly into hibernate mode putting the SSD off completely or in a low power state instead of waiting standbydelay(s) time before going into hibernate.
 
But have you updated by reinstalling the OEM SSD first and then reinstalling the Lexar, or have you updated directly on the Lexar?
I have not used an original Apple SSD in my Air since High Sierra and I did not need the original Apple SSD for the the Air to accept a bootrom update. Bootrom updates were accepted using an Intel 600p, HP ex900, and Lexar nm600. I was working with three different Airs (one 2017, two early 2015 13").

Installed the latest Catalina update and the Air's bootrom did not change from 190.0.0.0.0 with the Lexar inside.

Hope this answers your question.
 
  • Like
Reactions: alecrx
I have not used an original Apple SSD in my Air since High Sierra and I did not need the original Apple SSD for the the Air to accept a bootrom update. Bootrom updates were accepted using an Intel 600p, HP ex900, and Lexar nm600. I was working with three different Airs (one 2017, two early 2015 13").

Installed the latest Catalina update and the Air's bootrom did not change from 190.0.0.0.0 with the Lexar inside.

Hope this answers your question.

ah ok, I didn't know that bootrom updates were accepted using those.
I have a macbook air 2017 bought 3 months ago, and I immediately installed a Sabrent 2tb. And I have bootrom 188.0.0.0.0.
Do you think I need original ssd if I wanted to update the bootrom?
 
Unless the nvme drive is in a 2015/17 Air or 2015 Pro, the MacBook won't enter deep sleep (hibernatemode 25) with a non-Apple SSD which means the MacBook never writes the ram contents to the SSD and powers itself off.

Are there any way to fix that ?

Also another update for MBPr Late 2013;
Day 4: Closed the lid at 100% at 12PM, open at 10:00 AM at 65%.
Day 5: Closed the lid at 100% at 10PM, open at 11:10AM at 99%. I am very confused .
 
Are there any way to fix that ?

Also another update for MBPr Late 2013;
Day 4: Closed the lid at 100% at 12PM, open at 10:00 AM at 65%.
Day 5: Closed the lid at 100% at 10PM, open at 11:10AM at 99%. I am very confused .
Only way to fix it works be to flash a mode bottom.

The lack of battery drain may be due to low or app cpu activity.
[automerge]1571253378[/automerge]
ah ok, I didn't know that bootrom updates were accepted using those.
I have a macbook air 2017 bought 3 months ago, and I immediately installed a Sabrent 2tb. And I have bootrom 188.0.0.0.0.
Do you think I need original ssd if I wanted to update the bootrom?
Installing an os update should update the bootrom if the os update includes an update.
 
  • Like
Reactions: alecrx
Only way to fix it works be to flash a mode bottom.

The lack of battery drain may be due to low or app cpu activity.
[automerge]1571253378[/automerge]

Installing an os update should update the bootrom if the os update includes an update.

Great.
I thought that if I upgraded to Catalina using my Sabrent ssd, it wouldn't update my bootrom and corrupt the installation. Ok, thanks, I'll update immediately to Catalina ;)
 
Great.
I thought that if I upgraded to Catalina using my Sabrent ssd, it wouldn't update my bootrom and corrupt the installation. Ok, thanks, I'll update immediately to Catalina ;)

I'm using a Sabrent 1TB ssd and updated to Catalina fine. It didn't update my bootrom but the Catalina installation has been seamless.

I was going to put the Apple ssd back in and run the Catalina installation again on that to get the bootrom updated, but meh - don't think it's worth that hassle.

MBPr 15" mid-2014.
 
  • Like
Reactions: alecrx
I'm using a Sabrent 1TB ssd and updated to Catalina fine. It didn't update my bootrom but the Catalina installation has been seamless.

I was going to put the Apple ssd back in and run the Catalina installation again on that to get the bootrom updated, but meh - don't think it's worth that hassle.

MBPr 15" mid-2014.
Unless you run into issues with Catalina on a name drive, no need to fix what isn't broken :)
 
  • Like
Reactions: alecrx
Unless the nvme drive is in a 2015/17 Air or 2015 Pro, the MacBook won't enter deep sleep (hibernatemode 25) with a non-Apple SSD which means the MacBook never writes the ram contents to the SSD and powers itself off.

I am sorry if this had already been discussed. According to this


I think that there is a chance to be able to manually enable the ASPM on the NVMe device UPDATE: it didn't pan out. I was able to enable ASPM feature on the SSD using the script. BUT the IONVMeFamily driver crashes within a minute or two (depending on loads on SSD. Crashing as soon as it goes idle)

AFAIK, it requires the DirectHW.kext
(sources on github: https://github.com/osresearch/rwmem)
(GET this instead: https://github.com/sigma-1/directhw)
which should allow you to set the ASPM bit on the sabrent (or any other pci devices that supports it)

there is a bundled pkg you can install from this Link:


in the download menu you will see a version for Mojave and later.


Get pciutils bundle from here instead: http://mj.ucw.cz/download/linux/pci/

I tried installing the pkg. kext loads after reboot and I got lspci utility working

***I have yet to run the script yet***
You can then modify the aspm script from the first link to point the root complex and endpoint to the NVMe device (sabrent rocket is device:1987:5012 i believe)

The script should be able handle the rest.
The OP set his script to run on login.

Note: again, I had not tried the script yet. And DirectHW.kext is extremely dangerous as it allows direct physical memory manipulation (you can brick your device!)

I will report back as soon as I find some courage to test this further on my spare Macbook Air.


Results:

I was able to finally get a version of DirectHW (cloned from github, then make; sudo make install) that allows me to compile pciutilities form source (lspci and setpci are among these. You need the latter for the asmt script to work.)

After I got the pciutilities compiled. I edited the asmt script to point to the right endpoints and root id (I got from here from the first link: https://www.dropbox.com/s/kms6npshrqljh5a/aspm.sh?dl=0)

The script worked perfectly, and the lspci now shows the device as having ASMT enabled. However, a few moments after I ran the script the computer crashes. Traceback confirms that it was Apple's IONVMeFamily that crashed.

From the results it could be assumed that it was Apple's IONVMeFamily kext itself that did not support ASMT and not hardware related.

I suppose someone could pick up the task of patching the IONVMeFamily maybe, but one can dream :)
 

Attachments

  • Screen Shot 2019-10-17 at 3.00.34 AM.png
    Screen Shot 2019-10-17 at 3.00.34 AM.png
    554.7 KB · Views: 226
  • IMG_3405.JPG
    IMG_3405.JPG
    597 KB · Views: 225
  • Screen Shot 2019-10-17 at 3.54.03 AM.png
    Screen Shot 2019-10-17 at 3.54.03 AM.png
    356 KB · Views: 231
Last edited:
Hi!, first of all I wanna say thanks for your hard work.

My question is how do you exactly perform consupmtion test? I'm asking because I just read in Tom's Hardware website that the ADATA sx8200 pro is one of the most power efficient drives but your table shows that is not as good.

Hello,
sorry for not having posted anything in this thread for 1 month,
I had a little daughter which was born 3 weeks ago so I had better time than working on NVMe drives, sorry :)

As for the consumptions tests I did, as stated they are exclusively made on a 13" late 2013 rMBP (with the NVMe DXE driver patched in the BootRom).
Thus my consumption tests are only representative of power consumption with PCIe 2.0 speeds (not 3.0), and power consumption in a Mac (not in a Windows or Linux PC).

As mo5214 says, macOS doesn't handle APSM, so it is best to find a NVMe drive with a low "idle" power consumption (which is usually ~0,5W), unfortunately it seems we will never get the very low "sleep" power consumption of NVMe drives (~0,010W)
[automerge]1571330110[/automerge]
 
  • Like
Reactions: rando_onDaInterweb
@gilles_polysoft congratulation!!! Thank you for spending time up here helping people!

Today aka Day 6, my MBPr late 2013 battery stay strong at 81% after almost 24 hours in closed lid. I noticed that I left Notability, Safari, and Preview opened. But the battery dropped dramatically from 81% to 73% in 10 minutes on Safari (2 tabs). -> Very strange behavior.

Anyone know a good app to keep tracking on power consumption over time with graphical representation ? I am planning on do a full 30 days report (scientific-ish point of view)
 
Update on my power consumption.

I have a macbook pro retina 15 mid 2014 ish. Just put in Samsung 1 tb 970 EVO a couple of days ago using latest sintech adapter and running catalina with machine restored from time machine backup.

Had to work today ( work from home day ) so unplugged macbook pro and closed lid at 6:00 am just a few minutes ago pulled it out and opened it up.

Went 10 1/2 hours ish just dropped from 100% to 99% while sleeping.

Well first that's great but seems different than my experience the first day. I did not have many things open just safari I think.

I am liking this upgrade a lot now. Black Magic speed tests reporting like 13XX MB/s write and 15XX MS/s read speeds ( so like double the old SSD ).


Model Name: MacBook Pro

Model Identifier: MacBookPro11,3

Processor Name: Quad-Core Intel Core i7

Processor Speed: 2.5 GHz

Number of Processors: 1

Total Number of Cores: 4

L2 Cache (per Core): 256 KB

L3 Cache: 6 MB

Hyper-Threading Technology: Enabled

Memory: 16 GB

Boot ROM Version: 157.0.0.0.0

SMC Version (system): 2.19f12

Serial Number (system): C02NL2T5G3QD
 
Im looking to do this to my mid 2014 MacBook Pro 15" running High Sierra 10.13 and bottom 149.0.0.0.0.

Im a bit confused as to what OS level and rom level you HAVE to be on since most here have upgraded to Mojave/Catalina.

I need to stay on 10.13 High Sierra for my job so would my current OS/bootrom level be doable for swapping or do I HAVE to get my bootrom and/or OS higher?

If need to upgrade higher, could I possibly do a Time Machine backup of my High Sierra setup, upgrade to Catalina, swap out my SSD then restore High Sierra? Does the new bootrom stay put or would it just go back to 149.0.0.0.0 when I restored?

Thanks alot for any tips!
 
Last edited:
Im looking to do this to my mid 2014 MacBook Pro 15" running High Sierra 10.13 and bottom 149.0.0.0.0.

Im a bit confused as to what OS level and rom level you HAVE to be on since most here have upgraded to Mojave/Catalina.

I need to stay on 10.13 High Sierra for my job so would my current OS/bootrom level be doable for upgrading or do I HAVE to get my bootrom and/or OS higher?

If need to upgrade higher, could I possibly do a Time Machine backup of my High Sierra setup, upgrade to Catalina, swap out my SSD then restore High Sierra? Does the new bootrom stay would it just go back to 149.0.0.0.0 when I restored?

Thanks alot for any tips!
I recommend creating a time machine backup. Install the latest release of Catalina, swap the drive, and restore the HS backup to the nvme drive.

The bootrom will stay at Catalina.
 
  • Like
Reactions: hardax
I recommend creating a time machine backup. Install the latest release of Catalina, swap the drive, and restore the HS backup to the nvme drive.

The bootrom will stay at Catalina.
Excellent. Thank you. Thats exactly what I was hoping I could do.

I assume that Internet recovery (command - option - R) will work in this case? Since the drive will be bare, regular recovery wont work will it even with a Time Machine drive connected?
 
Last edited:
Excellent. Thank you. Thats exactly what I was hoping I could do.

I assume that Internet recovery (command - option - R) will work in this case? Since the drive will be bare, regular recovery wont work will it even with a Time Machine drive connected?

No it probably won't work unless you have a very recent macbook pro. Get a bootable catalina usb and use that to drive the time machine recovery onto the new ssd.
 
No it probably won't work unless you have a very recent macbook pro. Get a bootable catalina usb and use that to drive the time machine recovery onto the new ssd.
Yeah thats what I though. If I make the usb boot drive from a Catalina installer would you know it that would update the bootrom? I’d really like to avoid having to actually install Catalina so I can keep my original Apple ssd on Hight Sierra as a backup.
 
Edit 2: Had a bit of success but might not last. See - https://forums.macrumors.com/thread...ook-pro-ssd-to-m-2-nvme.2034976/post-27892957

Edit: it doesnt boot anymore. Just black after the chime.

Just installed the widely recommended Sabrent in my mid-2015 15” Macbook Pro.

Installed Catalina fresh.

Boot ROM Version: 194.0.0.0.0

Boot ROM Version is on Mojave before updating since I can't see any info in Catalina.

It crashes after a minute or so after boot. Gui becomes unresponsive and it goes dark. Can be several minutes until I can boot up again.

This is surprising considering mid-2015 are basically supposed to be plug and play. Or am I missing something?

the error


ds-mbp15 nvme



panic(cpu 0 caller 0xffffff7f9d80c4a7): nvme: "Fatal error occurred. CSTS=0x1 US[1]=0x0 US[0]=0x9 VID=0x1987 DID=0x5012

. FW Revision=ECFM22.4\n"@BuildRootLibraryCachescom.apple.xbsSourcesIONVMeFamilyIONVMeFamily-470.11.1IONVMeController.cpp:5258

Backtrace (CPU 0), Frame : Return Address

0xffffff81fab139e0 : 0xffffff801bb3f98b

0xffffff81fab13a30 : 0xffffff801bc76c15

0xffffff81fab13a70 : 0xffffff801bc6861e

0xffffff81fab13ac0 : 0xffffff801bae6a40

0xffffff81fab13ae0 : 0xffffff801bb3f077

0xffffff81fab13be0 : 0xffffff801bb3f45b

0xffffff81fab13c30 : 0xffffff801c2d2d89

0xffffff81fab13ca0 : 0xffffff7f9d80c4a7

0xffffff81fab13cc0 : 0xffffff7f9d7f747a

0xffffff81fab13e20 : 0xffffff801c246659

0xffffff81fab13e90 : 0xffffff801c246579

0xffffff81fab13ec0 : 0xffffff801bb811d5

0xffffff81fab13f40 : 0xffffff801bb80d01

0xffffff81fab13fa0 : 0xffffff801bae613e

Kernel Extensions in backtrace:

com.apple.iokit.IONVMeFamily(2.1)[8D30E968-D445-311C-9797-06383FCC1237]@0xffffff7f9d7e9000->0xffffff7f9d82bfff

dependency: com.apple.driver.AppleMobileFileIntegrity(1.0.5)[C01BAB4F-741F-3DDF-AC18-E4352A30AE3E]@0xffffff7f9c583000

dependency: com.apple.iokit.IOPCIFamily(2.9)[E6E855AD-A5B2-3518-A997-1384B4360708]@0xffffff7f9c6f3000

dependency: com.apple.driver.AppleEFINVRAM(2.1)[B17C6BF2-4CE9-35A9-ACDC-E070E82CDF7E]@0xffffff7f9c8dc000

dependency: com.apple.iokit.IOStorageFamily(2.1)[CAC103D2-4533-3A81-8190-D0133B4F8626]@0xffffff7f9c465000

dependency: com.apple.iokit.IOReportFamily(47)[0CAFCFA4-9263-3847-8ED0-1867D214CDD7]@0xffffff7f9c624000



BSD process name corresponding to current thread: kernel_task



Mac OS version:

19A602
 
Last edited:
Excellent. Thank you. Thats exactly what I was hoping I could do.

I assume that Internet recovery (command - option - R) will work in this case? Since the drive will be bare, regular recovery wont work will it even with a Time Machine drive connected?
Once the bootrom has been updated, you can boot with your time machine drive, use disk utility to partition the drive, and restore. I’ve done this with a mid-2014 Air.

internet recovery will also work.
 
Yeah thats what I though. If I make the usb boot drive from a Catalina installer would you know it that would update the bootrom? I’d really like to avoid having to actually install Catalina so I can keep my original Apple ssd on Hight Sierra as a backup.

Ummm I don't think so.

But use the usb catalina installer and install catalina first onto the new SSD that should work.

Then disk utility from catalina usb installer to erase SSD then proceed with time machine restore. You probably don't even need to do the erase but I would.
 
Ummm I don't think so.

But use the usb catalina installer and install catalina first onto the new SSD that should work.

Then disk utility from catalina usb installer to erase SSD then proceed with time machine restore. You probably don't even need to do the erase but I would.
Perfect. Thanks!
 
Hi guys,
I have a MacBook Pro Late-2013 13",and i want to upgrade SSD to 512GB,while im so confused which SSD can be the best choice.

I just care more about the battery usage and then speed.And sometimes i have to use applications on Windows so i want it to support installing with Windows10.

I really really need your suggestion!
Thank you sooo much!
 
gilles_polysoft
Hello As your opinion,
Is transcend 110s a better choice than the adata sx8200 pro?
Cuz following your test, the power consumption is a little bit lower but it seems that IO speed does not differ much.
I am using a 2014-mid 15inch mbp a1398 2.5hz i7 module.
Thx for replying to me.
 
Thank everyone in this topic

I would like to ask about this command line


disable hibernation by typing "sudo pmset -a hibernatemode 0 standby 0 autopoweroff 0" in the terminal


If I want to cancel this command, what I need to do?

Why I need to do that? Becuase my device is MBPr 2015, it dose support deep sleep and hibenation right?
So let get back to default is better I guess

Please correct me

Regard,
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.