NVIDIA Jetson TX2

From HW wiki
Jump to navigation Jump to search

Remote access to the TX2 board

We have a remotely manageable NVIDIA Jetson TX2 kit. You can remotely power on/off and reset the board. Also the serial debug interface is available through the SSH connection. Maintainer of this board is Michal Sojka. If you want to get access to the board or something does not work as expected, contact him.

The TX2 is connected to a local network accessible from rtime.felk.cvut.cz server.

Only single user can be logged remotely at the same time using the following procedure. In case another user is already logged in you will see a message indicating this and you will be granted access to the kit as soon as the other user disconnects.

For remote access to the kit you need to follow these steps:

1. Use Linux distribution and have SSH client installed. On Debian-based distributions you can use the following commands:

$ sudo apt-get update
$ sudo apt-get install openssh-client

2. Generate a public/private SSH keypair.

$ ssh-keygen

3. Send the generated public key to Michal Sojka. You should get a response afterwards indicating, that You now have access to the TX2.

4. Now You can remotely access the TX2 by issuing commands from next sections:

Remote power-cycle/reset

To power on the kit use:

$ ssh tx2@rtime.felk.cvut.cz on

To forcefully power off the kit (i.e. equivalent to holding the power button on the TX2 for a few seconds) use:

$ ssh tx2@rtime.felk.cvut.cz off

To reset the kit use:

$ ssh tx2@rtime.felk.cvut.cz reset

Command line access

Serial console over SSH

To gain access to the serial console use:

$ ssh tx2@rtime.felk.cvut.cz

SSH from CIIRC network (IIG vlan)

If you are in CIIRC and your IP address starts with 10.35.95.*, don't need to use port forwarding. Just use:

$ ssh nvidia@tx2-stud

SSH from non-CIIRC network

In order to login through SSH to TX2 you need to setup port forwarding in the above (serial console) command:

$ ssh -L 2222:tx2-stud:22 tx2@rtime.felk.cvut.cz

If you want to be able to use ROS nodes on both the TX2 and your own PC, then you will need to forward additional ports:

$ ssh -L 2222:tx2-stud:22 -L 11311:tx2-stud:11311 tx2@rtime.felk.cvut.cz

These commands will open a remote serial console on the TX2 and forward port 22 (used by SSH server) to port 2222 your local machine (the second command forwards also port 11311 used by ROS). Then you can finally connect to the TX2 through SSH by opening another terminal and issuing the following command (do no disconnect the previous ssh connection, otherwise the port forwarding from the internal CTU network will stop working):

$ ssh -p 2222 nvidia@localhost

You can use whatever user account on the TX2 you want instead of 'nvidia'.

Disconnect

In order to disconnect from the TX2, you first close the ssh opened through the forwarded port (by pressing Ctrl+D) and then you press '~.' to close the serial console ssh session. Sometimes it does not work for the first time, if this is the case you have to press Enter and input '~.' again.

There is an auto power down feature, that ensures the TX2 is switched off if not used for prolonged periods in order to save energy. This is accomplished in a way that is equivalent to using:

$ ssh tx2@rtime.felk.cvut.cz off

This can cause data loss. In order to avoid that use the following command before logging out of the TX2:

$ sync

It is also advisable not to leave tasks running (e.g. by launching the 'screen' program and then detaching) on the TX2 and logout, because the board might shut down.


Tips and tricks

  • When you want to copy the filesystem from one board to another or to a NFS server for network boot, delete /var/lib/dhcp/dhclient.leases file. Otherwise the board changes its IP address during boot to that of the original board, which causes things like IP address collision or inability to communicate with the NFS server.
  • When you add a new user, add him/her at least to the video group. This is necessary to run CUDA programs.