SDK Manager - Could not detect target hardware

Hi guys,

I have the same problem. I’m also using Ubuntu 18.04 (natively) and when running

sudo ./bootloader/tegrarcm_v2 --uid

I’m getting

Failed to read UID

I took care to freshly place the tx2 in recovery mode as @StephenWarren suggested.

The weird thing is, that this seems to be a timing issue as suggested in some other thread on this. If you run

sudo ./bootloader/tegrarcm_v2 --uid

very quickly after putting the tx2 into recovery it sometimes works for me and I get a valid response like

BR_CID: 0x81801001645102820800000016fe8480

Does anybody have an idea what could be going on here?

Follow up on my previous reply:
It seems like on my Ubuntu 18.04 system, something else reads this ominous one-time information that StephenWarren talked about.

The other threads that encounter the same issue are these:
https://devtalk.nvidia.com/default/topic/1031769/jetson-tx2/unable-install-any-jetpacks-jetson-tx2/post/5382140/#5382140
https://devtalk.nvidia.com/default/topic/1064691/jetson-tx2/unable-to-flash-3-jetsen-tx2-units-with-4-2-2/

However, after the recovery-dance I can’t get past

tegrarcm_v2 --isapplet

I also tried

sudo ./flash.sh -r jetson-tx2 mmcblk0p1

as suggested by Nvidia’s @JerryChang. Seems like there is a fundamental issue that is still lingering unresolved.

Yes, modemmanager is installed. I’ll uninstall it and give it another go. Has NVidia successfully tested Ubuntu 18.04 for flashing Jetsons?

I tried the auditctl monitoring, but it doesn’t write anything to the report (even when I keep it running for the flash script).

Syscall Report
=======================================
# date time syscall pid comm auid event
=======================================
<no events of interest were found>

I also tried uninstalling modemmanager but it doesn’t change the behavior. I then tried to relax the rules of auditctl a bit and found something potentially interesting:

Everytime I connect the tx2 in recovery mode I get about 500 “openat” calls from “colord-sane”

Syscall Report
=======================================
# date time syscall pid comm auid event
=======================================
1. 11/03/2019 20:29:21 openat 15343 colord-sane unset 246
2. 11/03/2019 20:29:21 openat 15343 colord-sane unset 247
3. 11/03/2019 20:29:21 openat 15343 colord-sane unset 248
...

I disabled colord with

sudo systemctl stop colord

Now my output for

sudo auditctl -a exit,always -S all -F dir=/dev/bus/usb

is this (including a failed call to flash.sh)

1434. 11/03/2019 20:58:33 lstat 17266 systemd-udevd unset 1860
1435. 11/03/2019 20:58:33 chmod 17266 systemd-udevd unset 1861
1436. 11/03/2019 20:58:33 chown 17266 systemd-udevd unset 1862
1437. 11/03/2019 20:58:33 utimensat 17266 systemd-udevd unset 1863
1438. 11/03/2019 20:58:34 lstat 17266 systemd-udevd unset 1864
1439. 11/03/2019 20:58:34 utimensat 17266 systemd-udevd unset 1865
1440. 11/03/2019 20:58:52 lstat 17330 systemd-udevd unset 1891
1441. 11/03/2019 20:58:52 chmod 17330 systemd-udevd unset 1892
1442. 11/03/2019 20:58:52 chown 17330 systemd-udevd unset 1893
1443. 11/03/2019 20:58:52 utimensat 17330 systemd-udevd unset 1894
1444. 11/03/2019 20:58:52 lstat 17330 systemd-udevd unset 1895
1445. 11/03/2019 20:58:52 utimensat 17330 systemd-udevd unset 1896
1446. 11/03/2019 20:59:26 stat64 17396 tegrarcm_v2 jonas 1912
1447. 11/03/2019 20:59:26 open 17396 tegrarcm_v2 jonas 1913
1448. 11/03/2019 20:59:26 open 17396 tegrarcm_v2 jonas 1914
1449. 11/03/2019 20:59:26 open 17396 tegrarcm_v2 jonas 1915
1450. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1916
1451. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1917
1452. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1918
1453. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1919
1454. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1920
1455. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1921
1456. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1922
1457. 11/03/2019 20:59:28 stat64 17396 tegrarcm_v2 jonas 1923
1458. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1924
1459. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1925
1460. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1926
1461. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1927
1462. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1928
1463. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1929
1464. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1930
1465. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1931
1466. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1932
1467. 11/03/2019 20:59:28 open 17396 tegrarcm_v2 jonas 1933

