Jetson Nano doesn`t see SD card

Hi, Team!
Jetson Nano doesn’t see SD card via card reader slot on motherboard.

jetson@jetson-desktop:~$ lsblk
loop0          7:0    0    16M  1 loop 
mmcblk0      179:0    0  14,7G  0 disk 
├─mmcblk0p1  179:1    0    14G  0 part /
├─mmcblk0p2  179:2    0     1M  0 part 
├─mmcblk0p3  179:3    0     6M  0 part 
├─mmcblk0p4  179:4    0    80K  0 part 
├─mmcblk0p5  179:5    0    64M  0 part 
├─mmcblk0p6  179:6    0     1M  0 part 
├─mmcblk0p7  179:7    0     6M  0 part 
├─mmcblk0p8  179:8    0    80K  0 part 
├─mmcblk0p9  179:9    0    64M  0 part 
├─mmcblk0p10 179:10   0   192K  0 part 
├─mmcblk0p11 179:11   0   256K  0 part 
├─mmcblk0p12 179:12   0    63M  0 part 
├─mmcblk0p13 179:13   0   512K  0 part 
├─mmcblk0p14 179:14   0   256K  0 part 
├─mmcblk0p15 179:15   0   256K  0 part 
├─mmcblk0p16 179:16   0   300M  0 part 
└─mmcblk0p17 179:17   0 185,4M  0 part 
mmcblk0boot0 179:32   0     4M  1 disk 
mmcblk0boot1 179:64   0     4M  1 disk 
mmcblk0rpmb  179:96   0     4M  0 disk 
zram0        252:0    0 494,5M  0 disk [SWAP]
zram1        252:1    0 494,5M  0 disk [SWAP]
zram2        252:2    0 494,5M  0 disk [SWAP]
zram3        252:3    0 494,5M  0 disk [SWAP]

But if I put this SD card into motheboard via USDB-connector → Jetson nano will see it:

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/mmcblk0p1   14G  6,4G  6,7G  49% /
none            1,7G     0  1,7G   0% /dev
tmpfs           2,0G   40K  2,0G   1% /dev/shm
tmpfs           2,0G   15M  2,0G   1% /run
tmpfs           5,0M  4,0K  5,0M   1% /run/lock
tmpfs           2,0G     0  2,0G   0% /sys/fs/cgroup
tmpfs           396M   12K  396M   1% /run/user/120
tmpfs           396M  120K  396M   1% /run/user/1000
/dev/sda1       118G   37G   76G  33% /media/jetson/b1c100cd-cc74-4e7f-acb8-f0d34c931ee8

So question: Why slot for SD cards on motherboard doesn`t see SD card?
Can we switch on SD card slot on motherboard?

Having mmcblk0 says that this is an eMMC model, and not a developer’s kit (which is purely SD card model). This in turn says that you’re using a third party carrier board (which is not a developer’s kit). The device tree (firmware) for a third party carrier board normally either comes from the manufacturer (their flash software), or else states that the carrier board is an exact match to the developer’s kit. The fact that the SD card slot seems to be missing implies you’re using the wrong firmware; the difference between third party carrier board and a developer’s kit would be the SD card lane routing, and thus without the firmware/device tree, there would be no way to see that slot.

What brand or model of carrier board is it? Does the manufacturer for that model have flash software available? This is what would enable that slot.

Incidentally, Jetsons don’t have a BIOS. They have the equivalent function in software. For a developer’s kit this runs from QSPI memory on the module itself; for eMMC models, this runs from various partitions. Whenever you flash a Jetson you are flashing the equivalent of the CMOS BIOS and the operating system. For eMMC models you don’t boot from an SD card, although it is possible to “aim” at the SD card once boot has proceeded far enough. Instructions you find for setting up an SD card for boot will strictly be for developer’s kits which don’t have eMMC; booting from SD card for other models will require instructions and flash software from the manufacturer of the carrier board.

1 Like

Yes, as linuxdev’s comment, this only indicates your board is not devkit but from a 3rdparty.

Please get the customized bsp from vendor first. Default nv software does not enable the sdcard slot on the carrier board (no such slot even exists).

I have JETSON-IO-BASE-A Rev.2 board

So I fond the statement APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0,
I changed mmclk0p1 to sda1, rebooted system and jetson started from flash drive.

At present time I have a trouble with docker commands:

 docker ps
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json": dial unix /var/run/docker.sock: connect: permission denied.

I tried to find how to fix this trouble, but all Issues for x86 didint help.
I tried to build in docker command:

 sudo docker build -t jetson-build:latest -f Jetson.Dockerfile .
ERROR: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?


journalctl -n 500 -xu docker.service
-- Logs begin at Fri 2023-10-20 17:03:31 CEST, end at Fri 2023-10-20 18:56:37 CEST. --
okt 20 17:03:36 nano systemd[1]: Starting Docker Application Container Engine...
-- Subject: Unit docker.service has begun start-up
-- Defined-By: systemd
-- Support:
-- Unit docker.service has begun starting up.
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.548146923+02:00" level=info msg="Starting up"
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.579819788+02:00" level=info msg="detected nameserver, assuming systemd-resolved, so using res
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.721113069+02:00" level=error msg="failed to mount overlay: no such device" storage-driver=overlay2
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.721297600+02:00" level=error msg="exec: \"fuse-overlayfs\": executable file not found in $PATH" storage-
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.725910777+02:00" level=info msg="Loading containers: start."
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.735372027+02:00" level=warning msg="Could not load necessary modules for Conntrack: Running modprobe nf_
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.823074111+02:00" level=info msg="Default bridge (docker0) is assigned with an IP address 
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.843495100+02:00" level=info msg="Loading containers: done."
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.989614475+02:00" level=warning msg="WARNING: bridge-nf-call-iptables is disabled"
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.989675048+02:00" level=warning msg="WARNING: bridge-nf-call-ip6tables is disabled"
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.989729840+02:00" level=info msg="Docker daemon" commit=659604f graphdriver=vfs version=24.0.2
okt 20 17:03:37 nano dockerd[4502]: time="2023-10-20T17:03:37.990429475+02:00" level=info msg="Daemon has completed initialization"
okt 20 17:03:38 nano dockerd[4502]: time="2023-10-20T17:03:38.056409840+02:00" level=info msg="API listen on /run/docker.sock"
okt 20 17:03:38 nano systemd[1]: Started Docker Application Container Engine.
-- Subject: Unit docker.service has finished start-up
-- Defined-By: systemd

Also it doesnt support iptables:

sudo iptables -L -t nat
modprobe: FATAL: Module ip_tables not found in directory /lib/modules/4.9.337-tegra
iptables v1.6.1: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.

Any other commands in docker doesnt work:

 sudo docker run -it --rm --runtime nvidia --network host -v $(pwd):/app/src -v /usr/local/cuda-10.2/:/usr/local/cuda-10.2/:ro -v /usr/lib/aarch64-linux-gnu/:/usr/lib/aarch64-linux-gnu -v /usr/include/aarch64-linux-gnu:/usr/include/aarch64-linux-gnu jetson-build bash
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.

I am not sure why it starts to tell about docker thing.

If you want to ask something else, you can file a new topic.

Back to your original question, it has been answered. That “JETSON-IO-BASE-A Rev.2 board” is not a NV devkit. Any default software from NV does not support the sdcard slot on that carrier board. Please check with the board vendor to get their BSP.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.