SATA drives not appearing

Hi. I have the bare board and the NAS case. I have 2 SATA SSD drives hooked up, and have the SATA board plugged in to the short PCI/E slot. I hooked up the power cable, and the SATA Cables. When I boot the router, it does not see any disks other than the internal EEMC. Is there anything else I need to do to get this to work? Thanks.

The SATA HDD which you hooked up were they new? In that case you will need format them and mount them (LuCI: System - Mount Points)

You can also check:


When I say that the drives do not appear, I mean they do not appear to the OS. I looked at dmesg, tried fdisk and sfdisk, and am not seeing the drives to format them.

If those hard drives do work normal on another computer/external-disk. It then could mean a few things.

  • You have not configured the hardware correctly

  • There isn’t enough power to provide to those drives

  • The SATA-controller is maybe at fault

  • The SATA-cables/power-cables are at fault

Can you elaborate on “You have not configured the hardware correctly”? That is the kind of thing I was asking about, if there is anything additional needed to get this working. I am using two SSD drives, so I suspect the power should be enough. I don’t know of any way to debug the SAT-controller itself, and it seems unlikely I would have gotten 2 bad cables from Turris. Thanks.

I can agree with you on the SATA-cables, then also the power we can put on the far-fetched conclusion.

Which leaves out…not configured correctly and SATA-controller and some other options.

What i mean with "not configured the hardware correctly is maybe not followed the procedure how to setup the whole Turris Omnia NAS. If you did exactly what has been said you should do, then it leaves only the SATA-controller.

Setup Turris NAS:

I myself do not have the NAS option, so i can only guide you through it as far as my knowledge goes.

  • The SATA-controller is a mini-pci-express. What you can also try is, confirm if that mini-pci-express slot works by experimenting with changing the 2.4 GHz wifi-card to that slot and see if it does work. If it does, then we can conclude that also the mini-pci-express slot is not at fault.

  • What you also could do if you have not done it already, try to place a FAN on that power outlet. To see if also that provides the power.

  • I assume that you already tested the SSD drives on a computer to see that those 100% work. So you can then also conclude that those are not at fault.

  • Try to place the SATA-controller on the mini-pci-express slot where the 2.4 GHz originally was installed, to see that maybe one slot provides also a bit more power to the SATA-controller.

  • Which then leaves the SATA-controller as the last one standing. I am not sure how to test that, only by putting it in another computer or so.

Thanks for the suggestions, especially the PCI/E slot. If it matters, it appears that I didn’t use the slot they used in the video. As soon as I get home, I will move the card to the slot with the sim card slot underneath.

If you install pciutils package you can run command “lspci -v”. It should show the following in somewhere on its output:

03:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 02) (prog-if 01 [AHCI 1.0])
Subsystem: ASMedia Technology Inc. Device 1060
Flags: bus master, fast devsel, latency 0, IRQ 121
I/O ports at 10020 [size=8]
I/O ports at 10030 [size=4]
I/O ports at 10028 [size=8]
I/O ports at 10034 [size=4]
I/O ports at 10000 [size=32]
Memory at e0110000 (32-bit, non-prefetchable) [size=512]
Expansion ROM at e0100000 [disabled] [size=64K]
Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities: [78] Power Management version 3
Capabilities: [80] Express Legacy Endpoint, MSI 00
Capabilities: [100] Virtual Channel
Kernel driver in use: ahci

If it is not shown then there is something wrong with the SATA controller or its not properly in the miniPCIe slot or the slot is broken.

That’s the one i was looking for. lspci did not work and i forgot each time to look on the web what package i needed to install to have the lspci command. You know what is strange?

Look at this…

As you can see that ALL my mini-pci-express lsots are filled. I have put a Samsung mSATA 850 evo 500GB. YET…look at the lspci output.

root@K-Router:~# lspci -v
00:01.0 PCI bridge: Marvell Technology Group Ltd. Device 6820 (rev 04) (prog-if 00 [Normal decode])
	Flags: fast devsel
	Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
	Prefetchable memory behind bridge: 00000000-000fffff
	Capabilities: [40] Express Root Port (Slot+), MSI 00
lspci: Unable to load libkmod resources: error -12

00:02.0 PCI bridge: Marvell Technology Group Ltd. Device 6820 (rev 04) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
	Memory behind bridge: e0000000-e02fffff
	Prefetchable memory behind bridge: 00000000-000fffff
	Capabilities: [40] Express Root Port (Slot+), MSI 00

00:03.0 PCI bridge: Marvell Technology Group Ltd. Device 6820 (rev 04) (prog-if 00 [Normal decode])
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
	Memory behind bridge: e0300000-e03fffff
	Prefetchable memory behind bridge: 00000000-000fffff
	Capabilities: [40] Express Root Port (Slot+), MSI 00