Hi linuxdev,

thanks for your reply. You’re right, disabling colord had no effect. Do you see anything suspicious in the syscall report?

Your assumptions about how I did the last experiment are correct. I may have installed some stuff manually, but I besides Intel Realsense nothing with udev rules, I believe.

Here are my installed packages:
https://pastebin.com/WipRsC7P

Note, just to rule out anything hardware related I successfully flashed the TX2 with the same cable from Ubuntu 16.04, yesterday.

I doubt “apparmor” would be an issue, but there are cases where it can be. Mostly I would think this would cause some programs to not run at all, whereas running incorrectly wouldn’t happen. Did you install apparmor manually? If not, then I’d ignore this and leave apparmor alone, but if you did, then I’d try without apparmor.

I have reproduced the issue simply by installing most of the packages in your package list (I excluded all the CUDA, ROS, SDK Manager, etc. packages that aren’t in standard Ubuntu repos.) I filed NV bug 2750338 for this. I will see if I can track down the problem.

Greetings, i am following this discussion as i have the same issues with Jetson TX2 and a Ubuntu 16.04 host:

  1. I have not managed to get a valid UID from tegrarcm_v2 yet no matter how quickly i run it after recovery mode is set
  2. I did follow the auditd procedure and only got some colord-sane lines as well
  3. My current system has many packages installed, nevertheless i am experiencing the same issue from a fresh ubuntu installation as well

The problematic package is tlp. I’ve repro’d this problem on Ubuntu 18.04 and Ubuntu 16.04 now. Installing tlp causes it. Removing tlp fixes it (sudo apt purge tlp tlp-rdw). I’ll try to investigate a bit more why this is, and whether it can be worked around, and how/where to document it.

1 Like

If you want to keep tlp installed, this issue can also be worked around by editing /etc/default/tlp, and adding the line:

USB_BLACKLIST="0955:7c18"

Note: The device ID (7c18) differs based on which Jetson device you have. Use “lsusb” to find that:

Bus 003 Device 009: ID 0955:<b>7c18</b> NVidia Corp.

All, are you able to confirm that removing tlp, or editing its configuration file as described above and then restarting tlp or rebooting, resolves this issue? Thanks.

I finally got to try out your fix, and it works like a charm! (tried the blacklisting, so I assume the purging also works)

Thanks a lot for taking a deep dive into this problem!

Excellent. Thanks for the confirmation.

The L4T release notes for the next release describe the issue with tlp, so I’ve closed the associated NVIDIA bug report that’s associated with this thread; I assume that everyone was experiencing the same tlp-related issue.

1 Like

Purging tlp worked for me.

Thank you

I have the same problem. Could not detect target hardware. Please make sure the target hardware is connected and is in recovery mode, choose OK and RETRY.

@StephenWarren Thanks Purging tlp worked for me.

Hi @StephenWarren, @linuxdev, @kayccc,

I am having the exact same issue @Dakow mentioned in comment #27. When I run ./flash.sh script, it stucks at

tegrarcm_v2 --isapplet

If I wait for 15-20 minutes I get:

tegradevflash_v2 --iscpubl
CPU Bootloader is not running on device.

Then again the following is printed:

tegrarcm_v2 --isapplet

It goes on like this in a loop if you wait long enough.

My platform is Xavier NX, Host machine is Ubuntu. (Not a virtual machine).

What I tried:
Different USB ports (USB 2.0/3.0/3.1),
Setting USB device ID as blacklisted in /etc/default/tlp,
Uninstalling tlp package,
Using Ubuntu 16.04 and 18.04 host machines.

Python 2.7 is installed on my system.

In all trials, it ended up stucking as I described above. Could you help?

Thanks.