Recovery mode: MicroUSB fails to be recognized by host

I was in the last step of using JetPack to compile and install components (CUDA, etc) to my new bought TK1. I’ve run ‘apt-get update’ on TK1 before doing this. At the step of ‘Post installation’,

  • I connect TK1’s microUSB to host.
  • Disconnect TK1 power, so it completely powered off.
  • Hold 'recovery button, and press ‘power’ button. The fan started and the on-board light is on.
  • Keep holding ‘recovery’ button, and press ‘reset’ button. I can hear the fan stop a moment and run again (or just some sound form the fan, implying my pressing ‘reset’ did take effect).
  • Release the ‘recovery’ button after a few seconds.

However, ‘lsusb’ does not show anything related to Nvidia.

I then tested the usb port on host to make sure it works, and also used another usb cable to test. Same results.

The HDMI output nothing while I do the above steps, which is different from normal boot. That seems to say that recovery steps did happen.

So anything I missed? Defect product? The board runs well otherwise, though I do feel the microUSB port on the board feel a bit loose.

I appreciate you thoughts.

You don’t need to hold the recovery button that long, but it should also not hurt anything to do so. It sort of sounds like it “should” work. Typically if you hold recovery and “tap” reset this should be enough…or holding recovery just at the moment of power on via button or cable (unlike a PC with artificial delays in the power supply to allow time for power to stabilize, Jetson does not need this).

If you have serial console connected, this would be very helpful…no video driver is required, and even the boot loader text (prior to the Linux kernel loading) would show up using serial console.

Is the micro cable the one supplied with the TK1? Does dmesg show any difference before or after unplugging and replugging the USB cable while the Jetson remains in recovery mode? There are a few “gotchas” for video even if flash succeeds, but lsusb should show something from “lsusb -d ‘0955:’” (the -d ‘0955:’ says anything from nVidia…the TK1 is specifically ‘0955:7140’ if you include the product ID).

Thanks for the information. At the beginning, I did follow the quick start and did: power on, hold recovery button while pressing reset, hold recovery button for 2 seconds and release. I got the same results no matter I power on first or hold recovery first.

I don’t have serial console at my hand. Since I have monitor connected to TK1’s HDMI, I guess that’s not an issue? Are you saying that even in recovery mode, the serial console should give some information which HDMI does not? HDMI did not show anything in recovery mode.

Yes, I used the same micro cable from TK1 package. I didn’t see any change on the dmesg yesterday. But I’ll try it again tonight, when I get back home.

Will update.

Thanks again,

OK even I don’t have serial console cable, I did more testing. Here is what I found.

  • When entering the recovery mode, nothing output on dmesg. I tested again the usb port on host by inserting a usb thumb drive and the host can recognize it, and dmesg have logs for the event.
  • Neither ‘lsusb’ nor “lsusb -d ‘0955:’” give any usb device from Nvidia.
  • Use TK1’s usb cable, as well as another cable of mine to test. Same results.

So now I’m pretty sure this is the issue of the board. I’m going to issue a RMA…

Thanks!

I made some progress. I enter the recovery mode of TK1, and connect microUSB to my macbook, The command “system_profiler SPUSBDataType” is able to detect the USB device:

    APX:

      Product ID: 0x7140
      Vendor ID: 0x0955  (NVIDIA)
      Version: 1.01
      Speed: Up to 480 Mb/sec
      Manufacturer: NVIDIA Corp.
      Location ID: 0x14200000 / 26
      Current Available (mA): 1000
      Current Required (mA): 32
      Extra Operating Current (mA): 0

But I cannot develop on my macbook…I’ve tried again and again on my Ubuntu desktop but no success. Tried all USB port (3.0, 2.0) on host machine.

What might be the reason that TK1 in recovery mode can be recognized by macbook but not Ubuntu desktop?

If I issue an RMA and get a new board, maybe it’s same results.

I appreciate any suggestion.

Are you running on your Ubuntu machine under a VM or native?

What Kangalow mentioned…VM can do strange things. Sometimes there is an issue of too much power being required over USB, but TK1 should not matter for that. Possibly something else on the same HUB consumed too much power, and the HUB would fail. I always recommend externally powered HUBs for this reason, but unless you have a LOT on the USB HUB of the host it wouldn’t matter. Is there anything special about your host’s setup?