02:00.0 Network controller: Qualcomm Atheros QCA986x/988x 802.11ac Wireless Network Adapter
	Flags: bus master, fast devsel, latency 0, IRQ 120
	Memory at e0000000 (64-bit, non-prefetchable) [size=2M]
	Expansion ROM at e0200000 [disabled] [size=64K]
	Capabilities: [40] Power Management version 2
	Capabilities: [50] MSI: Enable+ Count=1/8 Maskable+ 64bit-
	Capabilities: [70] Express Endpoint, MSI 00
	Capabilities: [100] Advanced Error Reporting
	Capabilities: [140] Virtual Channel
	Capabilities: [160] Device Serial Number **<DELETED>**
	Kernel driver in use: ath10k_pci

03:00.0 Network controller: Qualcomm Atheros AR9287 Wireless Network Adapter (PCI-Express) (rev 01)
	Subsystem: Qualcomm Atheros Device 30a4
	Flags: bus master, fast devsel, latency 0, IRQ 109
	Memory at e0300000 (64-bit, non-prefetchable) [size=64K]
	Capabilities: [40] Power Management version 3
	Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
	Capabilities: [60] Express Legacy Endpoint, MSI 00
	Capabilities: [100] Advanced Error Reporting
	Capabilities: [140] Virtual Channel
	Capabilities: [160] Device Serial Number **<DELETED>**
	Capabilities: [170] Power Budgeting <?>
	Kernel driver in use: ath9k

However, look at de dmesg…

root@K-Router:~# dmesg | grep sda
[    6.792889]  sda: sda1
[    6.795629] sd 0:0:0:0: [sda] Attached SCSI removable disk
[  204.492342] Adding 4194300k swap on /dev/sda1.  Priority:-1 extents:1 across:4194300k SS

Does it work and does Turris OS detect the ssd? Yep, no problems whatsoever. Currently only used about 4 GB as swap, the rest i am trying to figure out how to spread to LXC and extroot.

Or i guess it might be a bug in lspci. So i THINK in the dmesg the SATA-controller should also be visible if it were to work.

If you put mSATA drive to the miniPCIe/mSATA hybrid slot it will not show as PCI device because the drive is not PCI/PCIe device. There won’t be any PCI/PCIe signalling but mSATA signalling.

There is a SATA controller in the SoC and mSATA slot is connecting the drive to that controller directly.

oooh i did not know that. I thought as long as a device uses a certain slot it just shows the information what device is connected…being a SATA-controller to a mSATA drive.

So does this also apply to those new pci-express SSD drives that you can put in your computer using the pci-express slot?

Success! Surprising that a PCI/E card doesn’t work in an MSATA slot . . . Thanks.

Well that is a bummer that NIC.CZ has not given us a bit more information about such conditions, or i simply have not yet read it somewhere if it does exist.

But glad to hear that it has worked out. :grin:

If it is a PCIe drive connected to PCIe slot then it will show in lspci output. PCIe is not a storage interface so premium PCIe drives use proprietary logical interface on top of PCIe and require a special kernel driver from the vendor to work as a storage device. Newer and cheaper PCIe drives use AHCI emulation or NVMe on top of PCIe to present it as a storage device to the host computer.

This should be the same card that was in the NAS perk:

In the notes it says:

  1. Mini PCI-e slot ,DO NOT compatible mSATA slot!

I think i am mixing something up. So all those slots on the Omnia are NOT mini-PCI-E?

One slot which in the video-tutorial shown by NIC.CZ where they placed the mSATA drive is NOT a mini-PCI-e but a mSATA slot?

How come they said mSATA/mini PCI Express?

Also if it is a mSATA slot, how come the 2.4 GHz wifi-card does work on that?

One of them is a hybrid slot. It can function either miniPCIe or mSATA slot. Normally it is miniPCIe slot but when you put in mSATA card it will switch to mSATA slot. There is a standardized way for the mSATA card to signal to the host computer that it wants mSATA slot.

If that is the case, how come it does not act as a miniPCIe slot when a sata-controller is put in?

Sorry, that i ask so many questions, it is just bizar to me that is so picky to see one thing yet reject another thing.

Unfortunately I cannot give you a definite answer.

I don’t know exactly why it didn’t work in the hybrid slot for Andrew and I haven’t tested my own SATA card in the hybrid slot so I cannot say if this is a single issue or wider issue. When I read about the discussion I remembered what I had earlier read about the SATA card on the seller’s site and I brought up the notice that the seller has given. Based on that I can speculate that the SATA card might have a flaw which triggers mSATA mode in the miniPCIe/mSATA hybrid slots.

Indeed, that could be the issue.

Thanks anyway for clarifying much. I learned much from what you told me.