Getting Toshiba XG3 512GB NVMe SSD to work on HP Pavilion 15-x0670nd


Last week I decided to upgrade the main SSD on my Acer Predator Helios 500 (PH517-51) to a Samsung 970 EVO Plus 1TB.
I planned to sell the original SSD, a Toshiba XG3 512GB, to a friend of mine for a fair price. He’s got a HP Pavilion Gaming 15 cx0670nd. Both laptops are fabricated and sold in 2018.
I had to include all the details so it might be a long read, thanks in advance for your efforts reading it

Upon first sight, everything seemed to work fine. We installed a fresh - vanilla - version of Windows 10 20H2.
The first boot took a while, but it usually does on a new installation. But every single boot is taking between 60 and 90 seconds.
It just shows the factory HP logo and the spinning circle-loading icon from Windows. After the aformentioned time, the laptop will launch right into the desktop and the system works as expected.

I found this (Win-Raid) after some digging, I’m not the only one having this issue with this specific model SSD.
It was clear I had to find a way to install the OZC/Toshiba RD400/XG3 drivers without Windows reverting everything back to the default Microsoft driver.

I’ve tried the following:

- Installed Win10 20H2 via an USB-boot drive. I let Windows automatically download most drivers, and checked device manager afterwards for any left over drivers.
Then I used the OCZ driver installer .exe-file provided on this forum (the sticky topic with all the recommended drivers), the first time I got BSOD in the middle of the installation.
The reset was too quick for me to be able to read the fault code. The second time around it installed without a BSOD, to follow up with another BSOD just after the installation (~ 2 min after completion).

- Read about NTLite and the ability to add a custom driver to a Windows Image. I followed the guide on this forum to add the XG3-drivers to the Win10 installer, which where provided here as well.
Next I decided to split this up into two ‘tests’, 1: I will not manually load the XG3-driver although it’s included in the installer package, but rather hope that I can manually set in in device manager later on. I didn’t establish any connection to the internet, to prevent Windows from automatically downloading and installing drivers. And 2: after 1 didn’t work, I decided to do another fresh install but this time I manually loaded the XG3-drivers during the drive-selection menu in the Windows installer. It loaded the driver without any errors, but it did take a while. I was sad to see the problem (60 - 90 second time out in boot). The device manager constantly shows 4 controllers, with the XG3-drivers it shows ‘XG3’ four times. With the default Microsoft driver it shows the SSD’s model name and number four times. Under ‘drives’ it shows the same name once. So it’s already kind of weird it shows four controllers for one physical drive. In the Windows partition manager it also shows 3 empty partitions that belong to the Toshiba XG3 drive. It does this every time I do an install, and shows up in the Windows-installer as well.

- Next I started thinking, the drive works just fine on my own laptop (Acer PH517-51), so there must be working drivers available for Windows 10. Furthermore, the driver which is used by my own laptop is automatically installed by Windows. So… In the HP-laptop Windows can’t find the correct driver automatically, but in the original one it can? Like, that doesn’t make any sense if the drivers are hosted online. Anyway, I have to admnit that I do not know a whole lot about drivers and the world that’s behind it. I though it was a good idea to put the XG3 back in my laptop and see which drivers my own laptop installs to make the drive work perfectly fine.

I get 1 controller: Standard NVM Express Controller (which hasn’t shown up in the HP-laptop)
I get 1 drive: Toshiba XG3 [model number] (with an added ‘TO’ at the back, apart from that the entry looked the same as on the HP-laptop).

So I tried to reverse engineer where this driver comes from, but I haven’t had any luck because I wanted to try another possible solution in mean time. So I installed the SSD back into the HP-laptop. It boots, it works, but it automatically resetted all drivers back to how they where configured before…

