Add SATA to the Jetson Nano

Is it possible to somehow add SATA to the Jetson Nano? I’d like to attach at least one SATA drive to the board. Are there M.2 Key E adapters or is it possible to use the UPHY PCI Express lanes?

Hi relikt-su, the easiest way would be with a USB3 SATA dongle. But if you require PCIe, here is an (untested) M.2 Key-E to Mini-PCIe adapter that you could in theory use: https://www.amazon.com/NGFF-Mini-PCI-Adapter-Cable/dp/B07JFYSNVL

I wasn’t really able to find many other relevant adapters for M.2 Key-E. There are Mini-PCIe SATA interfaces available, however. We haven’t tried this setup ourselves, but perhaps it is possible.

The more reliable and robust option would be to use an aftermarket carrier for Jetson Nano that has SATA or M.2 NVME available for SSD, like Auvidea’s JN30 carrier board.

179 euros plus VAT so call it 230, then you have to buy the Nano itself so let’s make that 310 euros. So now we’re getting quite close to the price of a full on Jetson TX2 which has double the Cuda cores, and they’re Pascal not Maxwell, double the RAM, twice the ARM performance, SATA and WIFI built in.

I get that Nvidia wanted to gimp the Nano by not putting an M.2 SSD slot on it but it’s a real shame. SD cards are just not a reliable option.

vegabook, the absence of an M.2 Key M wasn’t an intentional design decision to position particular products within in the product family. M.2 Key M’s require significant real estate on the board whereas the E Key is smaller and was able to fit. Others have also had success with USB 3.0 to SATA dongles (the first suggestion in my post above), of which there are many available on the market for under $10 USD. Thanks.

Can this module fit into the Jetson nano?
If the answer is yes, how to flash the image to this SSD?
Thanks in advance if any reply.

https://www.advantech.tw/products/6b276615-6f7e-44f8-a166-7ca8c40405f1/sqf-cm3-710/mod_fcfbd952-5952-43fb-9d89-28b9a0498775

Thanks for sharing this, I haven’t seen a Key-E NVME yet. It appears OK size, I will be interested to try it. The Nano devkit’s Key-E is one lane PCIe (this is x2), so will have to see if it works as mounted storage. I do not believe booting from NVME is supported as of yet.

If you are able to try it, let us know how it goes!

Very neat. Please let me know if this works, is decent flash, and supports features like discard/trim. If it does, /boot is the only thing I am leaving on my microsd.

I have tried this with the DeLock M2E to mini pci-e module which looks very similar to the one linked here and that does not seem to work. The system only outputs 640x480 with the nvidia logo and appears to be in a boot loop. I tried hooking up rs232 but there is no output from the kernel which makes me think there’s a much lower level issue with this. If anybody has any ideas on how to debug this to see what the issue is that would be nice.

One reason that crossed my mind is that the jetson might be trying to boot from it but there is nothing on there. This will be hard to fix as I have no way to actually flash anything onto this drive. I have no other means of accessing this msata drive. I might buy a USB msata board to try this.
I did try to “hotswap” the drive after booting which seemed to have no effect. Nothing was logged by the kernel either.

Another reason might be that the hardware is simply incompatible with this setup… in which case… we’re out of luck :(

Hi,
Have you tried this? Any luck?

Hi JSP,

I have called the branch office of the company for the availability of this module.
The reply is: The model I posted is dis-continued, a new model will come out in July this year.
I will give them a call again in the beginning of July to check whether the new model is announced or not,
and let you guys be informed if available.

With kind regards,
jppang

Hi Jppang, have you given the call this July? Do you have any new news?
Any info about the gadget will be wellcomed

Kind regards
Inaki

Hi,
Just an update.

  1. I have contacted Advantech India for the SSD. It is available but 30 days for delivery. So I have not ordered

  2. I have bought this, https://www.amazon.com/NGFF-Mini-PCI-Adapter-Cable/dp/B07JFYSNVL - It is working with mini PCE SSD. But Nano carrier board is exposing one lane of PCIe bus and this adaptor supports first generation of PCIe. So the reading and writing speed is not good, slight improvement compared to microSD.

  3. I have tried with Auvidea JN30 carrier board. It supports the full speed 4 lane PCIe and reading and writing to SSD is good. But, it is not possible to boot using SSD.

So, As of now, we are using JN30 for our development.

Best regards,
JSP

Hi Inaki,

There is no luck to get this module.
The reply from the local dealer said that the new model is under ES testing,
and if it goes well this module will be available for public in October.
That’s all the information I have gotten till now.

With kind regards,
jppang

Found!

I don’t know the cost, but:

Edit: product no longer in production :(

we are testing a sata<->pci-e bridge product designed for Jetson Nano. it will be available very soon.

I’ve purchased https://www.amazon.com/gp/product/B082BDHQ6S/ref=ppx_yo_dt_b_asin_title_o04_s02?ie=UTF8&psc=1 (except I’m using a different 5V 8A power source), can be purchased without the case as: https://www.amazon.com/CMC-TECH-Controller-Development-Developer/dp/B082MTQTN8/ref=sr_1_2?dchild=1&keywords=CMC+TECH+Metal+Enclosure+Case+PCI-E+2.0&qid=1592212210&s=electronics&sr=1-2

It seems to work fine for me (booting off the SDCard and with rootfs on a 500 GB SSD) but not without issues that needs workaround. You do need to add “pci=noaer” to cmdline (otherwise logspam) but I also had to disable NCQ in the AHCI driver (otherwise the system would get stuck when stressing it, such as when using ‘hdparm -t /dev/sda1’). Attached kernel patch.

0001-Disable-NCQ-for-ASMedia.patch.txt (1.2 KB)

Hi skrilax,

Yes that is our product and we are happy to see your using it.

Do you mind share the SSD brand you used? We tested our SSDs with crucial/Sandisk and we didn’t notice stuck nor performance downgraded under stress test. If it is related to NCQ I would guess it may be related to certain SSD controller.

Glad you find the way to solve the problem. And another way I know to disable NCQ is by adding the linux boot parameters

libata.force=noncq

However I haven’t test this yet so use it on your own risk. If it works you don’t need to recompile the kernel.

Xishan

Hi sunxishan,

I have tested with two SSDs:

For both of these I had to disable NCQ otherwise the system would hang and then would have to reboot it. After that they work flawlessly.

Thanks, I will do some more test on these brands. Turning off NCQ is one way to avoid the problem but unlike turning off AER, it may affect the performance.