Issue installing CUDA -SDK manager cannot connect to the Jetson NX and host USB not working

Hi,
One of our customers is trying to install CUDa and other packages using SDK manager on our custom BSP(based on L4T 32.4.3) for custom carrier board. They are facing below 2 issues

  1. the second USB(OTG to Host ) is not working
  2. they are not able to connect to Jetson NX while runinng SDK manager to install cuda.

Here is the detailed step they followed, please help:

try1:
1)Put the device in recovery mode and flash the custom BSP
2) Board boots to OS and all functionalities like all the USB and SD card etc works fine

3)Software Updater prompt appears, seems to have l4t and CUDA packages. Allow install.

  1. Asks to replace changes in /etc/systemd/nv-oem-config.post.sh with later version of configuration file. Click Keep for all following prompts.

Try2:

  1. Reflash BSP. All works fine
    Did sudo apt-get update
    and sudo apt-get upgrade. This seems to also do the same thing as software updater. lost second USB and usd card as these are additional patches applied during custom BSP. dont know why these changed the device tree or kernel

Try 3:

  1. Reflashed and all working fine

then,
sudo add-apt-repository universe

            `sudo apt-get update`

            `sudo apt install exfat-fuse exfat-utils`
  1. Plug in SD card, screen freezes, reboots. Now I can access uSD card!

Installing CUDA via jetpack

3.) run sdkmanager on host linux machine (v1.5.0.7774)

4.) Turn on Jetson Xavier NX in recovery mode. Verify Jetson NX is in recovery mode (lsusb shows Nvidia Corp.) via host linux laptop

5.) Set Target hardware to attached jetson in sdkmanager

6.) Click continue to next Step2

7.) Uncheck Jetson OS option in target components. Verify all Host components are installed (CUDA, Computer Vision, Developer Tools). CUDA version on host is

8.) Accept license agreement. Click Continue to Step3

9.) Enter Host Linux sudo password to continue

10.) Enter Jetson username and password, with IP Address 192.168.55.1. Click Install.

11.) SDK manager cannot connect to the Jetson NX. (See attached image)

12.) Check to verify that jetson USB Host mode is active. Running

            `service nv-l4t-usb-device-mode start`

            Failed with:

            `Failed to start nv-l4t-device-mode.service: Unit nv-l4t-device-mode.service not found.

This may be why sdkmanager cannot connect to the NX.

By default, apt upgrade has our OTA update package inside. Thus, it will install the jetpack back to your board again. If this is a custom board with your own dtb and kernel, then say bye bye to them. They will be replaced by the original dtb and kernel again.

If you don’t want this function, remove nvidia source from your apt source list.

As for your second question, looks like you didn’t install the BSP completed. Even the device mode service is gone.

So with custom BSP, without apt upgrade we can install CUDA right? what is your suggestion to install CUDA and other packages right after custom BSP installed

I am not clear with this, you mean to say at the first stage the BSP installation is not complete?

Read what this log tells

Failed to start nv-l4t-device-mode.service: Unit nv-l4t-device-mode.service not found.

Ok, I will check that . We have not made much changes to the stock BSP, added the Host mode to the 2nd USB, added uSD card, added RS485 protocol support and some GPIO changes. So I dont think this will affect anything to the device mode, or services running any other possibilities?

However I will compare the custom BSP and stock BSP on our carrier board for these services

You can start from the baseline first… make sure your rootfs really has this systemd unit.

If it has, run it on your NX and see what kind of error it gets.

1 Like

Yes, I have the service in etc/systemd/system. and I get this:

nvidia@nvidia-desktop:~$ systemctl status nv-l4t-usb-device-mode.service
● nv-l4t-usb-device-mode.service - Configure USB flashing port for device mode
Loaded: loaded (/opt/nvidia/l4t-usb-device-mode/nv-l4t-usb-device-mode.service; enabled; vendor preset: enabled)
Active: active (exited) since Thu 2021-07-15 16:32:25 IST; 5 days ago
Process: 5005 ExecStart=/opt/nvidia/l4t-usb-device-mode/nv-l4t-usb-device-mode-start.sh (code=exited, status=0/SUCCESS)
Main PID: 5005 (code=exited, status=0/SUCCESS)

Jul 15 16:32:24 nvidia-desktop systemd[1]: Starting Configure USB flashing port for device mode…
Jul 15 16:32:25 nvidia-desktop nv-l4t-usb-device-mode-start.sh[5005]: /
Jul 15 16:32:25 nvidia-desktop systemd[1]: Started Configure USB flashing port for device mode.
nvidia@nvidia-desktop:~$

and how to remove nvidia source from apt source list? in source list under software updater I see common R342.4 main and t194 r32.4 main related to nvidia.

You are saying to remove this in a running system or while customizing the BSP?

Yes, I have the service in etc/systemd/system. and I get this:

Then please check why it does not work when it comes to sdkm case. Do you see ttyACM0 on your host? Is your host able to ping 192.168.55.1 IP?

You are saying to remove this in a running system or while customizing the BSP?

Depends on you. Both of them are ok.

Hi,

Customer says, he cannot do a fresh BSP install at this time as they need to deliver an update soon. Is there a way to get the service without reinstalling and wiping the whole board?

Seriously, I don’t understand what is your customer status now. You also didn’t share it clearly.

In previous comment, you said “Yes, I have the service in etc/systemd/system. and I get this:”

And now you say: “Is there a way to get the service without reinstalling and wiping the whole board?”.
What is the problem here? How about you clarify this first? Why the service is gone again?

Also, as I said the apt source can be removed on a running system.

Depends on you. Both of them are ok.

And back to the very basic problem, this issue is just asking about installing cuda and sdk. If usb interface is broken, then just use other interface like wifi and ethernet. There is no special trick here. It is just using ssh and scp.

Even a direct ehernet connection between a host and NX can achieve. There is really no need to stick on using usb device mode.

Hi,
Sorry for the confusion. My customer is having the same BSP and same carrier board what I am using and in My system the service is up. customer tried to install CUDA and faced the issue for this service. as explained earlier they did some apt upgrade. I understand that might have replaced the dtbs.

Now they have done the updates in system already and looking for the service to up. They cant reflash the BSP at the moment and looking for the solution on a running system. I will get further update on this from them ang get back to you.

Honestly, if customer only has limited time, just use ethernet to install the sdk. It is more stable and most host PC can support.

Save their own time to deal with this usb issue.

sure I will askk them if this resolves their issue. thank you