I’m kinda running out of ideas. Now I’m thinking it might be a possibility to create a custom Windows 10 installation without the default Microsoft driver and/or with the working driver from my laptop injected into it. I want to format the XG3 and use my own laptop to pre-install a completely bootable Windows 10 installation, in the hopes that when it’s reinstalled in the other laptop it will now load the correct driver for the SSD. However, I’m not sure if this is feasible and/or fault proof (it might corrupt the system later on if the driver gets automatically updated in future versions of Windows).

Thus I arrived to the grand question of the day: Has anyone here got any clue on how to get the Toshiba XG3 512GB NVMe drive working on a HP Pavilion Gaming 15 cx0670nd?

Important to know:
- All Windows 10 images are original and untouched;
- Both laptops have the same CPU, the Intel i7-8750H;
- The HP-laptop has an iGPU and a GTX1050 Ti (So Nvidia Optimus is active);
- All installations are done with a SanDisk Extreme Pro 16GB USB-drive over USB3.0.

I also contacted the HP Customer Service and they told me the only two possible solutions I have are:
1. Trying to install the version of Windows the laptop shipped with, being 1709. I tried this, but it won’t even load the XG3 in the Windows installer (infitite loading loop).
2. Use the HP Cloud Recovery Tool to download and ‘burn’ an original HP recovery image specific to this HP-laptop model. This sounds like the way to go, but I don’t have a 32GB USB-drive right now. Also, we’re (and HP) are not 100% sure this is going to work because it’s still missing the Toshiba XG3-driver (since those HP-laptops where never shipped with this model of SSD).

So it looks like I’m going to wait and see what kind of ideas, possible solutions, information and feedback you guys (and girls) have. We’re going to pick up a 32GB USB drive on monday, but there’s no certainly it will work.
If I can’t solve this on or just after monday, I’m going to have to buy the SSD back (which is not the end of the world, but kinda sad considering the effort we did getting this to work). Not sure what I’m going to do with 1,5 TB of SSD storage though . On a more serious note, I obviously wish that there’s still a fix around for us to get this XG3 to work on the HP Pavilion Gaming 15-laptop.


@Raspb3rry : Welcome to the Win-RAID Forum!
Here is my comment:

  1. All versions of Win10 have a generic MS in-box NVMe driver, which supports all existing NVMe Controllers from all Companies. So there is no reason to integrate a specific NVMe driver into the desired Win10 Image (unless the user doesn’t want to use the generic MS NVMe driver from scratch).
  2. If Win10 should not detect the NVMe Controller, the most likely reason is, that the M.2 port where the NVMe SSD is connected, doesn’t support the NVMe protocol.
    My advice: Check the M.2 ports of the HP laptop.
    According to >this< HP Community site the HP Pavillion Gaming 15 laptop has either 2 M.2 ports (1 SATA3 and 1 NVMe) or just 1 M.2 port, which shares the PCIe lanes with the SATA Controller.

Good luck!
Dieter (alias Fernando)

Thanks a bunch for your quick reply! This specific model only has one M.2 slot (M-key) and one full size SATA for the HDD.
The original SSD (can’t remember the brand) was a 256GB model, also NVMe M.2,. That’s why I initially thought there wouldn’t be any hickups along the way.
The XG3 is also recognized by the HP BIOS, it just won’t boot as quick as it should. There’s always a 60 - 90 sec delay on top of the original boot time which is like 10 - 20 seconds.

If I may ask, what are you suggesting I should do? You seem to know a lot about this topic, I read multiple of your posts regarding drivers and NTLite.
Maybe you know if it’s even possible to fix this issue, or not, which is also a valid conclusion (not the one we’re hoping for, but it’s better than trying a million things that won’t help anyway)


@Raspb3rry :
Here are my advices:
a) Regarding the boot delay I recommend to check and test different BIOS settings, especially the "CSM", "Fast Boot" and "Secure Boot" ones.
b) Regarding the usability of the XG3 SSD with the HP laptop I recommend to temporarily unplug the SATA HDD and to check whether this solves the problem.