Unable to flash Xavier AGX with SDK because of *** Reading ECID ... *** Error: ECID read failed

Hi, I tried to flash a Xavier AGX 16GB.
I read most of the forum entries and tried various methods.
In all of these methods the result was the same: Flashing ended as soon as the device should be detected.

Steps I did for flashing:

  • Connect USB -C Cable (1x with cable came with the AGX / 1x with another USB-C Cable) to AGX and Host.
    On AGX I used the Port J512. It is on the same side like the USB Micro B port.

  • Press Force Recovery (S503)

  • Press and Release Reset (S502)

  • Release Force Recovery

After these steps I have on my host a new USB device:
(With a normal reboot on the AGX I do not see this USB device)
+++++++++++++++++++++++++++++++++++++

  • idVendor 0x0955 NVidia Corp.*
  • idProduct 0x7019*
  • bcdDevice 1.02*
  • iManufacturer 1 NVIDIA Corp.*
  • iProduct 2 APX*

++++++++++++++++++++++++++++++++++++

On the device is no output anymore (no output on HDMI / no output on the USB2Serial Ports, recogniced at the host as /dev/ttyUSB0)

Flashing Methods:

  • SDK Manager 1.6.1.8175 (GUI)
    • Tried with Jetpack 4.5.1
    • Tried with Jetpack 4.6

Result for each of this method:
++++++++++++++++++++++++++++++++++++
*** Reading ECID … *** Error: ECID read failed.
Put the target board in RCM mode and retry.
++++++++++++++++++++++++++++++++++++

  • Console mode directly with:
    ./flash.sh jetson-agx-xavier-devkit mmcblk0p1

    • Tried with Jetpack 4.5.1
    • Tried with Jetpack 4.6

Result for each of this method (with different version information for 4.5.1/4.6)
++++++++++++++++++++++++++++++++++++
###############################################################################

L4T BSP Information:

R32 , REVISION: 6.1

###############################################################################
Error: probing the target board failed.
Make sure the target board is connected through
USB port and is in recovery mode.
++++++++++++++++++++++++++++++++++++

If I track down flash.sh call, I end up with the call:
++++++++++++++++++++++++++++++++++++

JetPack_4.5.1_Linux_JETSON_AGX_XAVIER/Linux_for_Tegra/bootloader:# ./tegrarcm_v2 --uid

++++++++++++++++++++++++++++++++++++

If I do a strace of this tool, I end up with:
++++++++++++++++++++++++++++++++++++
strace ./tegrarcm_v2 --ui

ioctl(5, USBDEVFS_CLAIMINTERFACE, 0x86f6690) = 0
ioctl(5, USBDEVFS_BULK, 0xffdce990) = -1 ETIMEDOUT (Connection timed out)
close(5) = 0
write(1, “Failed to read UID\n”, 19Failed to read UID
++++++++++++++++++++++++++++++++++++

From USB Sniffer I got the following information:

++++++++++++++++++++++++++++++++++++
Frame 118: 64 bytes on wire (512 bits), 64 bytes captured (512 bits) on interface 0
USB URB
[Source: host]
[Destination: 1.92.1]
URB id: 0xffff9d142cf69d80
URB type: URB_SUBMIT (‘S’)
URB transfer type: URB_BULK (0x03)
Endpoint: 0x81, Direction: IN
Device: 92
URB bus id: 1
Device setup request: not relevant (‘-’)
Data: not present (‘<’)
URB sec: 1632054424
URB usec: 931411
URB status: Operation now in progress (-EINPROGRESS) (-115)
URB length [bytes]: 96
Data length [bytes]: 0
[Response in: 119]
[bInterfaceClass: Unknown (0xffff)]
Unused Setup Header
Interval: 0
Start frame: 0
Copy of Transfer Flags: 0x00000200
Number of ISO descriptors: 0
++++++++++++++++++++++++++++++++++++

If I do a normal reboot on the AGX, the device comes up with some preinstalled Ubuntu 18.04.6 LTS.

Right now I was not able to do at least one successful reflash.
I also tried to reflash the AGX from another linux host with the SDK method - with the same result (Error: ECID read failed)

Used host software:
64BIT Linux Ubuntu 18.04.5 LTS

How can I track it down further?

There was a solution from other users for this. Though I am not sure why this is related to the ECID problem.