Optical Drive Passthrough Successfully

F_L_A_S_H

Cadet
Joined
Mar 30, 2022
Messages
9
For those of us that care about passing through an Optical Drive...

Using a StarTech PEXESAT322I PCI Express SATA III Controller Card, (uses the ASMedia ASM1062 Serial ATA Controller Chipset), TrueNAS Scale 22.12.0, and an LG HL-DT-ST BED-RE WH08LS20 BluRay Burner. I can Read\Write\Play BluRays without issue in a Windows 10 VM. The only thing that doesn't seem to work, is the "Eject" command when Right-Clicking on the Drive from File Explorer. Software like DVDFab, ejects the Disk when it completes a task, and that also works without issue.

T630 TrueNAS-Scale Host_Windows10VM.jpg


Host Specs:
Dell T630
(2) Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
64GB ECC RAM
Quadro RTX 4000- Pass Through to Windows 10 VM. Note: Even the USB-C 3.1 port on the card works for all usb devices I have tried.
StarTech PEXESAT322I PCI Express SATA III Controller Card (6 Gbps) - Pass Through to Windows 10 VM
LG HL-DT-ST BD-RE WH08LS20 BluRay Burner - Pass Through to Windows 10 VM
 

PeanutPlays

Dabbler
Joined
Feb 20, 2023
Messages
13
For those of us that care about passing through an Optical Drive...

Using a StarTech PEXESAT322I PCI Express SATA III Controller Card, (uses the ASMedia ASM1062 Serial ATA Controller Chipset), TrueNAS Scale 22.12.0, and an LG HL-DT-ST BED-RE WH08LS20 BluRay Burner. I can Read\Write\Play BluRays without issue in a Windows 10 VM. The only thing that doesn't seem to work, is the "Eject" command when Right-Clicking on the Drive from File Explorer. Software like DVDFab, ejects the Disk when it completes a task, and that also works without issue.

View attachment 62703

Host Specs:
Dell T630
(2) Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz
64GB ECC RAM
Quadro RTX 4000- Pass Through to Windows 10 VM. Note: Even the USB-C 3.1 port on the card works for all usb devices I have tried.
StarTech PEXESAT322I PCI Express SATA III Controller Card (6 Gbps) - Pass Through to Windows 10 VM
LG HL-DT-ST BD-RE WH08LS20 BluRay Burner - Pass Through to Windows 10 VM
Could you walk me through how you did your SATA pass through? I'm trying to achieve the exact same thing and no amount of searching through the TrueNAS docs is giving me anything useful.
 

F_L_A_S_H

Cadet
Joined
Mar 30, 2022
Messages
9
Could you walk me through how you did your SATA pass through? I'm trying to achieve the exact same thing and no amount of searching through the TrueNAS docs is giving me anything useful.
Peanut,
What part are you getting hung up on?

At a High-Level, assuming you have met the hardware requirements for virtualization....
I am using PCI Passthrough in order to pass the PCI SATA Controller (hyperlinked above) through to the VM. My BlueRay player is connected to the controller via a Sata cable.

I don't necessarily mind writing a step-by-step document, but I think they key information is listed above. It may be more helpful to simply ask what part of this are you hung up on. I'm still learning, so please don't take this as me brushing you off... do you know how to list the devices on your machine using the shell and the lspci command? The device address is necessary for passthrough. In this case, what you're really passing through is the PCI Sata Controller, so what you want to look for with the lspci command is the address of the PCI Sata Controller. If you've passed the controller through to the VM, then the VM should see the controller. I had to install the drivers for the controller (on StarTech's website), and Windows found the BlueRay burner and installed the drivers for it automatically.

Does any of this help, or am I misunderstanding something?

Here is the address of the controller (inside the red box) installed on my machine... yours will likely be a different address.
pci_sata_controller_address.png
 
Last edited:

PeanutPlays

Dabbler
Joined
Feb 20, 2023
Messages
13
Peanut,
What part are you getting hung up on?
I was getting hung up on trying to pass through my motherboard's sata controller. I ended up moving both the drives to a PCI SATA expansion card and got them to go through just fine!
 

Basserra

Dabbler
Joined
Sep 21, 2020
Messages
28
I was getting hung up on trying to pass through my motherboard's sata controller. I ended up moving both the drives to a PCI SATA expansion card and got them to go through just fine!
Glad you got it working for you! I just wanted to add that many onboard sata controllers are through the PCH or linked to something else, so you would need to passthrough everything linked to it at the same time, which CANNOT be done for some vital components that may be linked to it.
lspci -v & lspci -vv will show you more information, and the passthrough part in question should be in its own "IOMMU group #" otherwise you will have to passthrough everything in the same group #.
 

PeanutPlays

Dabbler
Joined
Feb 20, 2023
Messages
13
which CANNOT be done for some vital components that may be linked to it.
That's where I was getting hung up. 4 of the drives in the pool were also in the Mobo SATA controller.

I guess TrueNAS wasn't willing to give up control of something it needed to run itself.
 

jadesse

Dabbler
Joined
Jan 20, 2023
Messages
10
That's where I was getting hung up. 4 of the drives in the pool were also in the Mobo SATA controller.

I guess TrueNAS wasn't willing to give up control of something it needed to run itself.
Did you use the same SATA Controller as above or something different. Trying to do the same thing & it does make sense that truenas will not pass-through with motherboards controller.
 

jadesse

Dabbler
Joined
Jan 20, 2023
Messages
10
Well, I went ahead and installed my card. After I restarted my server went into the shell. With the "camcontrol devlist" I do see my optical drive and new hard drive listed. However, when I try to add a pci pass thru device for my VM Win10 no devices are listed. Yes, my motherboard does support virtualization and it is enabled. So now what?
 

F_L_A_S_H

Cadet
Joined
Mar 30, 2022
Messages
9
What version of TrueNAS are you running? TrueNAS Core or Scale?

I *think* camcontrol is a FreeBSD command (TrueNAS Core). TrueNAS Scale, runs on Debian Linux.
 

jadesse

Dabbler
Joined
Jan 20, 2023
Messages
10
Currently on Core 13.0.

I can see everything in the shell. I tried installing the drivers for my card (PEXESA322I) in my VM. However, the card is not listed in device manager.

 
Top