Clarification before I explain
0955:7020” is for a Nano, while “
0955:7c18” is for a TX2. What I use as an example below is the
7020 model, but if you try to use a
7020 with a TX2 it is an error; or if you use
7c18 with a Nano, then this is an error. If you are flashing such that your device is a TX2, but your flash specifies Nano, then this will cause the error.
- TX2: “
- Nano: “
Unless you disable the “
nv-l4t-usb-device-mode.service” you won’t be able to tell using “
lsusb”. Well, not directly.
As an explanation, in recovery mode the Jetson becomes a custom device understood only by the “driver package” (the flash software running on the Linux host PC). This shows up as manufacturer
0x0955 (NVIDIA), and device
0x7020 (that’s for a Nano, but for a TX2 it should be “
0x7c18”). When a Jetson is fully booted, it runs a service (
nv-l4t-usb-device-mode.service) which also turns the micro-USB into a device, but it is a different device (fully booted it is in fact both a network device and a mass storage device with a read-only
README file). This is all plain vanilla “
lsusb” will show.
If you monitor “
dmesg --follow”, and do not have the micro-B USB cable connected, and then you plug in that cable, you should see log lines appended. Those log lines will definitively tell you details of what kind of device “
0955:7020” is…and if it shows a network or mass storage, then it is fully booted. If it does not show those other device types, and does not name a driver, then it is the recovery mode Jetson.
What shows up in
dmesg when your recovery mode device (or attempted recovery mode device) is plugged in?