I am trying to set up a TX1 for development with the ZED Stereoscopic camera and need to flash my TX1 with JetPack. I am currently running windows on my host machine with an Ubuntu 16 VM. Initially I experienced problems with flashing the device and had to enable USB 2.0 for the VM (instead of using 3.0). Once I did this I could flash the device, but the TX1 said it was searching for the ip of the target device, and never found it and never gave me an error ( I left it out overnight and still nothing). Apparently the Jetson was supposed to do a cold restart and re-connect but when I ran the lsusb command it did not show up. This led me to believe that I had a problem with how I set up my network. I connected the TX1 to a router over ethernet and connected my host machine to the router via ethernet. I had the network setting in the VM set to “NAT”. Some guides instructed me to change this to “Bridged Adapter” but once I did this I lost internet connection.
Any ideas?
According to other developers the flash shouldn’t take more than a 1/2 an hour but mine have been consistently taking over an hour. Is this because I am flashing it from a VM?
Very little time is required if the IP is found. The IP depends on how the wired ethernet is connected. Is the Jetson’s wired ethernet connected to a router? If so, then the router will have logs to show what address was given to the Jetson based on a DHCP request by the Jetson. If the Jetson is wired to the Linux host, then the Linux system must act as a router…with a VM you are probably in trouble unless you have a way to give control of DHCP requests to the Linux system (by default Windows is not able to act as a router…so far as I know you would need to purchase extra software for this…and passing through to Linux may not be easy).
The router will have some sort of interface, e.g., a web page. Or logs. You should be able to find out from this what the address is. If you have a serial console you can use ifconfig and it will tell you…else it is up to the router.
I logged into my router and can see the logs and the ip address my TX1 was given. However, my host device still says “Determining IP of target”. Is there a way I can manually set it?
JetPack has the ability to restart at any time while the Jetson is already booted, and then install packages over wired ethernet. To manually select an address when not also flashing is a feature.
After you pick the TX1 and “Clear Actions” plus set up for install of packages you want and hit “Next” JetPack will download updates to your host. When it is ready switch the bottom part of the GUI to “Terminal” (in case of messages needing the user to interact) and continue. This may take a couple of minutes. When done a new GUI will pop up and ask for device IP, user name and password. This is where you enter that…the IP. If still set for default logins you can use “ubuntu”/“ubuntu” for name and pass.
Note that if your host PC has not added package “sshpass”, then you will get an error. This is basically a mechanism where sudo can be used with ssh since Ubuntu does not normally allow direct root login.
Can you ssh manually on command line to the Jetson from the host using the IP from the router? If not, try running ssh with “-vvv” option to get very verbose output and see what shows up.
ssh wants a password…you don’t have the software installed which allows the GUI to pop up a password prompt. Since you are using ssh from your host, it would be your host lacking the software.
In cases where you manually ssh to somewhere on command line it just asks right there for the password…but running under JetPack it needs a separate pop-up, thus you have no way of entering the password. There are multiple askpass versions out there, any of them should work. The most basic install of this on an Ubuntu host is:
sudo apt-get install ssh-askpass
Once this is installed you will have “/usr/bin/ssh-askpass”.
If you want some detail, see “man ssh”, then search for “SSH_ASKPASS” (e.g., type “/askpass”). Probably JetPack will use this automatically if you have completely logged out and back in (perhaps you don’t even need to log out). If not, then do this to start JetPack: