"Jetson device is in recovery mode" message during SDK components installation

I have flashed the Jetson Nano OS with SDK manager. The target OS flash went fine but during the SDK components installation, it says “Jetson device is in recovery mode”. I have performed the indicated steps, i.e Completed Ubuntu system configuration wizard and waited for the login screen. I have also entered correct username and password.
Still cant install SDK components because of this message. Please help.

Hi abushuvom,

After flashing and Jetson device booting up, usb-device mode is up . The expected results at this stage:
Jetson device : 192.168.55.1
Host machine: 192.168.55.100

Please confirm if the two conditions are true on your Jetson device and your host PC.

Should I check this with “ifconfig” in both Host and Jetson?

Hi abushuvom,

Yes, using “ifconfig” to check. Thanks!

The Jetson Nano and host PC connected via USB and same LAN. The Jetsons “ifconfig” results like this:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.102  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::b455:2d36:1ee2:5476  prefixlen 64  scopeid 0x20<link>
        ether 00:e0:4c:68:00:b0  txqueuelen 1000  (Ethernet)
        RX packets 196724  bytes 275550034 (275.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 106158  bytes 7378608 (7.3 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 148  base 0xe000  

l4tbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.55.1  netmask 255.255.255.0  broadcast 192.168.55.255
        inet6 fe80::1  prefixlen 128  scopeid 0x20<link>
        inet6 fe80::20ce:9eff:fec1:dae  prefixlen 64  scopeid 0x20<link>
        ether 1a:b4:90:b7:58:61  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 154  bytes 11238 (11.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 329  bytes 27561 (27.5 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 329  bytes 27561 (27.5 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

rndis0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::18b4:90ff:feb7:5861  prefixlen 64  scopeid 0x20<link>
        ether 1a:b4:90:b7:58:61  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::18b4:90ff:feb7:5863  prefixlen 64  scopeid 0x20<link>
        ether 1a:b4:90:b7:58:63  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

and my HOST ifconfig is like this:

enp0s31f6: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.101  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::4ecc:6aff:fe60:61c0  prefixlen 64  scopeid 0x20<link>
        ether 4c:cc:6a:60:61:c0  txqueuelen 1000  (Ethernet)
        RX packets 16025476  bytes 21092029238 (21.0 GB)
        RX errors 0  dropped 7  overruns 0  frame 0
        TX packets 8846404  bytes 650512107 (650.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 16  memory 0xdf200000-df220000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 2825780  bytes 562728523 (562.7 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2825780  bytes 562728523 (562.7 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Hi abushuvom,

From your result, the Jetson device assigned to the right ip (192.168.55.1)
But host machine not be assigned.
One possible reason is that usb-ethernet network interface is disabled on host machine? To enable it:

  1. Disconnect and Connect the USB cable connecting the jetson and Host-PC, and check the dmesg log.
    You might see a log similar to this:
    [107833.388835] cdc_ether 2-2:1.5 usb1: register ‘cdc_ether’ at usb-0000:00:14.0-2, CDC Ethernet Device, 72:40:f7:72:c9:fa
  2. Next go to Settings->Network and check all the wired connections for the same MAC-address.
  3. In the top right corner there will be an option to enable it.
  4. Next follow the procedure as provided by the SDK manager to install the SDK components

Thanks for your update which pointed me to the right direction for solving the problem. In my case, the Host Ethernet interface was not enabled by default on Ubuntu 18.04.

So I had to edit file /usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf and change it’s content from :

[keyfile]
unmanaged-devices=*,except:type:wifi,except:type:wwan

To :

[keyfile]
unmanaged-devices=*,except:type:ethernet,except:type:wifi,except:type:wwan

And then run :

sudo service network-manager restart

Then my HOST ifconfig looks like this:

enp0s20f0u1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::820b:4f52:9fe0:aa7c  prefixlen 64  scopeid 0x20<link>
        ether 56:36:0e:56:81:15  txqueuelen 1000  (Ethernet)
        RX packets 132716  bytes 7085355 (7.0 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 331086  bytes 515400107 (515.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s20f0u1i5: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.55.100  netmask 255.255.255.0  broadcast 192.168.55.255
        inet6 fe80::a492:86f0:efd9:f884  prefixlen 64  scopeid 0x20<link>
        ether 1a:b4:90:b7:58:62  txqueuelen 1000  (Ethernet)
        RX packets 120925  bytes 6433966 (6.4 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 283111  bytes 428074656 (428.0 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s31f6: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.101  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::8d35:cde6:1225:c87d  prefixlen 64  scopeid 0x20<link>
        ether 4c:cc:6a:60:61:c0  txqueuelen 1000  (Ethernet)
        RX packets 16056606  bytes 21114974509 (21.1 GB)
        RX errors 0  dropped 14  overruns 0  frame 0
        TX packets 8872624  bytes 653537146 (653.5 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 16  memory 0xdf200000-df220000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 4222913  bytes 840868236 (840.8 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4222913  bytes 840868236 (840.8 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Now I could successfully installed SDK components on my Jetson Nano device.

Thanks carolyuu!!

why do my host pc dont work like yours whem i edited /usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf and restart service? i run host on vmware.@abushuvom

VMs are not supported because they fail to pass everything through. You can go through extra work and make sure that all USB and ethernet for that Jetson are always owned 100% by the VM, but any attempt by the host to own those during a stop/start will cause failure.